如何让字节频率数据在iOS上运行

时间:2016-07-20 16:04:43

标签: javascript ios audio mobile

我有一个非常烦人的iOS错误(并不令人惊讶)。我尝试制作一个非常基本的音频分析器脚本,以便在播放时获取音频的频率/级别。

适用于桌面,Chrome,Safari。在移动iOS上,音频有效,但频率数据返回0 ...

Codepen:http://codepen.io/LuckyDe/pen/kXZqNm?editors=1011

function playAudio() {
console.log('play audio')
audio = document.getElementById("audioPiece");

context = new AudioContext()
analyser = context.createAnalyser();

source = context.createMediaElementSource(audio);
source.connect(analyser);
source.connect(context.destination);
analyser.connect(context.destination);
audio.play();
var frequencyData = new Uint8Array(analyser.frequencyBinCount);

function draw() {
  if (context.currentTime < audio.duration) {
    drawVisual = requestAnimationFrame(draw);
  }
  analyser.getByteFrequencyData(frequencyData);
  var getData = (frequencyData[8] * 100) / 256 - 30;
   console.log(frequencyData[8]);
  playButton.innerHTML = "draw" + getData;
}
draw();

}

我无法让音频在codepen上跨越原点工作,因此直接链接http://www.luckyde.com/js/AudioFrequency/test1/index.html

是否有任何解决方法/方法可以解决这个问题,以便它可以在平板电脑/ iPhone上运行?非常感谢

0 个答案:

没有答案