Перед тем как произвести с видеофрагментом какие нибудь манипуляции, необходимо совершенно очевидно знать некие исходные параметры этого самого видеофрагмента. Это собственно может быть аспект ратио (AR), длительность, контейнер, аудиокодек, видеокодек. Некая простенькая функция, подкатом, поможет определить эти самые параметры.

Читать полностью

Рубрика: Programming

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

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

Итак для соединения роликов в контейнере 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

Теги: , , , ,