Ich bin nicht in der Lage, eine gleitende Änderung der Lautstärke durch exponentialRampToValueAtTime eines GainNode zu bekommen. HierWie funktioniert das audioParam.exponentialRampToValueAtTime?
ein Beispiel:
var context = new AudioContext(),
osc = context.createOscillator(),
gain = context.createGain();
osc.frequency.value = 440; // A note
osc.start(0);
osc.connect(gain);
gain.gain.value = 0;
gain.connect(context.destination);
gain.gain.cancelScheduledValues(0);
gain.gain.setValueAtTime(0, context.currentTime);
gain.gain.exponentialRampToValueAtTime(1, context.currentTime + 2);
In meinem Verständnis dieser allmählich die Lautstärke erhöhen sollte, bis zum Erreichen 1 (100%) und dieser ganze Prozess sollte 2sec nehmen. Ist diese Annahme richtig?
Wenn ja, warum bleibt 2 Sekunden lang auf 0 stehen und schaltet plötzlich auf volle Lautstärke?
Vielen Dank im Voraus für Ihre Zeit und Mühe.
Haben Sie 'linearRampToValueAtTime' versucht? –
Ich habe, und es funktioniert, aber ich lese, dass linear klingt nicht so gut wie exponentielle Rampe, also wollte ich dies ausprobieren. Ich schreibe einen Hüllkurvengenerator und möchte einige Optionen testen. –
Ich denke, so soll es funktionieren. Rampe schnell hoch. –