javascript - 音频信号如何触发 Web Audio API 的功能?

标签 javascript audio web-audio-api

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

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

最佳答案

网络音频中没有普通的回调。您可以创建的唯一“监听器”是使用 ScriptProcessorNode 的监听器。

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

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

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

关于javascript - 音频信号如何触发 Web Audio API 的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30959196/

相关文章:

javascript - 从 url 中提取音频片段并使用纯 Web Audio API 播放

javascript - 使用 Web Audio API 获取音频标记/提示点

javascript - WebAudio API 和 cordova 在退出时仍然播放音频

javascript - DailyCodingProblem,在数组中找到与给定值匹配的对

javascript - Node : Fully executing websocket responses sequentially with async calls

python - 使用 Python 标准库的跨平台声音

c# - Xamarin.Forms App MediaRecorder无法在Jiayu S3上运行

javascript - 使用 javascript 获取选择的值

javascript - 如何减少 Crossfilter 组函数创建的存储桶数量?

Java - 构建包含视频/声音/图片/消息的通信器