这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战
一、 CameraCharacteristics
CameraCharacteristics 是描述相机设备的属性类,继承自CameraMetadata类。给对给定的相机,它里面所包含的属性都是 固定的 ,也就是我们说的静态metadata.
包括:曝光补偿(Exposure compensation)
自动曝光/自动对焦/自动白平衡模式(AE / AF / AWB mode)
自动曝光/自动白平衡锁(AE / AWB lock)
自动对焦触发器(AF trigger)
拍摄前自动曝光触发器(Precapture AE trigger)
测量区域(Metering regions)
闪光灯触发器(Flash trigger)
曝光时间(Exposure time)
感光度(ISO Sensitivity)
帧间隔(Frame duration)
镜头对焦距离(Lens focus distance)
色彩校正矩阵(Color correction matrix)
JPEG 元数据(JPEG metadata)
色调映射曲线(Tonemap curve)
裁剪区域(Crop region)
目标 FPS 范围(Target FPS range)
拍摄意图(Capture intent)
硬件视频防抖(Video stabilization)等。
在官方文档中有更加详细介绍
二、获取实例
三、内部类
通过特定的KEY查询相应的相机特征,CameraCharacteristics.KEY
四、常用方法
1. T get(CameraCharacteristics.Key key)
获取到相机设备属性所对应字段的值,若返回null,则key未设置。
2. List<CameraCharacteristics.Key<?>> getKeys()
获取到相机设备所支持的所有的 CameraCharacteristics.Key, 获取到的key的列表,就可以确定我们想要获取的KEY的的值不会为null, 这个key的列表是不允许被修改的,否则将抛出 UnsupportedOperationException 异常。
3. List<CaptureRequest.Key<?>> getAvailableCaptureRequestKeys()
获取到相机设备所支持的 CaptureRequest.Key 的列表。
4. List<CaptureResult.Key<?>> getAvailableCaptureResultKeys()
获取到相机设备所支持的 CaptureResult.Key 的列表。
五、常用字段
CONTROL_AE_AVAILABLE_MODES: 相机设备支持的自动曝光模式列表
CONTROL_AF_AVAILABLE_MODES:相机设备支持的自动聚焦模式列表
CONTROL_AWB_AVAILABLE_MODES:相机设备支持的自动白平衡模式列表
LENS_FACING:相机设备相对于屏幕的方向
FLASH_INFO_AVAILABLE:相机设备是否有闪光灯部件
[INFO_SUPPORTED_HARDWARE_LEVEL:相机设备支持的硬件等级