在自动闪光模式下,Android camera2闪光灯在弱光条件下未启动

在自动闪光模式下,Android camera2闪光灯在弱光条件下未启动,android,android-camera,android-camera2,Android,Android Camera,Android Camera2,我使用camera2拍摄照片,并将闪光灯模式设置为自动。我将请求参数设置如下 CaptureRequest.Builder stillCaptureBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); stillCaptureBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO

我使用camera2拍摄照片,并将闪光灯模式设置为自动。我将请求参数设置如下

CaptureRequest.Builder stillCaptureBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE);
stillCaptureBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH);
在上述代码中,闪光灯应在弱光条件下发射。但它并没有像预期的那样起作用。闪光灯在光线较暗的情况下未被触发


如何将camera2设置为自动闪光模式?

让我们看看我是否可以帮助您

如果您使用的是AE_模式,请尝试将Flash_模式设置为OFF:

 builder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON);
 builder.set(CaptureRequest.FLASH_MODE, CameraMetadata.FLASH_MODE_OFF);
然后再次更新预览设置,并向生成器发出重复请求和回调:

mCaptureSession.setRepeatingRequest(builder.build(),
                    callback, backgroundHandler);
还请记住,如果要检查所有设置是否正确,可以在拍照之后或之前使用captureCalback返回值中的
result.get(CaptureResult.flash\u state)
恢复闪光灯的状态


另一方面,不要忘记在拍摄闪光灯时不要更新预览,否则你会在拍摄照片之前将闪光灯延迟

试试这个自动闪光

 // Use the same AE and AF modes as the preview.
            captureStillBuilder.set(CaptureRequest.CONTROL_AF_MODE,
                    CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE);
            captureStillBuilder.set(CaptureRequest.CONTROL_AE_MODE,
                    CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH);

嘿,你找到解决办法了吗?我也面临同样的问题,但这并不能解决问题。。还有别的出路吗?我对自动闪光也有同样的问题。