如何在Android中使用camera2 判断相机是否可用(android,camera2,roi,移动开发)

时间:2024-05-02 17:22:30 作者 : 石家庄SEO 分类 : 移动开发
  • TAG :

    %E5%A6%82%E4%BD%95%E5%9C%A8Android%E4%B8%AD%E4%BD%BF%E7%94%A8camera2+%E5%88%A4%E6%96%AD%E7%9B%B8%E6%9C%BA%E6%98%AF%E5%90%A6%E5%8F%AF%E7%94%A8

首先获取到设备等级:

Float hardwareLevel = mCameraCharacteristics.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);

LEGACY < LIMITED < FULL < LEVEL_3. 越靠右边权限越大

•INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY = 2
•INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED = 0
•INFO_SUPPORTED_HARDWARE_LEVEL_FULL = 1
•INFO_SUPPORTED_HARDWARE_LEVEL_3 = 3

在相应的等级下面会有各自支持的功能,LEGACY为最低权限

在LIMITED中

android.request.availableCapabilities

介绍:List of capabilities that this camera device advertises as fully supporting.

int[] ints = mCameraCharacteristics.get(CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES);

Possible values:

•BACKWARD_COMPATIBLE
•MANUAL_SENSOR
•MANUAL_POST_PROCESSING
•RAW
•PRIVATE_REPROCESSING
•READ_SENSOR_SETTINGS
•BURST_CAPTURE
•YUV_REPROCESSING
•DEPTH_OUTPUT
•CONSTRAINED_HIGH_SPEED_VIDEO

这些值对应的特征值举例:

final String name3 = CaptureRequest.SENSOR_FRAME_DURATION.getName();
name3 -》android.sensor.frameDuration

列出这个的意思是,如果想知道该设备是否支持此功能,可以通过getName()获取其包名,然后在

mCameraCharacteristics.getAvailableCaptureRequestKeys();生成的队列中寻找。

如果有匹配则是可控;

CaptureRequest.LENS_FOCUS_DISTANCE;调节焦距
CaptureRequest.CONTROL_AF_MODE;自动对焦模式
CaptureRequest.SENSOR_SENSITIVITY 调节iso
CaptureRequest.CONTROL_AE_MODE 自动曝光模式

本文:如何在Android中使用camera2 判断相机是否可用的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:android应用中如何判断设备是否有相机下一篇:

8 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18