API iOS 11 для записи видео 4K @ 60 FPS - PullRequest
0 голосов
/ 19 мая 2018

У меня iPhone X под управлением 11.3.Я использовал AVFoundation, AVCaptureSession, AVAssetWriter и т. Д. И получил h.265 HEVC 4K @ 30 FPS ... но после многих часов поиска в Google я не нашел ни документации, ни примеров 4k @ 60 FPSзахватить.Я пытался форсировать его с помощью таких свойств, как minFrameDuration, но всегда получаю сообщение об ошибке.

Я не прошу вас делать всю мою работу за меня (хотя, если вам хочется написать мне 4k@ 60 просмотр контроллера, да, пожалуйста!) Но если бы вы могли указать мне правильное направление, в частности, какой API поддерживает это на iPhone X. Если я знаю, что это будет делать только AVAssetWriter, то я могу ударить головойчто на несколько часов :) 1003 *

1 Ответ

0 голосов
/ 16 мая 2019

Мне потребовалось некоторое время, чтобы найти ответ на запись видео со скоростью 4k и 60fps.У меня есть настройки iphone X, Swift 4 и iOS 12.3

  • . Убедитесь, что для устройства захвата установлено значение AVCaptureDevice.default (для: .video)!Не используйте AVCaptureDevice.DiscoverySession, поскольку он не будет возвращать настройки 4k и 60fps в AVCaptureDevice.Format.
  • Цикл по массиву форматов, чтобы найти и установить нужный формат.Желаемый формат для 4k и 60fps должен быть таким: AVCaptureDeviceFormat: 0x2820d8700 'vide' / '420v'.3840x2160, {3-60 к / с} ...

Последнее, что нужно, - использовать класс AVOutputSettingsAssistant для настройки словарей параметров вывода в AVAssetWriter.Выходная настройка должна быть AVOutputSettingsPresetHEVC3840x2160.Выходной видеосигнал будет прерывистым, если для параметра видео установлено значение AVOutputSettingsPreset3840x2160.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...