Как объединить разделы видео с помощью avconv?

Я догадался, что вы можете отрезать раздел с видео с помощью avconv с такой командой (разрезы с 1: 00-3: 00):

avconv -ss 00:01:00 -i "input.avi" -t 00:02:00 -c:v libx264 -crf 23 "output.mp4" 

Но как бы я разрезал две (или более) секции из видео и объединил их в одно видео? Например, принимая 1: 00-3: 00, как указано выше, плюс 8: 00-10: 00, делая окончательный 4-минутный видеоролик.

Наверное, я могу сделать их отдельно, а затем конкатенировать их, но есть ли более простой способ?

Я считаю, что вам придется вырезать отдельные куски, а затем объединить их. Не используйте для этого cat , так как временные коды будут повсюду.

Если фрагменты видео являются mp4 , используйте mp4box (из пакета gpac ) для конкатенации:

 mp4box -cat vid1.mp4 -cat vid2.mp4 ... -cat vidN.mp4 -new vid1-N.mp4 

ffmpeg уже есть опция, называемая concatenate . Он работает с большинством форматов, а не только для файлов mpg .

Инструкции можно найти в [ https://trac.ffmpeg.org/wiki/Concatenate%5D

Для объединения видео используйте:

 cat video1 video2 > video3 

Нажмите здесь для дополнительной информации.

Если вы хотите использовать комбинированное видео на веб-сайте, вы можете попробовать новую технологию под названием popcorn.js. Вы должны увидеть это видео, чтобы понять, как объединить несколько видео без какого-либо программного обеспечения и запустить любое видео с требуемых секунд. Это очень интересно.

Для всего процесса резки и комбинирования видео, возможно, вам нужен сценарий, подобный этому:

 #! /bin/bash folder="/home/user/path-to-folder" input="input.avi" out1="1.mp4" out2="2.mp4" combine="3.mp4" cd $folder avconv -ss 00:01:00 -t 00:02:00 -i $input -c:v libx264 -crf 23 $out1 avconv -ss 00:08:00 -t 00:10:00 -i $input -c:v libx264 -crf 23 $out2 # add as many lines as you like cat $out1 $out2 > $combine 

Вам нужно изменить имена переменных в начале сценария.

Также вы можете попробовать MENCODER для присоединения к видео:

 mencoder -oac copy -ovc copy -idx -o output.avi video1.avi video2.avi video3.avi