Android Camera 2 API 在 Nougat 7.1 上出现 Flash 问题



在Camera 2示例之后,我创建了简单的相机类来捕获图像。当可以在任何装有Android <7.0的设备上捕获闪光灯/非闪光灯图像时,在我的Nexus 5X和Android 7.1上,相同的配置仅在预览中触发闪光灯一次。下一个是前序列:

  • 对于预览,我正在使用CameraDevice.TEMPLATE_PREVIEW,自动曝光模式设置为 CameraMetadata.CONTROL_AE_MODE_ON_ALWAYS_FLASH
  • 我用于捕获静止图像的相同,但带有CameraDevice.TEMPLATE_STILL_CAPTURE

如果有人可以帮助我处理这个案子 - 我将不胜感激。

这只是有关上述问题的其他信息。我想提请注意这个问题!

我的应用程序每 5 秒拍摄一张照片。我 (1( 选择相机,(2( 获取一个会话,然后通过每个循环 I (3( 创建一个捕获请求,在该请求中我设置闪光模式并在会话上调用捕获方法。

我的三星SM-G550T(Android版本6.01(没有任何问题,但是我的Moto G4(Android版本7.0(上的Flash模式遇到了一些问题。我把两部手机都拿到了Flash,但只有这个设置:

CaptureRequest.Builder requestBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE);
requestBuilder.set(CaptureRequest.FLASH_MODE, CaptureRequest.FLASH_MODE_SINGLE);

我目前在使用 LG 设备 (M210N((安卓版本 7.0( 时遇到问题。使用我上面提到的设置,我让设备只闪烁一次。如果我完全重新初始化相机(如上所述(,设备将仅再次闪烁一次。

如果我将CONTROL_AE_MODE_ON_ALWAYS_FLASH设置添加到上面的请求生成器中,那么LG根本不会闪烁。所以我不得不删除那个标志。

我已经尝试了许多不同的附加设置和设置组合,但没有一个消除这个问题。我想知道有多少设备受到此问题的影响。

最新更新