AudioContext: sinkchange-Ereignis

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.

Das sinkchange-Ereignis der AudioContext-Schnittstelle wird ausgelöst, wenn sich das Ausgabe-Audiogerät (und damit die AudioContext.sinkId) geändert hat.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener(), oder setzen Sie eine Ereignishandler-Eigenschaft.

js
addEventListener("sinkchange", (event) => {});

onsinkchange = (event) => {};

Ereignistyp

Beispiele

Ein sinkchange-Ereignislistener kann verwendet werden, um eine Änderung des Audioausgabegeräts zu melden. Beachten Sie, dass wenn sinkId ein AudioSinkInfo-Objekt enthält, dies darauf hinweist, dass das Audio so geändert wurde, dass es auf keinem Ausgabegerät abgespielt wird.

js
audioCtx.addEventListener("sinkchange", () => {
  if (typeof audioCtx.sinkId === "object" && audioCtx.sinkId.type === "none") {
    console.log("Audio changed to not play on any device");
  } else {
    console.log(`Audio output device changed to ${audioCtx.sinkId}`);
  }
});

Siehe unser SetSinkId-Testbeispiel für funktionierenden Code.

Spezifikationen

Specification
Web Audio API
# eventdef-audiocontext-sinkchange

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch