Web Audio API - 使用增益对信号进行平方

时间:2015-07-16 15:14:12

标签: web-audio

是否可以通过创建Gain实例并将信号连接到增益输入和幅度控制参数来对信号进行平方?因为我至少在Firefox中看到了奇怪的结果。我可以看到Tone.js使用wave-shaper代替pow操作,所以也许这就是要走的路。但我很好奇,因为API说gain参数是音频速率,显然必然会有一些延迟。

2 个答案:

答案 0 :(得分:2)

这对我有用:

var c = new AudioContext();
var o = c.createOscillator();
var g = c.createGain();
g.gain.value = 0;
g.connect(c.destination);
o.connect(g);
o.connect(g.gain);
o.start();
o.stop(c.currentTime + 2);

你无法通过聆听来判断,但如果你将代码粘贴到http://hoch.github.io/canopy/,你可以看到正弦波已被平方。

答案 1 :(得分:1)

是的,它可以通过这种方式设置信号。 (我在我的声码器中使用它。)以这种方式做事应该没有延迟。