【问题标题】:How can an audio signal trigger functions with the Web Audio API?音频信号如何通过 Web Audio API 触发功能?
【发布时间】:2015-06-20 21:45:43
【问题描述】:

我正在尝试使用网络音频 api 构建模块化合成器。我不知道的主要事情是如何做“门”,或者换句话说如何让音频信号触发js函数或事件。

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

【问题讨论】:

  • 我将实现一个分析器节点并在每次调用 requestanimationframe 时进行检查。不知道这是否是最好的方法。

标签: javascript audio web-audio-api


【解决方案1】:

Web Audio 中没有普通的回调。您可以创建的唯一“侦听器”是使用ScriptProcessorNode 的侦听器。

连接要查找方波幅度的节点。定义一个scriptNode.onaudioprocess 函数,它将在每次通过您构建的音频网络时被调用。

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 2015-11-09
    • 1970-01-01
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多