我将麦克风输入节点 getUserMedia({audio:true})
连接到 createScriptProcessor
节点和 onaudioprocess
事件回调停止发生,我不明白为什么。
我打印出每个回调的事件。中间的一个看起来像这样:
AudioProcessingEvent {outputBuffer: AudioBuffer, inputBuffer: AudioBuffer, playbackTime: 5.479909297052155, clipboardData: undefined, path: NodeList[0]…}
bubbles: true
cancelBubble: false
cancelable: false
clipboardData: undefined
currentTarget: ScriptProcessorNode
defaultPrevented: false
eventPhase: 0
inputBuffer: AudioBuffer
outputBuffer: AudioBuffer
path: NodeList[0]
playbackTime: 5.479909297052155
returnValue: true
srcElement: ScriptProcessorNode
target: ScriptProcessorNode
timeStamp: 1417920765179
type: "audioprocess"
__proto__: AudioProcessingEvent
最后一个看起来像这样:
AudioProcessingEvent {outputBuffer: AudioBuffer, inputBuffer: AudioBuffer, playbackTime: 5.944308390022676, clipboardData: undefined, path: NodeList[0]…}
bubbles: true
cancelBubble: false
cancelable: false
clipboardData: undefined
currentTarget: ScriptProcessorNode
defaultPrevented: false
eventPhase: 0
inputBuffer: AudioBuffer
outputBuffer: AudioBuffer
path: NodeList[0]
playbackTime: 5.944308390022676
returnValue: true
srcElement: ScriptProcessorNode
target: ScriptProcessorNode
timeStamp: 1417920765643
type: "audioprocess"
__proto__: AudioProcessingEvent
在我看来没有什么不同。我本来希望该事件包含某种通知。或者至少在控制台中出现错误。
有没有办法绑定(bind)到某种错误事件或其他东西?我不知道如何进一步解决这个问题。有时它会在一毫秒后停止。有时几分钟后。我似乎无法确定问题是什么。
最佳答案
这听起来像是垃圾收集。能指一下代码吗?
关于javascript - AudioContext createScriptProcessor 随机停止,没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27339107/