gpt4 book ai didi

android - 如何在camera2,android中手动控制iso

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:30:26 27 4
gpt4 key购买 nike

我是 android 的新手,正在尝试找出新的 camera2 效果。我不知道如何手动控制相机预览中的 iso。任何帮助将不胜感激。

谢谢。

最佳答案

确定您的设备是否支持手动 ISO 控制的一种方法是检查它是否支持 MANUAL_SENSOR能力。

如果是这样,您可以通过禁用所有自动功能来关闭自动曝光:

previewBuilder.set(CaptureRequest.CONTROL_MODE, CaptureRequest.CONTROL_MODE_OFF);

或者只是禁用自动曝光,保持自动对焦和自动白平衡运行:

previewBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_OFF);

禁用 AE 后,您可以手动控制曝光时间、感光度 (ISO) 和帧持续时间:

previewBuilder.set(CaptureRequest.SENSOR_EXPOSURE_TIME, exposureTime);
previewBuilder.set(CaptureRequest.SENSOR_SENSITIVITY, sensitivity);
previewBuilder.set(CaptureRequest.SENSOR_FRAME_DURATION, frameDuration);

这些值的有效范围可以从 SENSOR_INFO_EXPOSURE_TIME_RANGE 中找到和 SENSOR_INFO_SENSITIVITY_RANGE用于曝光和灵敏度。对于帧持续时间,可以从 SENSOR_INFO_MAX_DURATION 中找到最大帧持续时间。和最短帧持续时间(最大帧速率)取决于您的 session 输出配置。参见 StreamConfigurationMap.getOutputMinFrameDuration有关这方面的更多详细信息。

请注意,一旦禁用 AE,就必须控制所有 3 个参数(如果您从未设置一个参数,则有默认值,但它们不会自动变化)。您可以在关闭 AE 之前从最后一个 CaptureResult 中复制这些的最后良好值,作为开始。

关于android - 如何在camera2,android中手动控制iso,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28293078/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com