Web Audio API,MediaElementAudioSourceNode,Safari

时间:2016-06-08 17:46:04

标签: javascript safari web-audio

我正在尝试构建基于Web Audio API的声音播放器。我有一个Safari问题,对我来说看起来像一个严重的Safari bug,所以我不知道是否可以做任何事情。

基本上我需要将mp3文件流式传输到Web Audio API图表中。这是通过$("svg").one("click", function() { if (this.id != 'main_svg') { a1 = this.id; console.log($("#" + a1).attr("width")); $('svg').unbind('click'); console.log(a1); } }); 进行的。 Safari(9.1.1)中的问题是,每次在底层createMediaElementSource元素上调用play()时,初始音频缓冲区都会被破坏,从而导致短暂的打嗝"。根据实际Web Audio图形的复杂程度,这些丢失可能持续数百毫秒。 Firefox和Chrome没有这个问题。

以下说明了问题。点击&#34;加载&#34;设置音频元素audio。等待。然后重复srcPlayStop(归零) - 您应该听到无失真的正弦音,但实际上您听说播放时的初始缓冲区已损坏。< / p>

JSFiddle:http://jsfiddle.net/4zgf33os/6/

HTML:

RTZ

CSS:

<div id="load" class="button">Load</div>
<div id="play" class="button">Play</div>
<div id="stop" class="button">Stop</div>
<div id="rtz" class="button">RTZ</div>

JavaScript的:

div.button {
  position: relative;
  display: inline;
  width: 100px;
  height: 24px;
  margin: 4px;
  padding: 4px;
  background: black;
  color: white;
  cursor: pointer;
}

0 个答案:

没有答案
相关问题