2012-06-08 3 views
2

Я новичок в обработке видео, и я пытаюсь написать программу на Python. Программа предназначена для разделения длинного видео на несколько коротких видео по метке времени.Инструмент CLI разбивает файл AVI с видео в формате JPEG

Например, у меня есть вход, video long_video.avi, который составляет 15 минут. Я хочу извлечь 2 видео, short_1_5_video.avi (1'-5 ') и short_6_10_video.avi (6'-10'). Входное видео имеет контейнер AVI и видеоформат JPEG. Это информация о видео (шоу в MediaInfo инструмент):

enter image description here

Я хочу найти CLI (интерфейс командной строки) инструмент, который я могу вызывать из Python. Я пробовал некоторые инструменты:

  • mp4box (http://www.videohelp.com/tools/mp4box):

    Но mp4box не поддерживает AVI файл. Он поддерживает только файлы MKV и MP4.

  • mkvmerge (в мкВ инструмента):

    Но mkvmerge поддерживает только файл MKV.

  • ffmgeg:

    Но это, похоже, не поддерживает раскол видео по дате («кажется», потому что я не нашел его в спецификации FFmpeg).

Я думал о преобразовании входного видео с AVI в MP4 или MKV, а затем разделив его, но время, необходимое для выполнения преобразования слишком долго. Пожалуйста, предложите мне инструмент, который может разбивать файл AVI с форматом JPEG, который можно контролировать из командной строки.

Кроме того, я также хочу найти инструмент GUI, который может это сделать.

ответ

1

Предполагая, что вы хотите разделить этот файл на 3 части: beginning -> 00:00:05 -> 00:00:10 -> end, попробуйте следующее:

mencoder -endpos 00:00:05 -oac copy -ovc copy input.avi -o part1.avi 
mencoder -ss 00:00:05 -oac copy -ovc copy input.avi -o tmp.avi 

mencoder -endpos 00:00:10 -oac copy -ovc copy tmp.avi -o part2.avi 
mencoder -ss 00:00:10 -oac copy -ovc copy tmp.avi -o part3.avi 
+0

Почему бы ему просто не использовать опции '-ss' и' -endpos', чтобы сделать это в одной строке (как показывает ссылка в моем ответе) – jedwards

+0

Спасибо квантам. Это очень полезно для меня. – tienthanhakay

1

Я считаю, что вы могли бы использовать ffmpeg (-ss в секундах или чч: мм: сс для начальной позиции и -t в секундах чч: мм: сс для длины/длительности).

mencoder (часть mplayer) тоже похоже, будет работать. Я связан не с сайтом mplayer/mencoder, а скорее с страницей с параметрами командной строки для mencoder, которые могут помочь.

Я считаю, что vlc также будет работать (--start-time <time in seconds> --stop-time <time in seconds> --sout <output file>)

+0

Спасибо за вашу информацию. Я буду использовать mencoder. – tienthanhakay

Смежные вопросы