Quando si crea un tono con un oscillatore Web Audio (con noteOn
), chiamare la sua funzione noteOff
, le chiamate successive a noteOn
non riprodurranno ancora il tono. Mi sembra di dover creare un nuovo oscillatore per suonare una nuova nota. Perchè è questo?perché un oscillatore web audio suona una nota solo una volta?
var ctx = new webkitAudioContext();
var osc = ctx.createOscillator();
osc.connect(ctx.destination);
osc.start(0); // tone is heard (previously noteOn(0))
// ... some time later
osc.stop(0); // tone falls silent (previously noteOff(0))
// ... some time later
osc.start(0); // no effect! (previously noteOn(0))
Questa risposta è confermato dal faq qui: http://updates.html5rocks.com/2012/01/Web-Audio-FAQ – aaaidan