我的目标是使用SoX获取包含非噪音的音频文件部分。我已经阅读了SoX的效果,并找到了我认为有用的noisered
和silence
。问题是我没有找到可以根据其中的静音暂停修剪音频文件的命令。
答案 0 :(得分:6)
我相信你所寻找的东西可以用sox silence
命令来实现。它允许您在给定阈值,持续时间高于等等的情况下从音频的任何部分移除静音。
有关详细手册,请参阅sox webpage,沉默部分写得很好。
如果你想在沉默中分裂而不是“挤压”所有东西,那么你可能想尝试类似的东西:
sox input.wav slice.wav silence 1 1.0 2% 1 3.0 2% : newfile : restart
参数是:
input.wav
- 输入音频文件
slice.wav
- 输出音频文件名(数字将附加到每个切片)
silence
- 效果名称
1 1.0 2%
- above_periods,duration,threshold
1 3.0 2%
- below_periods,duration,threshold