如何在camerax中锁定曝光?

Posted

技术标签:

【中文标题】如何在camerax中锁定曝光?【英文标题】:How to lock exposure in camerax? 【发布时间】:2021-07-13 19:20:26 【问题描述】:

旧相机api中有setAutoExposureLock()方法。

还可以像这样在camera2中锁定曝光:

builder.set(CaptureRequest.CONTROL_AE_LOCK, true);

如何在 CameraX 中做到这一点?现在我正在使用ImageCapture.Builder 拍照。快速的互联网搜索没有给我答案。

【问题讨论】:

【参考方案1】:

您正在寻找Camera2InterOp API。 https://developer.android.com/reference/androidx/camera/camera2/interop/Camera2Interop

ImageCapture.Builder builder = new ImageCapture.Builder();
Camera2Interop.Extender<ImageCapture> extender = new Camera2Interop.Extender<>(builder);
extender.setCaptureRequestOption(CaptureRequest.CONTROL_AE_LOCK, true);

【讨论】:

以上是关于如何在camerax中锁定曝光?的主要内容,如果未能解决你的问题,请参考以下文章

如何在服务或接收器中使用没有 XML 和 PreviewView 的 CameraX?

Camerax 在服务中运行。如何在前台服务中获取生命周期所有者或在没有它的情况下运行?

CameraX 库如何打开/关闭手电筒?

如何使用 CameraX 拍摄多张图像?

如何使用 cameraX 在相机应用程序中实现 FlashToggle 按钮?

如何在 MediaCodec 编码器和 CameraX 之间共享 Surface