阅读 291

Android Camera2 API简述 (五)

一、 CaptureRequest

CaptureRequest 表示的是一个捕获的请求。可以创建不同的捕获请求,配置不同的捕获属性来处理不同场景下的情况。如:对焦模式、曝光模式,预览分辨率,预览目标。

二、获取实例

通过 CameraDevice 对象的 createCaptureRequest() 方法得到一个 CaptureRequest.Builder 对象,最后通过 CaptureRequest.Builder 对象的 build() 方法便可得到 CaptureRequest 实例。

image.png

image.png

三、内部类

1. CaptureRequest.Builder

获取:

使用 CameraDevice.createCaptureRequest(int) 方法获取一个 CaptureRequest.Builder 对象。其中的 int 取值为:

TEMPLATE_PREVIEW : 用于创建一个相机预览请求。相机会优先保证高帧率而不是高画质。适用于所有相机设备。

TEMPLATE_STILL_CAPTURE : 用于创建一个拍照请求。相机会优先保证高画质而不是高帧率。适用于所有相机设备。

TEMPLATE_RECORD : 用于创建一个录像请求。相机会使用标准帧率,并设置录像级别的画质。适用于所有相机设备。

方法

void addTarget(Surface outputTarget): 添加一个请求的输出surface,注意这个surface必须包含在 CameraDevice.createCaptureSession() 方法设置的输出surface集合中。

image.png

image.png

四、常用字段

用于 CaptureRequest.Builderset() 方法。

CONTROL_AE_LOCK :自动曝光(AE)现在是否锁定为其最新计算值

CONTROL_AE_MODE : 相机自动曝光程序所需的模式

CONTROL_AF_MODE : 自动对焦(AF)当前是否启用,以及设置为何种模式

CONTROL_AF_REGIONS : 用于自动聚焦的测光区域列表

CONTROL_AWB_LOCK : 自动白平衡(AWB)现在是否锁定为其最新计算值

CONTROL_AWB_MODE : 自动白平衡(AWB)当前是否设置颜色转换字段,以及它的光照目标是什么

CONTROL_MODE : 整个3A控制程序模式


作者:大乔治
链接:https://juejin.cn/post/7029152812198002724


文章分类
ANDROID
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐