RTCPeerConnection: addstream Ereignis

Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, kann sie bereits aus den relevanten Webstandards entfernt worden sein, befindet sich im Prozess der Entfernung oder wird nur aus Kompatibilitätsgründen beibehalten. Vermeiden Sie die Verwendung und aktualisieren Sie gegebenenfalls bestehenden Code; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu treffen. Beachten Sie, dass diese Funktion jederzeit nicht mehr funktionieren kann.

Kein Standard: Diese Funktion ist nicht standardisiert und befindet sich nicht im Standardisierungsprozess. Verwenden Sie sie nicht auf Produktionsseiten, die auf das Web ausgerichtet sind: Sie wird nicht für alle Benutzer funktionieren. Außerdem kann es große Inkompatibilitäten zwischen Implementierungen geben und das Verhalten kann sich in Zukunft ändern.

Das veraltete addstream-Ereignis wird an eine RTCPeerConnection gesendet, wenn neue Medien in Form eines MediaStream-Objekts hinzugefügt wurden.

Warnung: Dieses Ereignis wurde aus der WebRTC-Spezifikation entfernt. Sie sollten stattdessen das track Ereignis überwachen, das für jede Medienspur gesendet wird, die zur RTCPeerConnection hinzugefügt wird.

Sie können ähnlich Streams beobachten, die von der Verbindung entfernt werden, indem Sie das removestream Ereignis überwachen.

Dieses Ereignis ist nicht abbrechbar und lässt sich nicht nach oben durchreichen (bubbles nicht).

Syntax

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

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

onaddstream = (event) => {};

Ereignistyp

Ein MediaStreamEvent. Erbt von Event.

Ereigniseigenschaften

Ein MediaStreamEvent, das ein Event ist, implementiert auch diese Eigenschaften.

MediaStreamEvent.stream Nur lesbar

Enthält den MediaStream, der mit dem Ereignis verknüpft ist.

Beispiele

Dieses Beispiel prüft, ob der Browser des Benutzers das track Ereignis unterstützt. Falls ja, wird ein track-Ereignis-Listener eingerichtet; andernfalls wird ein addstream-Ereignis-Listener eingerichtet. pc ist eine RTCPeerConnection.

js
if (pc.addTrack !== undefined) {
  pc.ontrack = (ev) => {
    ev.streams.forEach((stream) => doAddStream(stream));
  };
} else {
  pc.onaddstream = (ev) => {
    doAddStream(ev.stream);
  };
}

Dies ruft eine Funktion doAddStream() einmal für jeden Stream auf, der zur RTCPeerConnection hinzugefügt wird, unabhängig davon, ob der Browser addstream oder track sendet.

Sie können auch die Methode addEventListener() verwenden, um einen Ereignis-Listener einzurichten:

js
pc.addEventListener("addstream", (ev) => doAddStream(ev.stream), false);

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch