Если я пытаюсь объединить два видеофайла mp4 с помощью -filter_complex
с помощью команды:
ffmpeg -i a.mp4 -i b.mp4 -filter_complex \
"[0:1] [0:0] [1:1] [1:0] concat=n=2:v=1:a=1 [v] [a]" \
-map [v] -map [a] -y testfull.mp4
Это работает нормально, но если я попробую подобное с аудио файлами, такими как:
ffmpeg -i a.mp3 -i b.mp3 -filter_complex \
"[0:1] [0:0] [1:1] [1:0] concat=n=2:a=1 [a]" \
-map [a] -y testfull.mp3
Ошибка возникает:
Input #1, mp3, from 'b.mp3': Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isomavc1mp42
creation_time : 2010-12-13 21:15:11
encoder : Lavf53.4.0 Duration: 00:02:01.61, start: 0.000000, bitrate: 64 kb/s
Stream #1:0: Audio: mp3, 8000 Hz, stereo, s16p, 64 kb/s
Stream specifier ':1' in filtergraph description [0:1] [0:0] [1:1] [1:0] concat= n=2:a=1 [a] matches no streams.
Если я изменяю аргумент -filter_complex
и запускаю команду как:
ffmpeg -i a.mp3 -i b.mp3 -filter_complex \
"concat=n=2:a=1 [a]" -map [a] -y testfull.mp3
Возникает следующая ошибка
Input #1, mp3, from 'b.mp3': Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isomavc1mp42
creation_time : 2010-12-13 21:15:11
encoder : Lavf53.4.0 Duration: 00:02:01.61, start: 0.000000, bitrate: 64 kb/s
Stream #1:0: Audio: mp3, 8000 Hz, stereo, s16p, 64 kb/s
Cannot find a matching stream for unlabeled input pad 0 on filter Parsed_concat_ 0
Может кто-нибудь помочь мне, как я могу объединить два аудио-файла с помощью последних сборок ffmpeg
возможно, с -filter_complex
.
Обновление: хорошо, решил мою проблему с помощью этой команды ffmpeg
:
ffmpeg -i "concat:a.mp3|b.mp3" -c copy output.mp3