Чем я занимаюсь:
Мне нужно воспроизводить аудио и видео файлы, которые не поддерживаются Apple на iPhone / iPad, например файлы mkv / mka, которые содержат несколько аудиоканалов.
Я использую libffmpeg для поиска аудио- и видеопотоков в медиафайле. Видео декодируется с помощью avcodec_decode_video2
, а аудио с avcodec_decode_audio3
, возвращаемые значения следующие для каждой функции следующие
avcodec_decode_video2
- возвращает структуруAVFrame
, которая инкапсулирует информацию о видеокадре из пакета, в частности, имеет полеdata
, которое является указателем на плоскости изображения / канала.avcodec_decode_audio3
- возвращаетsamples
типа int16_t *, который, как я полагаю, является необработанными аудиоданными
В общем, я проделал все это и успешно декодировал медиа-контент.
Что мне нужно сделать: я должен воспроизвести аудио и видео соответственно с помощью сервисов Apple. Воспроизведение, которое мне нужно выполнить, должно поддерживать микширование аудиоканалов при воспроизведении видео, т.е. скажем, файл mkv содержит два аудиоканала и видеоканал. Итак, я хотел бы знать, какая услуга будет для меня подходящей? Мое исследование показало, что служба AudioQueue может быть полезна для воспроизведения звука и, возможно, AVFoundation для видео.
Пожалуйста, помогите найти подходящую технологию для моего случая, то есть воспроизведение видео + воспроизведение звука с возможным микшированием аудиоканалов.