1

对于 Android API >= 29,我使用下一个片段来确定镜头何时为单色:

public boolean isMono(@NonNull final CameraCharacteristics characteristics) {
    final Integer value = characteristics.get(CameraCharacteristics.SENSOR_INFO_COLOR_FILTER_ARRANGEMENT);

    return (value != null)
            && ((value == CameraCharacteristics.SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO)
                || (value == CameraCharacteristics.SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR));
}

API 29中引入了SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO和SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR 。

对于 API < 29,确定镜头是否为单色的方法是什么?

在 API 28中, REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME可用于了解相机镜头何时是单色的,但在我的测试设备中,对于已知的单色镜头,我没有获得这种能力。我不知道这是否是由于制造商的实施不正确。

至于 APIs < 28 我找不到任何检查方法。

4

0 回答 0