使用FFmpeg在两个音频文件之间实现淡入淡出效果?

4
我有两个mp3文件,想将它们合并成一个新文件。然而,我只想使用每个文件的一部分,并且我想在两者之间创建一个交叉淡入淡出效果。
例如,我想要a.mp3的前3分钟,在5秒钟内与b.mp3交叉淡化,从b.mp3的1:20开始(即b.mp3中的第80秒)。
下面是我所需求的时间轴示意图: timeline 因此,所得到的文件总长度为3分钟05秒加上b.mp3的长度减去1分钟25秒,这样就得到了b.mp3的长度加上1分钟40秒。
我对ffmpeg的源选择、映射和过滤器语法不熟悉,无法实现我想要的结果。例如,我可以为一个mp3文件应用淡入或淡出效果,但我不知道如何使这两个文件重叠,从而产生两个音频源之间的交叉淡化效果。
为了明确起见:我正在寻找一个命令行来完成此操作,即使用独立版本的ffmpeg,我没有将ffmpeg作为应用程序库使用。
1个回答

7

使用

ffmpeg -i a.mp3 -i b.mp3
 -filter_complex
      "[0]atrim=0:185.0[a]; [1]atrim=80.0[b];
       [a][b]acrossfade=d=5.0"
 out.mp3

所有时间均以秒为单位。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接