使用Camera API
来源:互联网 发布:react.js vue.js 编辑:程序博客网 时间:2024/05/18 00:16
Symbian 7.0以上的版本使用CCamera来访问摄像头。
CCamera提供了一个可用于应用程序交互和获取照相机图像的接口。CCamera封装了一系列易于使用的API,同时,它提供了一个MCameraObserver注册到CCamera,通知应用程序各种关键事件。必须实现MCameraObserver的所有纯虚方法供系统在事件产生的时候回调。
要捕捉一幅图像,首先需要创建一个CCamera的实例。调用CCamera::NewL(MCameraObserver&,TInt):
iCamera = CCamera::NewL(aObserver,0);
然后我们需要保留照相机设备:
User::LeaveIfError(iCamera->Reserve());
这个异步函数成功返回的时候系统会调用MCameraObserver::ReserveComplete()方法。下一步我们要通过PowerOn()函数开启它。这也是一个异步方法,当操作完成时,他调用MCameraObserver::ReserveComplete()。
iCamera->PowerOn();
在使用CaptureImage()之前,我们需要指定图像的格式和大小。TCameraInfo::iImageFrameFormatsSupported提供对格式的支持,CCamera::EnumerateCaptureSizes()提供对大小的支持。使用CCamera::PrepareImageCaptureL()来指定图像格式和大小。拍摄照片之前,至少调用一次该函数。
iCamera->PrepareImageCaptureL(CCamera::EFormatFbsBitmapColor4K,1);
然后我们可以照相了。
iCamera->CaptureImage();
当捕捉成功后,将调用MCameraObserver::ImageReady()。应用程序使用完照相机后,应释放照相机。
iCamera->Release();
CCamera还提供了闪光模式、光学和数字变焦、亮度、对比度、曝光等设置功能,依赖于设备的硬件能力。
CCamera提供了一个可用于应用程序交互和获取照相机图像的接口。CCamera封装了一系列易于使用的API,同时,它提供了一个MCameraObserver注册到CCamera,通知应用程序各种关键事件。必须实现MCameraObserver的所有纯虚方法供系统在事件产生的时候回调。
要捕捉一幅图像,首先需要创建一个CCamera的实例。调用CCamera::NewL(MCameraObserver&,TInt):
iCamera = CCamera::NewL(aObserver,0);
然后我们需要保留照相机设备:
User::LeaveIfError(iCamera->Reserve());
这个异步函数成功返回的时候系统会调用MCameraObserver::ReserveComplete()方法。下一步我们要通过PowerOn()函数开启它。这也是一个异步方法,当操作完成时,他调用MCameraObserver::ReserveComplete()。
iCamera->PowerOn();
在使用CaptureImage()之前,我们需要指定图像的格式和大小。TCameraInfo::iImageFrameFormatsSupported提供对格式的支持,CCamera::EnumerateCaptureSizes()提供对大小的支持。使用CCamera::PrepareImageCaptureL()来指定图像格式和大小。拍摄照片之前,至少调用一次该函数。
iCamera->PrepareImageCaptureL(CCamera::EFormatFbsBitmapColor4K,1);
然后我们可以照相了。
iCamera->CaptureImage();
当捕捉成功后,将调用MCameraObserver::ImageReady()。应用程序使用完照相机后,应释放照相机。
iCamera->Release();
CCamera还提供了闪光模式、光学和数字变焦、亮度、对比度、曝光等设置功能,依赖于设备的硬件能力。
- 使用Camera API
- 使用Camera API
- 使用Camera API
- Android 相机Camera API 使用
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- 使用Camera2 替代过时的Camera API
- Camera API
- Camera API
- Camera api
- 如何在QML中使用camera API来拍照
- 在Ubuntu手机平台中使用Camera API来录像
- Android使用Camera2 替代过时的Camera API
- Android使用Camera2 替代过时的Camera API
- Asp.Net 之 CustomValidator控件不知道问题出在哪?
- 转移焦点(delphi)
- c#中照片处理 的方法
- 回调函数
- 动态调用 WebService
- 使用Camera API
- soket多线程操作服务端及客户端代码
- usb引脚
- 人生要找的四个人
- 访问文件系统
- 《成功的项目管理》案例
- Java连接SQLServer 2005 TCP/IP 连接失败
- 手机驱动
- 软件工程师的务实职业生涯规划