摄像头2手动检查iso和快门速度是否受支持

cgfeq70w  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(398)

我试着检查不同镜头的快门速度和iso是否受支持,但我不知道怎么做,一开始我以为我是这样检查的:

val capabilities = characteristics.get(REQUEST_AVAILABLE_CAPABILITIES)!!
val canReadSensorSettings = capabilities.contains(
            REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS)
val hasManualSensor = capabilities.contains(
            REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR)

然后检查是否(canreadsensorsettings&&hasmanualsensor)//然后可以为该镜头启用手动曝光。
我认为它是工作的,然后发现在一些前镜头上,这两个值都是假的,但我仍然可以改变iso和快门速度
我的问题是,检查相机设备iso和shtter_速度支持的正确方法是什么。
顺便说一句,我已经看到了这一点,但无法从中得到它,可能解决方案就在这个链接中,但我无法得到它:https://developer.android.com/reference/android/hardware/camera2/cameracharacteristics.html#request_available_capabilities

sigwle7e

sigwle7e1#

某些设备可能允许更改曝光/iso值,即使它们没有列出手动传感器功能(请注意,列出的手动传感器意味着读取传感器设置也将始终存在,因此您可以检查手动传感器)。
这意味着它们在某种程度上不能满足手动传感器的所有要求,因此可能有一些控件无法工作,或者工作方式与api要求不同。
因此,为了可靠性,如果没有列出手动传感器功能,我不会尝试使用手动设置,除非您要自己测试每个设备,以确保实际工作。坚持使用列出手动传感器的设备意味着它们经过了合规性测试,可以在手动控制下按预期工作。

相关问题