Audio 如何通过编程将静音插入音频文件?

Audio 如何通过编程将静音插入音频文件?,audio,Audio,我有一个小时长的不同音频文件,我想在所有这些文件中插入具有相同预定义位置和长度的静音。是否有任何软件能够完成这项工作?否则,我应该单独编辑音频文件,这将花费大量时间。我建议使用Audacity。它是免费的,而且有很棒的。下面是一个关于使用Audacity的“链”功能编辑多个文件的示例。如果“插入静默”的意思是用静默填充文件,从而更改曲目的持续时间,我会使用SoX: # example file sox -n -r 44100 -b 16 before.wav synth 20 brownnois

我有一个小时长的不同音频文件,我想在所有这些文件中插入具有相同预定义位置和长度的静音。是否有任何软件能够完成这项工作?否则,我应该单独编辑音频文件,这将花费大量时间。

我建议使用Audacity。它是免费的,而且有很棒的。下面是一个关于使用Audacity的“链”功能编辑多个文件的示例。

如果“插入静默”的意思是用静默填充文件,从而更改曲目的持续时间,我会使用SoX:

# example file
sox -n -r 44100 -b 16 before.wav synth 20 brownnoise

# pads with 5 seconds of silence at the 2 seconds mark    
sox before.wav after-pad.wav pad 5@2
如果“插入静音”的意思是使文件的某个部分静音,从而使持续时间保持不变,我将使用FFmpeg:

# example file
ffmpeg -f lavfi -i "anoisesrc=d=20:c=brown:r=44100:a=0.5" before.wav

# sets volume to zero between the 2 and 5 second marks
ffmpeg -i before.wav -af "volume=enable='between(t,2,5)':volume=0" after-mute.wav
要批处理文件,请移动到包含要处理的文件的文件夹(假定为WAV)并运行

files="*.wav"
for f in $files
do
  sox "$f" "${f%.*}-pad.wav" pad 5@2
done


杰出的我一直在寻找这种软件。谢谢我已经搜索了Audacity,但找不到此函数。不管怎么说,阿克塞拉的回答对我的问题来说是个不错的解决方案。
files="*.wav"
for f in $files
do
  ffmpeg -i "$f" -af "volume=enable='between(t,2,7)':volume=0" "${f%.*}-mute.wav"
done