使用ffmpeg将音频文件的指定部分静音

kim*_*tyl 15 audio ffmpeg

我有一个JSON文件,其中包含我想在给定音频文件中静音的区域.如何处理音频文件以使列出的部分之间的文件静音?

aer*_*tal 30

以下命令将两个部分静音:5-10秒和15-20秒之间:

ffmpeg -i video.mp4 -af "volume=enable='between(t,5,10)':volume=0, volume=enable='between(t,15,20)':volume=0" ...
Run Code Online (Sandbox Code Playgroud)

  • `-af`是音频过滤器.它的工作原理是指定在指定时间启用/禁用的多个卷过滤器.`volume = enable ='between(t,5,10)':volume = 0`表示使用在5到10秒之间启用的卷过滤器,并将卷设置为0. (5认同)
  • 如果您希望它运行得更快,请在命令中添加“-vcodec copy”,这样视频就不会重新编码(如果您只需要编辑音频,这很好)。例如: `ffmpeg -i in.mp4 -vcodec copy -af "volume=enable=' Between(t,5,10)':volume=0,volume=enable=' Between(t,15,20)':volume =0" 输出.mp4` (3认同)
  • 请注意,“Between”输入是解析为数字的表达式。因此,要在 26:40 到 26:42 之间保持沉默,您可以执行“ Between(t,26*60+40,26*60+42)”。它还支持浮点数(例如,`' Between(t,26*60+40+0.5,26*60+42)'` )。 (3认同)