广播+ Web音频API CORS问题



我有一个问题,我已经工作了一段时间,现在没有真正的进展。我目前正试图加载我的广播流到我的Web音频API上下文。我觉得这会违反CORS,我是对的。我通过XHR请求尝试了这两种方法,然后再次通过将音频元素加载到脚本中。它与音频元素一起工作,但在试图将其加载到脚本中时死亡。似乎我唯一的选择是尝试以某种方式将CORS标头添加到我的Shoutcast正在服务的流中。

我不知道如何做到这一点,也没有运气在网上找到资源。如果有人能给我一些建议,这将是非常感激!

var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
var soundSource, concertHallBuffer;
ajaxRequest = new XMLHttpRequest();
ajaxRequest.open('GET', 'http://127.0.0.1:8000/;stream.mp3', true);
ajaxRequest.responseType = 'arraybuffer';

ajaxRequest.onload = function() {
  var audioData = ajaxRequest.response;
  console.log(audioData);
   audioCtx.decodeAudioData(audioData, function(buffer) {
    concertHallBuffer = buffer;
    soundSource = audioCtx.createBufferSource();
    soundSource.buffer = concertHallBuffer;
    soundSource.connect(audioCtx.destination);
    soundSource.loop = true;
    soundSource.start();
  }, function(e){"Error with decoding audio data" + e.err});
}
ajaxRequest.send();

只是为了回答我自己的问题。通过在apache中设置指向我的广播流和端口的反向代理,我能够使这个工作正常。

最新更新