【发布时间】:2012-05-09 01:40:16
【问题描述】:
我来到这里希望你们可爱的人在这里可以帮助我解决我遇到的一些问题。
具体来说,每次我尝试使用 webkitAudioContext 的 decodeAudioData 方法时,它总是会触发带有 null 错误的错误处理程序。这是我目前正在使用的代码:
var soundArray;
var context = new webkitAudioContext();
function loadSound(soundName) {
var request = new XMLHttpRequest();
request.open('GET',soundName);
request.responseType = 'arraybuffer';
request.onload = function() {
context.decodeAudioData(this.response, function(buf) {
sounds[soundName] = buf;
},function(err) { console.log("err(decodeAudioData): "+err); });
}
request.send();
}
此时,它会不断将错误消息记录到控制台,说err(decodeAudioData) = null,主要是因为我决定记录它的方式。
无论如何,知道为什么会这样吗?
我正在使用 Chrome Canary v20.0.1121.0 来尝试让某些东西正常工作。但是,显然,它不起作用!那么,知道我能做什么吗?如果需要任何新信息,请告诉我,我会根据需要进行更新。
【问题讨论】:
-
它是否适用于其他音频源?根据我的经验,并非所有音频文件都可以为 API 解码。你可能想爱一个 new.crbug.com
-
我用过OGG、MP3和WAV,都无济于事。我读过一次提交的 chrome 错误,它可能是 chrome 不喜欢播放只有一两秒长的音频文件,但我有第二个项目正在运行,以使用拖放构建基于 Web 的音频播放器,并且完整3-4 分钟的歌曲也失败了。我会看看我能做些什么来提交一个错误报告,谢谢你的建议!
-
此问题已修复,请忽略此问题
-
您能否提供有关如何修复 Scott 的详细信息?
标签: javascript html google-chrome webkit web-audio-api