QML类型说明-Camera
来源:互联网 发布:淘宝卖东西抽成多少钱 编辑:程序博客网 时间:2024/05/16 17:34
Camera
ImportStatement: import QtMultimedia 5.0
Inherits: Item
Properties
availability: enumeration
cameraState: enumeration
cameraStatus: enumeration
captureMode: enumeration
digitalZoom: real
errorCode :enumeration
errorString: string
lockStatus :enumeration
maximumDigitalZoom: real
maximumOpticalZoom: real
mediaObject: variant
opticalZoom: real
Signals
digitalZoomChanged(zoom)
error(errorCode,errorString)
lockStatusChanged()
manualWhiteBalanceChanged(qreal)
maximumDigitalZoomChanged(zoom)
maximumOpticalZoomChanged(zoom)
opticalZoomChanged(zoom)
stateChanged(state)
whiteBalanceModeChanged(Camera::WhiteBalanceMode)
Methods
searchAndLock()
start()
stop()
unlock()
DetailedDescription
Camera是QtMultimedia 5.0模块的一部分。
我们能用Camera从摄像头上捕捉图片和电影。可以操作捕捉和设置参数到图像上。我们能用VideoOutput显示捕捉的画面,需要设置Camera为VideoOutput的源。
示例如下:
importQtQuick 2.0
importQtMultimedia 5.0
Item {
width: 640
height: 360
Camera {
id: camera
imageProcessing.whiteBalanceMode:CameraImageProcessing.WhiteBalanceFlash
exposure {
exposureCompensation: -1.0
exposureMode:Camera.ExposurePortrait
}
flash.mode: Camera.FlashRedEyeReduction
imageCapture {
onImageCaptured: {
photoPreview.source =preview // Show the preview in an Image
}
}
}
VideoOutput {
source: camera
anchors.fill: parent
focus : visible // to receive focus andcapture key events when visible
}
Image {
id: photoPreview
}
}
Camera的不同设置和功能栈被分布在Camera的不同子属性中。
属性
描述
imageCapture
捕捉图片的方法和属性。
videoRecording
捕捉电影的方法和属性。
exposure
调整曝光的方法和属性。(光圈、快门速度等)
focus
调整对焦的方法和属性;提供自动对焦的反馈。
flash
控制闪光灯的方法和属性。
imageProcessing
调整图像处理参数的方法和属性。
基本的相机状态管理,错误报告和简单的缩放控制,Camera自身的属性足以支持。另外,我们可以使用mediaObject属性扩展标准的Qt Multimedia相机控制接口。
相机的许多设置值需要一些时间才能有效应用,有些值可能还存在限制,这些都取决于相机的硬件。一些相机可以设置成手动或自动。这些设置属性包含当前设置值。例如,当自动对焦被打开,焦点区域就暴露在焦点属性中。
PropertyDocumentation
availability: enumeration
相机的可用性。它是下面值中的一个。
值
描述
Available
相机可用
Busy
相机属于另一个进程,处于忙状态。
Unavailable
相机不可用(可能没有相机的硬件)
ResourceMissing
相机因为缺少资源,不可用,可稍后在试。
cameraState: enumeration
相机的当前状态,可能是下面的属性之一:
值
描述
UnloadedState
相机的初始状态,相机没有加载。除了捕捉功能,相机的其他功能未知。基本上是上电后的状态,准备开始捕捉需要花费最长的时间。
在这个状态,支持的设置未知。但我们还能为捕捉设置编解码器,分辨率和帧率。
LoadedState
相机被加载并准备配置。在空闲时,我们可以查询相机的功能,设置捕捉的分辨率,编解码器等等。在这个状态,取景器没有被激活。
ActiveState
在这个状态,取景器已经被激活,相机已经为捕捉做好准备。
默认相机状态是ActiveState。
cameraStatus: enumeration
相机当前的状况,它是下面的其中一个值:
值
描述
ActiveStatus
相机已经启动,可以产生数据,取景器显示视频帧。依赖于后端,在ActiveState状态改变相机的设置(诸如捕捉模式,编解码器,分辨率),可能改变cameraStatus 到LoadedStatus和StartingStatus。当设置被应用,相机准备好时,cameraStatus回到ActiveStatus。
StartingStatus
相机开始过渡到Camera.ActiveState。此时相机还没有准备捕捉数据。
StoppingStatus
相机正处于从Camera.ActiveState过渡到Camera.LoadedState或Camera.UnloadedState。
StandbyStatus
相机在一段时间不活动后,进入Camera.LoadedState的节能待机模式的状态。
LoadedStatus
相机被加载,准备被设置。这个状况指明了相机设备被打开,能够查询支持的图片和影片的捕捉设置。(诸如分辨率、帧率、编解码器)
LoadingStatus
相机正处于Camera.UnloadedState到Camera.LoadedState或Camera.ActiveState的过渡中。
UnloadingStatus
相机正处于从Camera.LoadedState或Camera.ActiveState过渡到Camera.UnloadedState中。
UnloadedStatus
相机一开始的状况,相机没有加载。相机支持的功能,包括捕捉设置为未知。
UnavailableStatus
相机或相机后端不可用。
captureMode: enumeration
相机的捕捉模式,它是下面的其中一个值:
值
描述
CaptureViewfinder
相机仅仅设置在取景器显示。
CaptureStillImage
相机捕捉图片。
CaptureVideo
相机捕捉视频。
digitalZoom: real
当前的数字变焦。
errorCode :enumeration
最后的错误码。
errorString: string
最后的错误的详细信息。
lockStatus :enumeration
相机针对所有请求的状态。属性是下面的一个值。
值
描述
Unlocked
应用对相机设置没有兴趣。相机保持同样的参数不变。大家使用共同的焦距,曝光调节,白平衡设置,保证取景器的图像是优质的。
Searching
应用请求设置相机聚焦,曝光和白平衡。searchAndLock()启动,这个状态指明相机正在聚焦或计算曝光和白平衡。
Locked
相机的焦距,曝光和白平衡被锁定。相机准备捕捉数据。应用可以检查曝光参数。锁状态意味着请求的参数将保持不变,除非再次请求更新参数。例如在连续聚焦状态,焦距被锁定。即使实际焦距变化,参数也不改变。
maximumDigitalZoom: real
支持的最大数码变焦。如果不支持数码变焦,此属性为1.0。
maximumOpticalZoom: real
支持的最大光学变焦,如果不支持光学变焦,此属性为1.0。
mediaObject: variant
相机的媒体对象。
opticalZoom: real
当前的光学变焦。
SignalDocumentation
digitalZoomChanged(zoom)
当数码变焦设置值变化时,发送这个信号。
error(errorCode,errorString)
当错误发生,这个信号被发射。errorCode是下面的一个值。错误可利用的描述在errorString中。
值
描述
NoError
没有错误发生
CameraError
有错误
InvalidRequestError
系统不支持请求的功能
ServiceMissingError
没有相机服务可用
NotSupportedFeatureError
不支持的特征
lockStatusChanged()
当锁状态变化时,发送这个信号。这发生在锁(例如自动变焦)完成或失败。
manualWhiteBalanceChanged(qreal)
当manualWhiteBalance属性变化时,发送这个信号。
maximumDigitalZoomChanged(zoom)
最大数字对焦改变,将发射这个信号。这一般发生在我们在图片和影片之间改变捕捉模式或改变捕捉设置时。
maximumOpticalZoomChanged(zoom)
当最大光学对焦发生变化时,发送这个信号。这一般发生在我们在图片和影片之间改变捕捉模式或改变捕捉设置时。
opticalZoomChanged(zoom)
当光学对焦发生变化时,发送这个信号。
stateChanged(state)
当相机状态发生变化时,发送这个信号。状态变化需要花一些时间,所以这个信号可能在请求发生后的某个时刻抵达。
whiteBalanceModeChanged(Camera::WhiteBalanceMode)
当whiteBalanceMode属性发生变化时,发送这个信号。
MethodDocumentation
searchAndLock()
开始焦距、曝光和白平衡的计算。这用于相机的焦距按钮被按下或相机的捕捉按钮半按。如果相机支持自动对焦,焦点区域可以通过focus属性获得。
start()
启动相机,取景帧可用,图片或电影可以被捕捉。
stop()
停止相机,但不处理相机栈
unlock()
解锁焦距,曝光和白平衡锁。- QML类型说明-Camera
- QML类型说明-Accessible
- QML类型说明-Action
- QML类型说明-Address
- QML类型说明-Affector
- QML类型说明-Age
- QML类型说明-Altimeter
- QML类型说明-AltimeterReading
- QML类型说明-AmbientLightReading
- QML类型说明-AmbientLightSensor
- QML类型说明-AnchorAnimation
- QML类型说明-AnchorChanges
- QML类型说明-AngleDirection
- QML类型说明-ParallelAnimation
- QML类型说明-Animator
- QML类型说明-AnimatedImage
- QML类型说明-AnimatedSprite
- QML类型说明-ApplicationWindow
- java多线程(二)
- Android APK反编译就这么简单 详解(附图)
- 十个利用矩阵乘法解决的经典题目
- ReportStudio入门教程(九十) - 在交叉表表头显示占比
- 专访魏子钧:喧嚣后的HTML5和JavaScript将长存
- QML类型说明-Camera
- AVS 和 H.264 核心技术对比总结
- JavaScript页面节点的函数
- 【leetcode 移除有序序列重复数字】Remove Duplicates from Sorted Array(List) I(II)
- Android显示系统分析
- 神兽保佑 代码无bug
- 数据结构学习笔记(四)---遍历二叉树
- leetcode:maxprofit
- 如何阅读Java源码 阅读java的真实体会