如何在Camera2 Android中手动控制SensorExposureTime和SensorSensitivity(ISO)?

时间:2018-07-11 10:47:43

标签: android xamarin.forms android-camera android-camera2

下面是用于手动设置SensorExposureTime和SensorSensitivity(ISO)值的代码段,

builder.Set(CaptureRequest.ControlAeMode, new Java.Lang.Integer((int)ControlAEMode.Off));
builder.Set(CaptureRequest.SensorExposureTime, Long.ValueOf("1000000"));   // nano secs 1/250=4E6
builder.Set(CaptureRequest.SensorSensitivity, 2000);

通过手动控制自动曝光,相机预览显示为黑色失真线。

enter image description here

如果将ControlAeMode更改为“ on”,则摄像机预览将正确显示。

enter image description here

我正在使用具有level_3硬件支持的Moto x4设备对此进行测试。

1 个答案:

答案 0 :(得分:0)

您看到办公室的灯光闪烁。通常,自动曝光可以补偿荧光灯的电源线闪烁,但是当您切换到手动曝光时,这是不可能的。

尝试在室外或在其他光照下进行测试以进行验证。