2012-05-10 52 views
0

這裏是一個解決方案,以填補一個軌道,同時與另一個軌道混合。sox多墊同時混合

Sox : merge two audio files with a pad

$ sox short.ogg -p pad 6 0 | sox - -m long.ogg output.ogg 

如何使用這個命令混合多個軌道?

例如

audio1.wav(無墊) audio2.wav(2S墊) audio3.wav(2S墊) audio4.wav(3S墊)

回答

0

pad 6 0預規劃6和追加0秒的沉默,所以我假設你只想預先沉默。

您可以bashwhile循環做到這一點,例如:

cat <<EOF > infile 
audio1.wav 0 
audio2.wav 2 
audio3.wav 2 
audio4.wav 4 
EOF 

while read fname len; do 
    sox $fname -p pad $len 0 | sox -m -p long.wav output.wav 
done < infile 

我會建議保持文件解壓縮,直到你做了處理。

小心剪裁混合,以避免它是-6dB增益同時適用於信號和正常化後一種方式,例如:

sox $fname -p pad $len 0 gain -6 | sox -m -p "| sox long.wav -p gain -6" output.wav gain -n