如何通过编程在音频文件中插入静音?

Eln*_*yev 2 audio

我有不同的音频文件,这些文件长达一小时,我想在所有这些文件中插入具有相同预定义位置和长度的静音。有没有什么软件可以完成这项工作?否则我应该单独编辑音频文件,这将花费很多时间。

Aks*_*elA 5

如果“插入静音”是指用静音填充文件,从而改变曲目的持续时间,我会使用 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
Run Code Online (Sandbox Code Playgroud)

如果“插入静音”是指将文件的一部分静音,从而保持持续时间相同,我会使用 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
Run Code Online (Sandbox Code Playgroud)

要批处理文件,请移动到包含要处理的文件的文件夹(假设为 WAV)并运行

files="*.wav"
for f in $files
do
  sox "$f" "${f%.*}-pad.wav" pad 5@2
done
Run Code Online (Sandbox Code Playgroud)

或者

files="*.wav"
for f in $files
do
  ffmpeg -i "$f" -af "volume=enable='between(t,2,7)':volume=0" "${f%.*}-mute.wav"
done
Run Code Online (Sandbox Code Playgroud)