如何使用 ffmpeg amerge 过滤器混合两个音频文件

如何使用 ffmpeg amerge 过滤器混合两个音频文件

我有两个音频文件,我想用音量和延迟过滤器将它们合并为一个。我需要在一个音频流中插入延迟,还要更改音量。我对选项的理解有问题map...

ffmpeg -i one.mp3 -i two.mp3 -shortest -filter_complex \
"[0:a]volume=0.4[a0]; \
 [1:a]volume=5.0[a1]; \
 [0:a]adelay=10000[0:a]; \
 [0:a][1:a]amerge=inputs=2[out]" \
 #wrong 
 -map [a0] -map [a1] -map ["out"] -ac 2 -c:a libfdk_aac output.m4a

如何正确地做到这一点?

答案1

假设你打算将整个第一个输入延迟 10000 毫秒,

ffmpeg -i one.mp3 -i two.mp3 -shortest -filter_complex \
"[0:a]adelay=10000|10000,volume=0.4[a0]; \
 [1:a]volume=5.0[a1]; \
 [a0][a1]amix=inputs=2[out]" \
 -map "[out]" -ac 2 -c:a libfdk_aac output.m4a

(请记住不要在行尾斜杠后包含任何空格。)

相关内容