javascript - 构造失败 'AudioContext' : number of hardware contexts reached maximum

标签 javascript web-audio-api

有没有办法在创建 AudioContext 后将其删除?

var analyzers = [];
var contexts = [];

try {
   for(var i = 0; i<20; i++) {
      contexts[i] = new AudioContext();
      analyzers[i] = contexts[i].createAnalyser();
   }
}catch(e) {
   console.log(e);
   // too many contexts created -- how do I remove them?
}

我已经尝试过这个,但它不允许我在事后创建新的上下文:analyzers.forEach(function(analyzer){analyzer.disconnect(analyzer.context.destination)})

我在 Ubuntu Linux 14.04 上使用 Chrome 36。

最佳答案

AudioContext.close() 将释放上下文的硬件,但请检查它是否仅适用于最新版本的 chrome 和 firefox。显然不适用于 IE。 检查文档: https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/close

关于javascript - 构造失败 'AudioContext' : number of hardware contexts reached maximum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25046470/

相关文章:

javascript - 在不支持它们的浏览器中查找页面上的所有 &lt;input type ="number">

javascript - 如何在不需要播放的情况下对 chrome 中的音频文件进行 FFT 分析?

javascript - 使用 Web Audio API 播放录制的音频 block

没有复制的 JavaScript 子数组?

javascript - React with Redux Axios get request error issue with laravel 5.2 api server 回复

javascript - 如何正确清理timbre.js

javascript - 网络音频 5.1(6 声道)输出

.net - HTML5 应用程序的服务器端语音识别

javascript - 禁用单选按钮检查

javascript - 如何删除完整的单词而不是javascript中的子词