gpt4 book ai didi

ios - AVFoundation 相机的正确 ISO 值

转载 作者:行者123 更新时间:2023-12-01 17:48:12 25 4
gpt4 key购买 nike

在使用 AVFoundation 时,我使用这两个属性来了解设备相机可以使用的最小和最大 ISO:

AVCaptureDeviceFormat *activeFormat = _videoDevice.activeFormat;
minISO = activeFormat.minISO;
maxISO = activeFormat.maxISO;

但是这些行给我以下结果:

minISO = 23
maxISO = 736

但是没有 ISO 23 或 736 这样的东西。事实上,如果你用 ISO 23 调整相机,它会自动调整到 ISO 50,而 ISO 736 会让相机调整到 ISO 800。

有没有办法在设置之前知道给定相机可以使用的真实 ISO?

最佳答案

您可以定义标准 ISO 值列表:

let isos: [Float] = [32, 50, 64, 80, 100, 125, 160, 200, 250, 320, 400, 500, 640, 800, 1000, 1250, 1600, 1800]

并且在通过最小和最大 ISO 值初始化捕获设备过滤器之后:

var isos_available: [Float] = []

for one_iso in isos {
if one_iso >= min_iso && one_iso <= max_iso {
isos_available.append(one_iso)
}
}

还有快门速度:

var shutters: [Float] = [1, 2, 4, 8, 15, 30, 60, 125, 250, 500, 1000, 2000, 4000, 8000]
var shutters_available: [Float] = []

let min_seconds = CMTimeGetSeconds(self.device.activeFormat.minExposureDuration)
let max_seconds = CMTimeGetSeconds(self.device.activeFormat.maxExposureDuration)

for one_shutter in shutters {
let seconds = 1.0 / Float64(one_shutter)
if seconds >= min_seconds && seconds <= max_seconds {
shutters_available.append(one_shutter)
}
}

关于ios - AVFoundation 相机的正确 ISO 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40604334/

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