silenceremove

silenceremove

如果我有一个 .wav 格式的音频文件,我可以sox按如下方式运行它:
sox in.wav out6.wav silence -l 1 0.1 1% -1 2.0 1%这个命令对于消除静音非常有效。

我可以在 ffmpeg 中使用类似的命令吗?

目前,我正在通过以下方式从 .mp4 转换为 .wav
ffmpeg -i input.mp4 output.wav

然后执行 sox 沉默删除命令。

我想要做的是,不缩短音频,而是将音频中的静音区域保留为空白部分/暂停。

答案1

silenceremove

该过滤器丢弃低于阈值(以分贝为单位)的样本,静默期可以缩短到一定的间隔。

来自FFmpeg手动的:

以下示例显示了如何使用此过滤器来开始录制,该录制不包含开始时的延迟,这种延迟通常发生在按下录制按钮和表演开始之间:

ffmpeg in.mp4 -filter:a "silenceremove=start_periods=1:start_duration=5:start_threshold=0.02" out.mp4

相关内容