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. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Das veraltete addstream Ereignis wird an ein RTCPeerConnection gesendet, wenn neue Medien in Form eines MediaStream Objekts hinzugefügt wurden.
Warnung:
Dieses Ereignis wurde aus der WebRTC-Spezifikation entfernt. Stattdessen sollten Sie das track Ereignis überwachen, welches für jeden Medientrack gesendet wird, der zur RTCPeerConnection hinzugefügt wird.
Sie können ähnlich überwachen, ob Streams von der Verbindung entfernt werden, indem Sie das removestream Ereignis beobachten.
Dieses Ereignis ist nicht abbruchfähig und blubbert nicht.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignisbehandlungs-Eigenschaft.
addEventListener("addstream", (event) => { })
onaddstream = (event) => { }
Ereignistyp
Ein MediaStreamEvent. Erbt von Event.
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 die 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);