Web Audio para visualizar e interactuar con formas de onda
¿Cómo escribo un programa de JavaScript para mostrar una forma de onda de un archivo de audio? Quiero usar Web Audio y Canvas.
Intenté este código:
(new window.AudioContext).decodeAudioData(audioFile, function (data) {
var channel = data.getChannelData(0);
for (var i = 0; i < channel; i++) {
canvas.getContext('2d').fillRect(i, 1, 40 - channel[i], 40);
}
});
Pero el resultado está lejos de lo que quiero (es decir, la imagen no es uniforme ya que estoy dibujando con rectángulos). Quiero que se vea suave como esta imagen:
¿Alguna sugerencia sobre cómo implementar la forma de onda?