如何使用Web Audio API触发音频信号?

时间:2015-06-20 21:45:43

标签: javascript audio web-audio

我正在尝试使用网络音频API构建模块化合成器。我无法弄清楚的主要问题是“门”,或者换句话说,如何让音频信号触发js功能或事件。

例如,假设我有一个低频方波,并且我希望每次方波振幅超过某个值时触发一个函数。创造这种倾听者的最佳流程是什么?

1 个答案:

答案 0 :(得分:2)

Web Audio中没有普通的回调。唯一的"听众"你可以创建一个使用ScriptProcessorNode的人。

连接要查找方波幅度的节点。定义scriptNode.onaudioprocess功能,每次通过您构建的音频网络时都会调用它。

然后,您可以使用audioProcessingEvent.inputBufferinputDataMic = inputBuffer.getChannelData(0)获取输入(假设您自己可以访问导致调用回调的事件)。

这些调用可以让您接收到的实际数据值。您必须在每个音频帧中查找方波。您可能会发现一个分析器节点有助于识别方波中频率附近有功率的帧。