创建后,有没有办法删除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

来自文档:“在大多数使用情况下,每个文档仅使用一个AudioContext。”

我真的想不出为什么您需要一个以上的原因。您是否遇到过导致您创建多个上下文的特定问题?

10-08 05:22