Настройка записи с высокой частотой кадров в Swift

Я пытаюсь создать приложение для записи видео со скоростью 120 кадров в секунду, но у меня проблемы.

Во-первых, когда print(device.activeFormat)я получаю это в логах

AVCaptureDeviceFormat: 0x13fe49890 'vide'/'420v' 1920x1080, { 2- 30 fps}, fov:58.080, supports vis, max zoom:104.38 (upscales @1.55), AF System:1, ISO:34.0-544.0, SS:0.000024-0.500000

но мое устройство iPhone 5s, который поддерживает 120 кадров в секунду, не знаю, почему диапазон здесь составляет 2-30 кадров в секунду.

Во-вторых, когда я делаю device.activeVideoMaxFrameDuration = CMTimeMake(1, 120) чтобы изменить максимальную частоту кадров до 120 кадров в секунду, я получаю эту ошибку в журналах:

[AVCaptureVideoDevice setActiveVideoMaxFrameDuration:] - the passed activeVideoMaxFrameDuration 1:120 is not supported by the device.

Что я делаю неправильно?

Спасибо!

1 ответ

Решение

Как вы можете видеть из вашей распечатки (device.activeFormat), максимальная поддержка fps составляет 30 заданных {2- 30 fps}. Поэтому установка 120 кадров в секунду с device.activeVideoMaxFrameDuration = CMTimeMake(1, 120) не поддерживается.

Другие вопросы по тегам