我想将2个音频文件混合在一起 - 一个文件长度为2分钟,另一个文件长度为10秒.我希望两个文件混合,这样两种声音仍然可以听到.我希望这个10秒的剪辑准确地在30秒内进入10秒,所以它将以40秒结束.
我知道如何使用ffmpeg将2个音频文件混合在一起
ffmpeg -i input.mp3 -i input2.mp3 -filter_complex amerge -c:a libmp3lame -q:a 4 output.mp3
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何在特定时间开始这10秒钟的声音.
Grb*_*e1l 11
发布这个我已经找到了解决这个问题的方法 - 我想分享给其他人使用,因为我花了很多时间寻找这个.
创建一个比最长剪辑长的空白音频文件.
ffmpeg -f lavfi -i anullsrc=r=44100:cl=mono -t <seconds> -q:a 9 -acodec libmp3lame <blank audio>
Run Code Online (Sandbox Code Playgroud)
从这里你需要在你想要的空白音频文件时添加10秒的剪辑.
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>
Run Code Online (Sandbox Code Playgroud)
从这里开始,将这个现在最长的剪辑覆盖到原始的较长剪辑
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>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2563 次 |
| 最近记录: |