我文件夹中大约有 20 个音频文件(.wav),这是我合并这些波形文件的方法
sox *.wav output.wav
我想在每波之间添加延迟或静音。
我已尝试过pad
,但它只是在开始和结束时设置了静音output.wav
。
答案1
您需要插入静音曲目之间每条轨道都按照你指定的顺序排列,最后你会得到类似这样的结果:
sox track1.wav silence.wav track2.wav silence.wav ... output.wav
您可以手动执行此操作(如上所述),或者我们可以使用内联 for 循环来循环当前目录。类似这样的操作应该可以工作:
sox -n -r 44100 -c 2 /tmp/silence.wav trim 0.0 2
sox $(for f in *.wav; do echo -n "$f /tmp/silence.wav "; done) output.wav
沉默生成器是从这里偷来的。
答案2
产生 2 秒的(立体声)静默
sox -n -r 44100 -c 2 silence.wav trim 0.0 3.0
合并文件
sox silence.wav filetopad.mp3 silence.wav output.wav
来源http://activearchives.org/wiki/Padding_an_audio_file_with_silence_using_sox
另一个可能的解决方案
引自https://stackoverflow.com/questions/5587135/sox-merge-two-audio-files-with-a-pad
sox starts-last.mp3 -p pad 2 0 | sox - -m starts-second.mp3 -p pad 2 0 | sox - -m starts-first.mp3 combined.mp3