Я не пробував цей метод останнім часом, але не розумію, чому він все ще не працює. Я вважаю, що ви можете просто cat
.mp4
файли разом, якщо не хочете робити нічого, крім їх об'єднання.
1. Використання кішки
$ cat file1.mp4 file2.mp4 > file3.mp4
$ ffmpeg -i file3.mp4 -qscale:v 2 output.avi
Я все ще використовую ffmpeg
весь час, він теж може об'єднати файли.
2. Використання ffmpeg
Складіть список файлів для об'єднання
$ cat inputs.txt
file sample_mpeg4.mp4
file sample_mpeg4.mp4
з'єднати
$ 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
Інші методи висвітлюються у вікі FFmpeg: Як об'єднати (об'єднати, об'єднати) медіа-файли .
ПРИМІТКА. Здається, Ubuntu не підтримує concat
формат. Ви повинні використовувати протокол concat. Крім того, він має параметри кодека потоку. Таким чином, використовуючи протокол concat, отримуємо наступне:
$ 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
Ubuntu FFmpeg варіанти описані тут .