这可能是一个愚蠢的问题,因为我是Tone.js的新手,但是有可能试图降低低通滤波器的频率值吗? 我试图进行实时交互式工作,需要将低通量提升到一个值(x)。 我尝试了一些不同的东西但似乎都没有用。像synth.volume.rampTo(x,t)这样的东西很好用,但我似乎无法使它适用于Filter组件。
例如,我试图传递一个Signal作为频率值,因为Signal类有像.rampTo这样的方法。它是否正确?我该怎么做?var lowPassFreq = new Tone.Signal(300, Tone.Frequency);
var lowPass = new Tone.Filter(
{
"type":"lowpass",
"frequency":lowPassFreq.value
}
).toMaster();
var noiseSynth = new Tone.NoiseSynth().connect(lowPass);
this.playSound = function (x){
noiseSynth.triggerAttack("4n");
lowPassFreq.rampTo(x, 0.05)
lowPass.frequency.value = lowPassFreq.value
}
答案 0 :(得分:0)
不完全确定您尝试做什么,但您可以使用lowPass.frequency.linearRampToValueAtTime(value, time)
和value
的适当值尝试time
。这会将滤波器的频率(截止频率)从其当前值线性变为新的value
。