Пытается получить более 60 FPS с помощью Swift 5, но XCode показывает, что он застрял на 60 FPS
, используя этот код от Apple для настройки камеры на максимально возможную частоту кадров, которая должна быть 240FPS
что пошло не так?
func configureCameraForHighestFrameRate(device: AVCaptureDevice) {
var bestFormat: AVCaptureDevice.Format?
var bestFrameRateRange: AVFrameRateRange?
for format in device.formats {
for range in format.videoSupportedFrameRateRanges {
if range.maxFrameRate > bestFrameRateRange?.maxFrameRate ?? 0 {
bestFormat = format
bestFrameRateRange = range
}
}
}
if let bestFormat = bestFormat,
let bestFrameRateRange = bestFrameRateRange {
do {
try device.lockForConfiguration()
// Set the device's active format.
device.activeFormat = bestFormat
// Set the device's min/max frame duration.
let duration = bestFrameRateRange.minFrameDuration
device.activeVideoMinFrameDuration = duration
device.activeVideoMaxFrameDuration = duration
device.unlockForConfiguration()
} catch {
// Handle error.
}
}
}
Дамп формата
- 'vide'/'420v' 1280x 720, { 5-240 fps}, fov:58.632, binned, supports vis, max zoom:65.50 (upscales @1.45), AF System:1, ISO:23.0-736.0, SS:0.000006-0.200000 #0
- супер: NSObject
Дамп frameRate
- <AVFrameRateRange: 0x28325dd50 5 - 240> #0
- super: NSObject
Дамп длительности
▿ __C.CMTime
- value: 1
- timescale: 240
▿ flags: __C.CMTimeFlags
- rawValue: 1
- epoch: 0
XCode 11
iPhone 6s
MacOS Mojave