Добавьте низкочастотную амплитудную модуляцию к шуму

Я пытаюсь воспроизвести сценарий SoX, используя ChucK, который создает коричневый шум с небольшими колебаниями (тремоло).

Сценарий 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

Следующий скрипт ChucK, модифицированный из примера wind2.ck, создает коричневый шум желаемой частоты:

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;

Я ожидаю услышать некоторое колебание в тоне, но вместо этого, кажется, нет звука.

Как я могу добавить низкочастотную амплитудную модуляцию к коричневому шуму, который я генерировал?

0 ответов

Другие вопросы по тегам