我需要用循环连接2个小音频文件,并在单个命令中添加背景音乐。
我能够将两个音频文件与背景音乐连接在一起。我上面给出的代码正在工作。
ffmpeg -i 1.mp3 -i 2.mp3 -i background.mp3
-filter_complex "[0:0][1:0]concat=n=2:v=0:a=1,volume=1dB,aformat=fltp, pan=stereo|c0=c0|c1=c0[a0];
[2]volume=0.5dB,aformat=fltp,pan=stereo|c0=c0|c1=c1[a1];[a0][a1]amix=inputs=2:duration=longest,aformat=fltp[a]"
-map "[a]" -strict -2 -y output.mp3
但我想使连接文件循环播放直至背景音乐结束。背景音乐比连接的文件长约5倍。
如果有人可以建议一个命令解决方案。
我知道amovie标记,但不幸的是,在这里无法使用它,因为据我所知,amovie要求使用串联文件无法实现的文件名。
谁能帮我实现我的目标!
谢谢
最佳答案
使用concat多路分配器。
创建一个文本文件
file 1.mp3
file 2.mp3
然后,
ffmpeg -f concat -stream_loop -1 -i list.txt -i background.mp3
-filter_complex "[0]volume=1dB,aformat=fltp,pan=stereo|c0=c0|c1=c0[a0];
[1]volume=0.5dB,aformat=fltp,pan=stereo|c0=c0|c1=c1[a1];
[a0][a1]amix=inputs=2:duration=shortest,aformat=fltp[a]"
-map "[a]" -strict -2 -y output.mp3
1.mp3和2.mp3应该具有相同的属性-采样率,通道布局..etc
关于ffmpeg - concat 2迷你音频文件并循环播放并添加背景音乐,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64302127/