Кодек AAC в настоящее время не поддерживается в контейнере MXF

Возникли проблемы при кодировании из .mpg в .mxf используя кодек aac.

Я написал: ffmpeg -i [input.mpg] -c:v mpeg2video -b:v 10M -a:c aac [output.mxf]

Все вроде нормально, пока не выскакивает ошибка.

[mxf @ 000002a5ade4d8c0] track 1: could not find essence container ul, codec not currently supported in container
Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted
Error initializing output stream 0:1 --
[aac @ 000002a5add99880] Qavg: nan
Conversion failed!

1 ответ

AAC в MXF поддерживается через SMPTE ST 381-4. Этот документ был первоначально опубликован в 2017 году, и его поддержка еще не была реализована в инструментах с открытым исходным кодом.

До введения этой спецификации существовал более старый документ SMPTE RDD 25, в котором определялось, как Harmonic Inc. записывает AAC в контейнер MXF для прокси-файлов, созданных в линейке продуктов Spectrum. За этим документом последовало несколько компаний, кроме Harmonic (в частности, Avid и Amberfin), но не было обнаружено сообществом открытого исходного кода. IIRC, некоторые версии ffmpeg и / или vlc могут читать их (несмотря на то, что они официально не поддерживают метаданные), поскольку они проверяют саму сущность.

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