BaseAudioContext: state-Eigenschaft

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 state-Schreibgeschützte Eigenschaft des BaseAudioContext Interfaces gibt den aktuellen Zustand des AudioContext zurück.

Wert

Ein Zeichenkette. Mögliche Werte sind:

suspended

Der Audio-Kontext wurde angehalten (mit der AudioContext.suspend() Methode.)

running

Der Audio-Kontext läuft normal.

closed

Der Audio-Kontext wurde geschlossen (mit der AudioContext.close() Methode.)

Beispiele

Handhabung von Zustandsänderungen

Das folgende Code-Snippet stammt aus unserem AudioContext Zustands-Demo (sehen Sie es live.) Der onstatechange Handler wird verwendet, um den aktuellen Zustand jedes Mal, wenn er sich ändert, in die Konsole zu protokollieren.

js
audioCtx.onstatechange = () => {
  console.log(audioCtx.state);
};

Wiederaufnahme unterbrochener Wiedergabestati in iOS Safari

In iOS Safari, wenn ein Benutzer die Seite verlässt (z. B. Tabs wechselt, den Browser minimiert oder den Bildschirm abschaltet) ändert sich der Zustand des Audio-Kontexts zu "interrupted" und muss wieder aufgenommen werden. Zum Beispiel:

js
function play() {
  if (audioCtx.state === "interrupted") {
    audioCtx.resume().then(() => play());
    return;
  }
  // rest of the play() function
}

Spezifikationen

Specification
Web Audio API
# dom-baseaudiocontext-state

Browser-Kompatibilität

Siehe auch