BaseAudioContext: createDelay() Methode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Die createDelay()-Methode der BaseAudioContext-Schnittstelle wird verwendet, um ein DelayNode zu erstellen, welches das eingehende Audiosignal um eine bestimmte Zeit verzögern kann.
Hinweis:
Der DelayNode()-Konstruktor wird empfohlen, um ein DelayNode zu erstellen; siehe Erstellung eines AudioNode.
Syntax
createDelay(maxDelayTime)
Parameter
maxDelayTimeOptional-
Die maximale Zeit in Sekunden, um die das Audiosignal verzögert werden kann. Muss weniger als 180 Sekunden betragen und wird standardmäßig auf 1 Sekunde gesetzt, wenn nicht angegeben.
Rückgabewert
Ein DelayNode. Der Standardwert von DelayNode.delayTime beträgt 0 Sekunden.
Beispiele
Wir haben ein Beispiel erstellt, das es Ihnen ermöglicht, drei verschiedene Samples in einer konstanten Schleife abzuspielen — siehe create-delay (Sie können auch den Quellcode ansehen). Wenn Sie einfach die Wiedergabeknöpfe drücken, starten die Schleifen sofort; wenn Sie die Schieberegler nach rechts bewegen und dann die Wiedergabeknöpfe drücken, wird eine Verzögerung eingeführt, sodass die Schleifklänge für eine kurze Zeit nicht abgespielt werden.
const audioCtx = new AudioContext();
const synthDelay = audioCtx.createDelay(5.0);
// …
let synthSource;
playSynth.onclick = () => {
synthSource = audioCtx.createBufferSource();
synthSource.buffer = buffers[2];
synthSource.loop = true;
synthSource.start();
synthSource.connect(synthDelay);
synthDelay.connect(destination);
this.setAttribute("disabled", "disabled");
};
stopSynth.onclick = () => {
synthSource.disconnect(synthDelay);
synthDelay.disconnect(destination);
synthSource.stop();
playSynth.removeAttribute("disabled");
};
// …
let delay1;
rangeSynth.oninput = () => {
delay1 = rangeSynth.value;
synthDelay.delayTime.setValueAtTime(delay1, audioCtx.currentTime);
};
Spezifikationen
| Specification |
|---|
| Web Audio API> # dom-baseaudiocontext-createdelay> |
Browser-Kompatibilität
Loading…