我正在尝试使用 ChuckK 重现 SoX 脚本,该脚本会产生带有轻微振荡(颤音)的棕色噪声。
SoX脚本是:
set -u
set -e
minutes=${1:-'59'}
repeats=$(( minutes - 1 ))
center=${2:-'1786'}
wave=${3:-'0.0333333'}
noise='brown'
len='01:00'
if [ $minutes -eq 1 ] ; then
progress='--show-progress'
else
progress='--no-show-progress'
fi
echo " :: Please stand-by... sox will 'play' $noise noise for $minutes minute(s)."
play $progress -c 2 --null -t alsa synth $len ${noise}noise \
band -n $center 499 \
tremolo $wave 43 reverb 19 \
bass -11 treble -1 \
vol 14dB \
repeat $repeats
exit 0
以下从wind2.ck示例修改的 ChuckK 脚本会产生所需频率的棕色噪声:
Noise n => BiQuad f => dac;
0.99 => f.prad;
0.0333333 => f.gain;
1 => f.eqzs;
0.00 => float t;
while(true)
5::ms => now;
我无法重现 SoX 颤音选项创建的效果。
似乎我应该能够向主链添加一个正弦波,然后振荡该参数。我正在尝试FM.ck频率调制示例的变体但没有成功:
SinOsc m => Noise n => BiQuad f => dac;
20 => m.freq;
200 => m.gain;
0.99 => f.prad;
0.0333333 => f.gain;
1 => f.eqzs;
0.00 => float t;
while(true)
30 + ( Math.sin(t) + 1.0 ) * 10000.0 => m.sfreq;
t + .004 => t;
5::ms => now;
我预计会听到一些音调波动,但似乎没有发出任何声音。
如何在我生成的棕色噪声中添加低频幅度调制?