Я пытаюсь реализовать конвейер обработки видео в ios с помощью Metal. Пока я могу получить CVPixelBuffer
от делегата AVCaptureVideoDataOutput
, применить к нему фильтр и отобразить его в MTKView
для предварительного просмотра в реальном времени. Мой вопрос: как применить тот же фильтр к видео при записи с помощью AVCaptureMovieFileOutput
? Я имею в виду, есть ли способ загрузить уже отфильтрованные CVPixelBuffer
s в AVCaptureMovieFileOutput
?
AVFoundation как захватить обработанное видео?
Ответы (1)
Для этого варианта использования вам понадобится AVAssetWriter
, который вы передаете обработанные пиксельные буферы через AVAssetWriterInput
. Это довольно ручной процесс, но, возможно, эта статья немного поможет .
person
Frank Schlegel
schedule
18.05.2020
То есть мне нужно записывать звук отдельно и объединять его с видео?
- person mustafa; 18.05.2020
Вам нужен
AVCaptureAudioDataOutput
в сеансе захвата и передать созданные им буферы сэмплов другому AVAssetWriterInput
того же того же AVAssetWriter
, который вы инициализируете с типом носителя .audio
. Затем средство записи активов синхронизирует образцы видео и аудио на основе их метки времени.
- person Frank Schlegel; 18.05.2020