我想将 2 个音频文件混合在一起 - 一个文件的长度为 2 分钟,另一个文件的长度为 10 秒。我希望两个文件混合,这样仍然可以听到两个声音。我希望这个 10 秒的剪辑恰好在 10 秒的 30 秒处出现,这样它就会在 40 秒处结束。
我知道如何使用 ffmpeg 将 2 个音频文件混合在一起
ffmpeg -i input.mp3 -i input2.mp3 -filter_complex amerge -c:a libmp3lame -q:a 4 output.mp3
但是,我不知道如何在特定时间启动这个10秒的声音。
发布此问题后,我找到了解决此问题的方法。
首先,使用以下命令创建一个比最长剪辑长的空白音频文件。
ffmpeg -f lavfi -i anullsrc=r=44100:cl=mono -t <seconds> -q:a 9 -acodec libmp3lame <blank audio>
创建空白音频文件后,在所需时间添加较短的第二个剪辑。
ffmpeg -i <blank audio> -i < audio file 2> -filter_complex "aevalsrc=0:d= <time> [s1];[s1][1:a]concat=n=2:v=0:a=1[aout]" -c:v copy -map 0:v -map [aout] <output file>
然后将第一个较长的剪辑叠加到原始剪辑上。
ffmpeg -i <output from silent and short clip> -i <original long clip> -filter_complex "amix=inputs=2:duration=longest:dropout_transition=0, volume=2" <output audio file>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)