Audio 使用ffmpeg在一个音频文件中提供多个淡入淡出/淡出效果

Audio 使用ffmpeg在一个音频文件中提供多个淡入淡出/淡出效果,audio,ffmpeg,Audio,Ffmpeg,我有一些问题,添加几个淡入淡出效果到一个音频文件。当我尝试使用这样的命令时: ffmpeg -y -i /home/user/video/test/sound.mp3 -af "afade=t=in:ss=0:d=3,afade=t=out:st=7:d=3,afade=t=in:st=10:d=3,afade=t=out:st=17:d=3,afade=t=in:st=20:d=3,afade=t=out:st=27:d=3" /tmp/test.mp3 然后,我的输出音频文件只应用了一次f

我有一些问题,添加几个淡入淡出效果到一个音频文件。当我尝试使用这样的命令时:

ffmpeg -y -i /home/user/video/test/sound.mp3 -af "afade=t=in:ss=0:d=3,afade=t=out:st=7:d=3,afade=t=in:st=10:d=3,afade=t=out:st=17:d=3,afade=t=in:st=20:d=3,afade=t=out:st=27:d=3" /tmp/test.mp3
然后,我的输出音频文件只应用了一次fadein和fadeout。无法应用所有后续效果。有没有可能对同一音频文件应用几种淡入淡出效果?另外,此命令中的ss和st参数之间有什么区别?

请看这里:

完整命令:

ffmpeg -i movie.wav -filter volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame modified-movie.wav

适用于我的ffmpeg 2.5.2

我正在使用,两个都持续3秒

ffmpeg -i audio.mp3 -af 'afade=t=in:ss=0:d=3,afade=t=out:st=27:d=3' out.mp3

我建议升级您的ffmpeg,因为这可能是一个bug。更多信息。

问题在于,在淡出音频后,您试图在静默中淡出

解决方案是在您想要开始淡入时禁用淡出过滤器

您可以通过在特定时间内启用过滤器来实现这一点

以下示例很好地工作:

ffmpeg -i input.mp3 -af "afade=enable='between(t,0,3)':t=in:ss=0:d=3,afade=enable='between(t,7,10)':t=out:st=7:d=3,afade=enable='between(t,10,13)':t=in:st=10:d=3,afade=enable='between(t,13,16)':t=out:st=13:d=3" -t 16 output.mp3

如果我理解正确,@farw对这样的命令没有问题:一个淡入一个淡出效果被应用。但是,如果以后再添加更多的参数,它们将不再应用。您能解释参数或它们记录位置的链接吗?关于参数:使用
st
(“开始时间”)指定效果的开始时间(以秒为单位),使用
ss
(“开始样本”)在音频样本中指定相同的开始时间(通常每秒44100次,请使用
ffprobe
检查)。来源:。请注意,开始时间参数的名称为“st”,而不是“ss”正如我在答复中所说2015@BobRoss,
st
ss
是不同的参数,如for
afade
过滤器中所述。
ss
代表开始采样,
st
代表开始时间。似乎在回答中,您的意思是使用开始时间而不是开始采样,只有在应用淡入淡出时才有效在整个视频中都进行了编辑,即在应用afade的部分之间没有间隙。
ffmpeg -i input.mp3 -af "afade=enable='between(t,0,3)':t=in:ss=0:d=3,afade=enable='between(t,7,10)':t=out:st=7:d=3,afade=enable='between(t,10,13)':t=in:st=10:d=3,afade=enable='between(t,13,16)':t=out:st=13:d=3" -t 16 output.mp3