RTCPeerConnection: addstream-Ereignis
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.>
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 eine RTCPeerConnection gesendet, wenn ihr neue Medien in Form eines MediaStream-Objekts hinzugefügt wurden.
Warnung:
Dieses Ereignis wurde aus der WebRTC-Spezifikation entfernt. Achten Sie stattdessen auf das track-Ereignis, das für jeden zur RTCPeerConnection hinzugefügten Medientrack gesendet wird.
Ebenso können Sie erkennen, wenn Streams aus der Verbindung entfernt werden, indem Sie das removestream-Ereignis überwachen.
Dieses Ereignis kann nicht abgebrochen werden und wird nicht weitergereicht.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("addstream", (event) => { })
Alternativ können Sie ihn der Event-Handler-Eigenschaft der Schnittstelle zuweisen:
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 Event-Listener für track eingerichtet; andernfalls wird ein Event-Listener für addstream eingerichtet. pc ist eine RTCPeerConnection. Dieses Beispiel verwendet die Event-Handler-Eigenschaften ontrack und onaddstream (beachten Sie jedoch, dass dadurch gegebenenfalls andere über ontrack und onaddstream hinzugefügte Event-Listener ersetzt werden).
if (pc.addTrack !== undefined) {
pc.ontrack = (ev) => {
ev.streams.forEach((stream) => doAddStream(stream));
};
} else {
pc.onaddstream = (ev) => {
doAddStream(ev.stream);
};
}
Dadurch wird die Funktion doAddStream() für jeden zur RTCPeerConnection hinzugefügten Stream einmal aufgerufen, unabhängig davon, ob der Browser addstream oder track sendet.
Sie können auch die Methode addEventListener() verwenden, um einen Event-Listener einzurichten:
pc.addEventListener("addstream", (ev) => doAddStream(ev.stream), false);