RTCPeerConnection: Methode addTransceiver()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Die addTransceiver()
-Methode der Schnittstelle RTCPeerConnection
erstellt einen neuen RTCRtpTransceiver
und fügt ihn zur Menge der mit der RTCPeerConnection
assoziierten Transceiver hinzu. Jeder Transceiver repräsentiert einen bidirektionalen Stream, dem sowohl ein RTCRtpSender
als auch ein RTCRtpReceiver
zugeordnet sind.
Syntax
addTransceiver(trackOrKind)
addTransceiver(trackOrKind, init)
Parameter
trackOrKind
-
Ein
MediaStreamTrack
, das mit dem Transceiver assoziiert wird, oder ein String, der alskind
des Empfängerstrack
verwendet wird und somit auch desRTCRtpReceiver
selbst. init
Optional-
Ein Objekt zur Angabe von Optionen beim Erstellen des neuen Transceivers. Mögliche Werte sind:
direction
Optional-
Die bevorzugte Richtung des neuen Transceivers. Dieser Wert wird verwendet, um die neue
RTCRtpTransceiver
-ObjekteigenschaftRTCRtpTransceiver.direction
zu initialisieren. sendEncodings
Optional-
Ein Array von Kodierungen, die beim Senden von RTP-Medien vom
RTCRtpSender
erlaubt sind. Dies entspricht demparameter.encodings
-Array, das anRTCRtpSender.setParameters()
übergeben wird. streams
Optional-
Eine Liste von
MediaStream
-Objekten, die zumRTCRtpReceiver
des Transceivers hinzugefügt werden; wenn dastrack
-Ereignis derRTCPeerConnection
des Remote-Peers auftritt, sind dies die Streams, die durch dieses Ereignis spezifiziert werden.
Rückgabewert
Das RTCRtpTransceiver
-Objekt, das zum Austauschen der Mediendaten verwendet wird.
Ausnahmen
TypeError
-
Wird ausgelöst, wenn
trackOrKind
weder"audio"
noch"video"
war.Wenn das
sendEncodings
-Argument verwendet wird, kann dieser Fehler auch ausgelöst werden, wenn es ein schlecht formatiertesrid
-Mitglied gibt, einige, aber nicht alle Kodierungen einrid
-Mitglied enthalten oder verschiedene Kodierungen denselbenrid
-Wert haben. RangeError
-
Wird ausgelöst, wenn eine der
sendEncodings
-Kodierungen einenmaxFramerate
-Wert kleiner als 0.0 oder einenscaleResolutionDownBy
-Wert kleiner als 1.0 hat. InvalidStateError
DOMException
-
Wird ausgelöst, wenn die Methode aufgerufen wird, während die zugeordnete Verbindung geschlossen ist.
InvalidAccessError
DOMException
-
Wird ausgelöst, wenn das
sendEncodings
-Argument verwendet wird und ein schreibgeschützter Parameter außerrid
enthält.
Spezifikationen
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-rtcpeerconnection-addtransceiver |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- WebRTC API
- Einführung in das Real-time Transport Protocol (RTP)
RTCPeerConnection.addTrack()
erstellt ebenfalls TransceiverRTCRtpReceiver
undRTCRtpSender