MediaStreamTrack: mute Ereignis

Das mute Ereignis wird an ein MediaStreamTrack gesendet, wenn die Quelle des Tracks vorübergehend nicht in der Lage ist, Mediendaten bereitzustellen.

Wenn der Track wieder in der Lage ist, Medienausgabe zu erzeugen, wird ein unmute Ereignis gesendet.

Während der Zeit zwischen dem mute Ereignis und dem unmute Ereignis ist der Wert der muted Eigenschaft des Tracks true.

Hinweis: Der Zustand, den die meisten Menschen als "stummgeschaltet" betrachten (d.h. ein vom Benutzer umgeschalteter Zustand des Stummschaltens eines Tracks), wird tatsächlich mit der MediaStreamTrack.enabled Eigenschaft verwaltet, für die es keine Ereignisse gibt.

Dieses Ereignis kann nicht abgebrochen werden und es wird nicht weitergereicht.

Syntax

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

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

onmute = (event) => {};

Ereignistyp

Ein generisches Event.

Beispiele

In diesem Beispiel werden Ereignishandler für die mute und unmute Ereignisse eingerichtet, um zu erkennen, wann das Medium nicht von der Quelle des referenzierten MediaStreamTrack musicTrack fließt.

js
musicTrack.addEventListener(
  "mute",
  (event) => {
    document.getElementById("timeline-widget").style.backgroundColor = "#aaa";
  },
  false,
);

musicTrack.addEventListener(
  "unmute",
  (event) => {
    document.getElementById("timeline-widget").style.backgroundColor = "#fff";
  },
  false,
);

Mit diesen Ereignishandlern wird, wenn der Track musicTrack seinen muted Zustand betritt, das Element mit der ID timeline-widget in seiner Hintergrundfarbe auf #aaa geändert. Wenn der Track den stummgeschalteten Zustand verlässt—erkannt durch das Eintreffen eines unmute Ereignisses—wird die Hintergrundfarbe wieder auf Weiß gesetzt.

Sie können auch die onmute Ereignishandler-Eigenschaft verwenden, um einen Handler für dieses Ereignis einzurichten; ähnlich ist der onunmute Ereignishandler verfügbar, um einen Handler für das unmute Ereignis einzurichten. Das folgende Beispiel zeigt dies:

js
musicTrack.onmute = (event) => {
  document.getElementById("timeline-widget").style.backgroundColor = "#aaa";
};

musicTrack.onunmute = (event) => {
  document.getElementById("timeline-widget").style.backgroundColor = "#fff";
};

Stummschalten von Tracks über Empfänger

Das folgende Beispiel zeigt, wie Tracks über Empfänger stummgeschaltet werden können.

js
// Peer 1 (Receiver)
audioTrack.addEventListener("mute", (event) => {
  // Do something in UI
});

videoTrack.addEventListener("mute", (event) => {
  // Do something in UI
});

// Peer 2 (Sender)
const transceivers = peer.getTransceivers();

const audioTrack = transceivers[0];
audioTrack.direction = "recvonly";

const videoTrack = transceivers[1];
videoTrack.direction = "recvonly";

transceivers ist ein Array von RTCRtpTransceiver, in dem Sie das gesendete und empfangene Audio- oder Video-Track finden können. Für weitere Informationen siehe den Artikel über direction.

Spezifikationen

Specification
Media Capture and Streams
# dom-mediastreamtrack-onmute

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch