Experimentos con la Web Audio API de JavaScript

La Web Audio API es una interfaz que nos permite generar y modificar flujos de audio. Vamos, crear sonido con JavaScript desde el navegador (o incluso música si eres un virtuoso).

Esta tecnología lleva bastante tiempo disponible (el primer borrador de la W3C data de 2011), y desde 2014 su soporte está incluído en la mayoría de navegadores web. Varias librerías JavaScript demuestran el potencial de esta API, tales como Tone.js o howler.js, y hay web apps que hacen un uso impresionante del sonido sintetizado: véase Plink o Euphony.

Para empezar a trabajar con la Web Audio API hay primero que entender como funciona: toda operación para manipular sonido se realiza dentro de un contexto sonido, el cual está diseñado como un sistema de nodos interconectados que transforman uno o varios flujos de sonido. Desde un nodo origen se conectan cualquier número de nodos de audio que procesan el flujo de audio hasta que finalmente se conecta a un nodo de destino. El flujo de audio pasa por todos estos nodos donde es procesado, hasta terminar en el nodo de destino que puede representar la salida por los altavoces o que se guarde en un archivo. Este conjunto de nodos enlazados se conoce como audio routing graph.

Sigue leyendo Experimentos con la Web Audio API de JavaScript