gpt4 book ai didi

javascript - 多个 OfflineAudioContext 崩溃浏览器

转载 作者:行者123 更新时间:2023-11-30 12:34:30 34 4
gpt4 key购买 nike

我有大约 60 个音频文件(每个约 3 分钟)。我遍历这个数组——为每个项目创建一个 OfflineAudioContext,然后像这样进行一些过滤和处理:

var request = new XMLHttpRequest();
request.open('GET', audioFile.source, true);
request.responseType = "arraybuffer";

request.onload = function(){

context.decodeAudioData(request.response, function(buffer) {

audioFileBuffer = buffer;

offlineContext = new OfflineAudioContext(1, buffer.length, buffer.sampleRate);

//do some processing

//do some checks

}

}

即使没有任何处理或“检查”,这也会导致浏览器在大约 30 标记处崩溃。我已经尝试过缓慢地浏览数组(每个项目的按钮点击)但浏览器仍然会在这个阈值附近崩溃。

处理和检查完成后,offlineContext 和用于创建它的任何东西都不再需要 - 这是否仍在某处占用内存并导致浏览器崩溃?

编辑:更改代码以测试更具体的区域,看起来离线音频上下文只会使 chrome 崩溃,以下测试将在 opera、ff 和 safari 中完成所有 1000 次运行,但在 chrome 中会在大约 170 次时崩溃。

for(i=0; i<1000; i++){
var off = new webkitOfflineAudioContext(1, 1764000, 44100);
console.log(i);
}

Chrome 报错:“Uncaught NotSupportedError: Failed to construct 'OfflineAudioContext': OfflineAudioContext(1, 1764000, 44100)” 然后刷新页面会崩溃

最佳答案

没有看到所有周围的代码,我无法判断。您能否删除 decodeAudioData 调用并仅创建 30 多个给定长度的 OfflineAudioContexts 并查看它是否有相同的问题? (即不加载缓冲区)。

关于javascript - 多个 OfflineAudioContext 崩溃浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26529366/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com