Оговорюсь речь пойдет о соединении нескольких видеофрагментов закодированных одним кодеком, то есть одинаково.

Итак для соединения роликов в контейнере flv используется наш любимый mencoder:

exec(MENCODER_PATH . ‘ 1.flv 2.flv 3.flv -o out.flv -of lavf -ovc copy -oac copy’);

Для соединения роликов в контейнере mp4 используется mp4box:

exec(MP4BOX_PATH . ‘ -cat 1.mp4 -cat 2.mp4 -cat 3.mp4 out.mp4′);

Для соединения роликов в контейнере wmv также используем mencoder:

exec(MENCODER_PATH . ‘ -oac copy -ovc copy -of lavf -lavfopts format=asf 1.wmv 2.wmv -o out.wmv‘);

Рубрика: Programming

Теги: , , , , , , , ,

Не изменяя кодека, то есть без перекодирования. Делается с помощью mencoder’а.

exec(MENCODER_PATH . ” -o out.flv’ . ‘ -of lavf -lavfopts format=flv -ovc copy -oac mp3lame -srate 44100 source.mp4′);

В моем случае исходный кодек - h264.

Up. Как оказалась если перепаковывать через mencoder - в полученном flv возможны артефакты изображения, как в начале, так и в середине клипа, чего не наблюдается в исходном mp4. Лучшим вариантом вероятно будет использование ffmpeg:

exec(FFMPEG_PATH . ‘ -i out.flv -vcodec copy -acodec copy source.mp4‘);

Рубрика: Programming

Теги: , , , ,