我试图在Edge浏览器中使用WebAudio API的encodeAudioData()方法解码作品文件,但出现此错误WEBAUDIO17014:解码错误:提供的流已损坏。 边缘版本详细信息: 微软Edge 42.17134.1.0 微软EdgeHTML 17.17134
我正在做与以下示例非常相似的操作:这在Edge浏览器中也给出了相同的错误。 https://mdn.github.io/webaudio-examples/decode-audio-data/
请注意,这在其他浏览器中也可以正常工作。
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
function getData() {
source = audioCtx.createBufferSource();
request = new XMLHttpRequest();
request.open('GET', 'https://fetch-streamaudio.anthum.com/audio/opus/decode- test-64kbps.opus', true);
request.responseType = 'arraybuffer';
request.onload = function() {
var audioData = request.response;
audioCtx.decodeAudioData(audioData, function(buffer) {
},
function(e){"Error with decoding audio data" + e.error});
}
request.send();
}
它应该解码opus音频数组缓冲区。
答案 0 :(得分:0)
Ogg容器中的边缘does not yet support作品,而使用MSE的WebM容器中的since 2016 it has supported作品。 Chrome和Firefox在WebM中也支持Opus,因此您可能需要切换到WebM容器才能与所有三种浏览器一起使用。