Мультиплексирование

Теперь, после того как Вы кодировали видео, скорее всего, Вы захотите мультиплексировать его с одним или несколькими аудиопотоками в такие видео контейнеры как AVI, MPEG, Matroska или NUT. На данный момент встроенная поддержка вывода аудио и видео в MEncoder есть только для форматов контейнеров MPEG и AVI. Например:

mencoder -oac copy -ovc copy -o выходной_фильм.avi \
-audiofile исходный_звук.mp2 исходное_видео.avi

Это объединит видеофайл исходное_видео.avi и аудиофайл исходный_звук.mp2 в AVI файл выходной_фильм.avi. Эта команда работает с MPEG-1 слой I, II и III (более известный как MP3) аудио, WAV, а также с некоторыми иными форматами аудио.

MEncoder обладает экспериментальной поддержкой libavformat — библиотеки из проекта FFmpeg, поддерживающей мультиплексирование и демультиплексирование множества контейнеров. Например:

mencoder -oac copy -ovc copy -o выходной_фильм.asf \
-audiofile исходный_звук.mp2 исходное_видео.avi \
-of lavf -lavfopts format=asf

Это сделает то же самое, что и предыдущий пример, но выходным контейнером будет ASF. Пожалуйста, обратите внимание, что эта поддержка весьма экспериментальна (но становится лучше c каждым днём), и будет работать только в случае компиляции MPlayer с включенной поддержкой libavformat (что означает, что в большинстве случаев бинарная версия из пакетов не будет работать).