1、音乐、视频
QMediaPlayer是多媒体核心类,可以播放音乐、视频。要使用MediaPlayer,需要引入QtMultimedia 5.0或以上版本。另外在pro文件中需要添加QT += multimedia
音乐播放用MediaPlayer足以满足需求,但是视频需要VedioOutput元素和MediaPlayer结合,这个VideoOutput用来渲染视频,也可以作为相机的取景器(预览窗口)。
多媒体元信息:就是描述媒体的信息,包括歌曲的专辑、发行时间、艺术家,或者视频的分辨率、编码格式以及针率等。关于这方面的信息,可以通过MediaPlayer的metaData来获取。虽然这属性提供了丰富的信息,但是要取决于MediaPlayer使用的底层播放服务能否提供这些
2、相机
QCamera有诸多属性,我们先来看看常用的属性
digitalZoom 配置数字变焦
maximumDigitalZoom保存了相机支持的最大数字变焦倍数,如果是1.0则说明不支持数字变焦
opticalZoom 配置光学变焦倍数
maximumOpticalZoom保存相机支持的最大光学变焦倍数,1.0表示不支持光学变焦
captureMode枚举三种值:Camera.CaptureVideo(录制视频)、Camera.CaptureViewfinder(仅预览)、
Camera.CaptureStillImage(捕获静态图片)三种模式
CameraFocus类
focus 控制聚焦和变焦的模式
focusMode 是个枚举值,代表多种聚焦模式。比如Camera.ManualFocus代表手动聚焦、Camera.AutoFocus代表自动聚焦、Camera.MacroFocus微距聚焦,等等
CameraFocus的isFocusModeSupported(mode) 用来查询物理设备是否支持制定的聚焦方式
focusPointMode定义焦点模式,分别对应四种枚举值。Camera.FocusPointAuto(自动焦点)Camera.FocusPointCenter(中心焦点)、Camera.FocusPointFaceDetection(面部识别)
Camera.FocusPointCustom(自定义焦点,使用customFocusPoint属性指定的点作为焦点)。isFocusPointModeSupported(mode)用来判断硬件是否支持该模式
CameraExposure类
这个类用来控制相机的曝光选项,可以通过Camera的exposure属性完成相关设置
exposureMode 枚举了多个曝光选项,有Camera.ExposureAuto(自动)、Camera.ExposureManual(手动),还有运动、大光圈(近景)、小光圈(远景)、背光、夜景、人物、海岸等等
shutterSpeed 表示当前的快门速度
iso表示感光系数,其中manualIso曹村手动设置的感光度。iso越大,感光越快、城乡就越模糊;反之,则成像细腻
aperture表示光圈的大小, manualAperture表示手动设置光圈大小,而setAutoAperture()可以打开自动模式
CameraFlash用来控制闪光的
mode 枚举了多个闪光灯的选项值,包括Camera.FlashOff(关闭闪光灯)、Camera.FlashOn(打开闪光灯)、Camera.FlashAuto、Camera.FlashRedEyeReduction(去红眼)等等更多模式
CameraImageProcessing
imageProcessing对照片做一些处理,比如降噪、白平衡、锐化、对比度、饱和度等等。该属性的类型是CameraImageProcessing,详细用法可查此类
取景器
上面说过,可以用VideoOutput作为相机的取景器,只需要将souce设置为camera对象即可,
如下放的代码
Rectangle{
width: 960
height: 540
Camera{
id: camera
captureMode: Camera.CaptureStillImage
}
VideoOutput{
source: camera
anchors.fill: parent
}
}