Code

Web Audio API: un esempio d’uso per realizzare un diapason

12 Marzo 2020 - 1 minuto di lettura

Forse non tutti sanno che… i browser odierni sono equipaggiati di strumenti sofisticati per il processing dell’audio, come Web Audio API.

Francesco Sacchi ne mostra l’utilizzo realizzando come breve esempio un diapason a 440Hz (qui l’esempio funzionante):

// creiamo il contesto audio
const audioContext = new AudioContext();

// creiamo un oscillatore che genererà il suono e lo colleghiamo all'output
var osc = audioContext.createOscillator();
osc.connect( audioContext.destination ); 

// impostiamo la frequenza per il diapason
osc.frequency.value = 440.0;

// iniziamo subito a "oscillare" e terminiamo tra 1 secondo
osc.start( 0 );
osc.stop( audioContext.currentTime + 1 ); 

L’ audio API, oltre a garantire la schedulazione precisa di suoni e sorgenti audio, fornisce molti altri strumenti sotto forma di nodi che possono essere collegati tra loro.
Tra i nodi disponibili troviamo ad esempio Gain, Delay, Panner oltre a molti altri filtri ed utilità.

Un vantaggio di avere uno strumento del genere è la possibilità di combinare le diverse API a disposizione nei modi più creativi: visualizzazione canvas, registrazione audio, webcam, gestire differenti input, API e Socket

L’unico limite è l’immaginazione.

Articolo scritto da