concatenar
$ ffmpeg -f concat -i inputs.txt -c copy out.mp4
$ ll |grep -E "sample|out"
-rw-rw-r--. 1 saml saml 491860 Feb 19 23:36 out.mp4
-rw-r--r--. 1 saml saml 245779 Feb 19 23:32 sample_mpeg4.mp4
Outros métodos são abordados no wiki do FFmpeg: Como concatenar (ingressar, mesclar) arquivos de mídia .
NOTA: O Ubuntu não parece suportar o concat
formato. Você precisa usar o protocolo concat. Além disso, possui opções de codec por stream. Portanto, o uso do protocolo concat resulta da seguinte maneira:
$ ffmpeg -i input1.mp4 -vcodec copy -acodec copy \
-vbsf h264_mp4toannexb -f mpegts intermediate1.ts
$ ffmpeg -i input2.mp4 -vcodec copy -acodec copy \
-vbsf h264_mp4toannexb -f mpegts intermediate2.ts
$ ffmpeg -i "concat:intermediate1.ts|intermediate2.ts" \
-vcodec copy -acodec copy -absf aac_adtstoasc output.mp4
As opções do Ubuntu ffmpeg estão documentadas aqui .