Где находится документация по кодеку Mjpeg, используемому в mencoder, VLC и FFMpeg?

Mencoder имеет прекрасную возможность конвертировать файл mjpeg в файл avi с кодеком MJPG, который воспроизводится в VLC.

Командная строка для этого:

mencoder имя файла.mjpeg -oac копировать -ovc копировать -o outputfile.avi -скорость 0.3

где 0,3 — это отношение желаемой частоты кадров воспроизведения к 25 кадрам в секунду по умолчанию. Все это делает копию файла mjpeg, помещает заголовок avi сверху и в конце, что кажется индексом позиций кадров в файле.

Я хочу воспроизвести это в своем собственном коде, но нигде не могу найти документацию. Каков точный формат индексного раздела? По какой-то причине в заголовке есть дополнительные байты-заполнители - о чем это?

Кто-нибудь знает, где я могу найти документацию? Этот кодек встроен как в mencoder, так и в vlc.


person Sugrue    schedule 16.08.2011    source источник
comment
Сделайте заголовок вопросом. Если вы программист, то должны знать, что источником является документация: videolan.org/developers   -  person ceving    schedule 16.08.2011
comment
Я думаю, что это то же самое, что и кодек ffmpeg для mjpg, поскольку одна из моих систем здесь, в которой есть ffmpeg, успешно воспроизводит файлы в проигрывателе Windows Media, а система без него не воспроизводится.   -  person Sugrue    schedule 16.08.2011


Ответы (1)


После долгой работы, изучения и возни с HxD и RiffPad я, наконец, понял это. Чтобы объяснить все это, потребуется длинная запись в блоге, но на самом деле кодека «MJPG» там не существует — mjpg просто использует несколько трюков и необычные части стандарта avi для создания индексированного файла.

Ключевым моментом является размещение «00dc» и тега длины Int32 в 8 байтах перед каждым открытым тегом Jpeg. Если вы хотите, чтобы avi был произвольным доступом, вам нужен индекс в конце, который указывает на каждую из позиций тега «00dc».

VLC будет воспроизводить это изначально. Если у вас установлен ffmpeg, проигрыватель Windows Media использует его для декодирования этих типов файлов mjpg.

person Sugrue    schedule 18.08.2011