有很多音乐播放器,甚至 HTML5 音频播放器,但我怎样才能给它们添加均衡器呢?通过均衡器,我的意思是:图像 (OP 链接到音频可视化图片)
知道如何将它添加到音乐播放器吗?
提前致谢
好吧,也许为时已晚,但仍然可以帮助任何人。
如果您只想可视化频谱,那没什么大不了的。
首先,创建您的 AudioContext,然后从中进行分析。
如果需要,添加填充器或增益节点,然后将它们连接起来(即一个到另一个,然后另一个到最后。)。最后,连接您的音频目的地。
代码示例:
var canvas = document.querySelector('canvas'),
ctx = canvas.getContext('2d');
// here we create our chain
var audio = document.querySelector('audio'),
audioContext = new AudioContext(),
source = audioContext.createMediaElementSource(audio),
analyser = audioContext.createAnalyser();
source.connect(analyser);
analyser.connect(audioContext.destination);
setInterval(function(){
var freqData = new Uint8Array(analyser.frequencyBinCount);
analyser.getByteFrequencyData(freqData);
ctx.clearRect(0, 0, width, height);
for (var i = 0; i < freqData.length; i++ ) {
var magnitude = freqData[i];
ctx.fillRect(i*1.5, height, 1, -magnitude * 2);
}
}, 33);
像这样的东西。尽管您应该意识到此 API 的快速变化(这就是为什么很多网络音频 API 示例无法正常工作的原因)。
我用均衡器创建了简单的音乐播放器,你可以在这里查看。你必须先搜索一些东西(即使是空行也可以),然后开始播放音乐——画布在底部。
Web Audio API是一个非常有用的javascript 工具,以下网站显示了如何使用此 API 可视化音频的示例:
Now it is partly supported by browsers. You can use Web Audio API for google chrome and new safari and Audio Data API for Firefox.
顺便说一句,这里有一些执行视觉均衡器的示例代码:http: //updates.html5rocks.com/2012/02/HTML5-audio-and-the-Web-Audio-API-are-BFFs。