これは、別のトラックとミキシングしながらトラックをパディングするソリューションです。
$ sox short.ogg -p pad 6 0 | sox - -m long.ogg output.ogg
このコマンドを使用して複数のトラックをミキシングするにはどうすればよいですか?
例えば
audio1.wav(パッドなし)audio2.wav(2sパッド)audio3.wav(2sパッド)audio4.wav(3sパッド)
これは、別のトラックとミキシングしながらトラックをパディングするソリューションです。
$ sox short.ogg -p pad 6 0 | sox - -m long.ogg output.ogg
このコマンドを使用して複数のトラックをミキシングするにはどうすればよいですか?
例えば
audio1.wav(パッドなし)audio2.wav(2sパッド)audio3.wav(2sパッド)audio4.wav(3sパッド)
pad 6 0
6を追加し、0秒の無音を追加するので、無音を追加したいだけだと思います。
これは、ループを使用して行うことができますwhile
。たとえば、bash
次のようになります。
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
処理が完了するまで、ファイルを非圧縮にしておくことをお勧めします。
ミキシングするときはクリッピングに注意してください。これを回避する1つの方法は、-6dB
両方の信号にゲインを適用し、後で正規化することです。
sox $fname -p pad $len 0 gain -6 | sox -m -p "| sox long.wav -p gain -6" output.wav gain -n