Spesso può essere utile attaccare uno di seguito all’altro degli spezzoni di video, senza bisogno di aggiungere transizioni, dissolvenze o altro. In questo caso si può usare il comando ffmpeg, elencando in un file di testo i nomi dei file da concatenare:
ffmpeg -f concat -i lista -c copy output.mp4
io metto i nomi dei file in un file di testo chiamato lista, in cui sono riportati, uno per riga, i file da unire, ad esempio file1, file2 e file3. I nomi vanno indicati tra apici:
file 'file1.mov'
file 'file2.mov'
file 'file3.mov'
I file singoli e il file “lista” dovranno essere tutti nella stessa directory.
Il risultato finale sarà un file chiamato, nel caso dell’esempio “output.mp4”
NB: se l’elenco è molto lungo, con i seguenti comandi è possibile creare rapidamente un file lista che riporta, per esempio, tutti i file .MP4 presenti nella directory, in un file di testo pronto all’uso
ls -l *.MP4 | awk '{ print "file \047",$9,"\047" }' OFS="" >lista
Il risultato del comando ls -l *.MP4
viene inviato al comando awk, che antepone file '
e pospone '
al nome del file che trova (la posizione 9 nell’elenco dei nomi ottenuto con ls è il nome del file). OFS (Otput Field Separator) server a concatenare le varie parti senza separatori. Poichè l’apice è un carattere significativo nella sintassi di awk, per scrivere il caratte '
bisogna usare il codice \047