RTCPeerConnection: addstream Ereignis
Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Nicht standardisiert: Diese Funktion ist nicht standardisiert und befindet sich nicht auf dem Weg zur Standardisierung. Verwenden Sie sie nicht auf Produktionsseiten, die dem Web ausgesetzt sind: Sie funktioniert nicht für alle Benutzer. Es kann auch 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.
addEventListener("addstream", (event) => {});
onaddstream = (event) => {};
Ereignistyp
Ein MediaStreamEvent
. Erbt von Event
.
Ereigniseigenschaften
Ein MediaStreamEvent
, das ein Event
ist, implementiert auch diese Eigenschaften.
MediaStreamEvent.stream
Schreibgeschützt-
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
.
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:
pc.addEventListener("addstream", (ev) => doAddStream(ev.stream), false);
Browser-Kompatibilität
BCD tables only load in the browser