【发布时间】:2013-09-17 14:41:23
【问题描述】:
我正在尝试获取一些有关麦克风数据的实时数据。所以我将一个 ScriptProcessorNode 连接到我的现场音频的输出,如下所示(coffeescript):
audioSource = navigator.getUserMedia({audio:true},(stream)->
source = context.createMediaStreamSource(stream)
analyser = context.createScriptProcessor(1024,1,1)
source.connect(analyser)
analyser.onaudioprocess = (e)->
\\Processing Takes Place here
然而,永远不会调用 onaudioprocess 函数。我需要做什么才能让它运行?
【问题讨论】:
-
你没有说你是否得到了 getUserMedia 回调,如果音频输入在其他地方工作......你有一个现场例子可以调试吗?
-
如果我添加
source.connect(context.destination),我可以听到我的音频循环返回,所以输入正常。 -
您确实应该将简化的测试用例发布到 JSFiddle。我怀疑还有更多的事情发生。您将
getUserMedia的返回值(顺便说一句,未定义)分配给变量的事实对我来说似乎是一个危险信号。如果没有完整的代码示例,任何人都无法提供太多帮助。 -
getUserMedia 在成功函数之后有一个错误函数,你应该在那里添加一个。您需要为页面提供服务(不仅仅是来自本地),getUserMedia 才能正常工作。
标签: javascript html coffeescript web-audio-api getusermedia