AudioContext: close()-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 close()-Methode der AudioContext-Schnittstelle schließt den Audio-Kontext und gibt alle von ihm genutzten System-Audio-Ressourcen frei.

Diese Funktion gibt nicht automatisch alle durch AudioContext erstellten Objekte frei, es sei denn, andere Referenzen wurden ebenfalls freigegeben; jedoch werden alle System-Audio-Ressourcen zwangsweise freigegeben, die die Erstellung und Verwendung zusätzlicher AudioContexts verhindern könnten. Der Fortschritt der Audiozeit im Audio-Kontext wird ausgesetzt und die Audio-Datenverarbeitung gestoppt. Das zurückgegebene Promise wird aufgelöst, wenn alle Ressourcen, die die Erstellung eines AudioContext blockieren, freigegeben wurden. Diese Methode wirft eine INVALID_STATE_ERR-Exception, wenn sie auf einem OfflineAudioContext aufgerufen wird.

Syntax

js
close()

Parameter

Keine.

Rückgabewert

Ein Promise, das mit undefined aufgelöst wird.

Beispiele

Der folgende Ausschnitt stammt aus unserem AudioContext-Zustände-Demo (live sehen.) Wenn der Stopp-Button geklickt wird, wird close() aufgerufen. Wenn das Versprechen aufgelöst wird, wird das Beispiel in den Anfangszustand zurückgesetzt.

js
stopBtn.onclick = () => {
  audioCtx.close().then(() => {
    startBtn.removeAttribute("disabled");
    susResBtn.setAttribute("disabled", "disabled");
    stopBtn.setAttribute("disabled", "disabled");
  });
};

Spezifikationen

Specification
Web Audio API
# dom-audiocontext-close

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch