AudioContext: sinkchange-Ereignis

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

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

Syntax

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

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

onsinkchange = (event) => { }

Ereignistyp

Beispiele

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

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}`);
  }
});

Sehen Sie sich unser SetSinkId-Testbeispiel für funktionierenden Code an.

Spezifikationen

Specification
Web Audio API
# eventdef-audiocontext-sinkchange

Browser-Kompatibilität

Siehe auch