Comment assembler des sections d'une video avec avconv?

J'ai compris jusqu'à présent que vous pouvez couper une section d'une video avec avconv avec une command comme celle-ci (coupe de 1: 00-3: 00):

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

Mais comment couper deux (ou plus) sections de la video et les combiner en une seule video? Par exemple, prendre de 1:00 à 3:00 comme ci-dessus, plus 8: 00-10: 00, faire une video finale de 4 minutes.

Je suppose que je peux les faire séparément puis les concaténer, mais y a-t-il un moyen plus simple?

Je crois que vous devrez couper des morceaux séparés, puis les concaténer. N'utilisez pas de cat pour cela, car les timecodes seront partout.

Si les morceaux video sont mp4 , utilisez mp4box (du packageage gpac ) pour la concaténation:

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

ffmpeg déjà une option appelée concaténer . Il fonctionne avec la plupart des formats, pas seulement pour les files mpg .

Vous findez des instructions dans [ https://trac.ffmpeg.org/wiki/Concatenate%5D

Pour combiner des videos, utilisez:

 cat video1 video2 > video3 

Cliquez ici pour plus d'informations.

Si vous souhaitez utiliser la video combinée sur le site Web, vous pouvez essayer une nouvelle technologie appelée popcorn.js. Vous devriez voir cette video pour comprendre comment combiner plusieurs videos sans aucun logiciel et démarrer une video à partir des secondes désirées. C'est très intéressant.

Pour l'set du process de couper et de combiner des videos peut-être que vous avez besoin d'un script comme celui-ci:

 #! /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 

Il vous suffit de changer les noms des variables au début du script.

Vous pouvez également essayer MENCODER pour joindre des videos:

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