The WebRTC interface RTCRtpTransceiver
describes a permanent pairing of an RTCRtpSender
and an RTCRtpReceiver
, along with some shared state.
Each SDP media section describes one bidirectional SRTP ("Secure Real Time Protocol") stream (excepting the media section for RTCDataChannel
, if present). This pairing of send and receive SRTP streams is significant for some applications, so RTCRtpTransceiver
is used to represent this pairing, along with other important state from the media section. Each non-disabled SRTP media section is always represented by exactly one transceiver.
A transceiver is uniquely identified using its mid
property, which is the same as the media ID (mid
) of its corresponding m-line. An RTCRtpTransceiver
is associated with an m-line if its mid
is non-null; otherwise it's considered disassociated.
Properties
currentDirection
Read only- A read-only string from the enum
RTCRtpTransceiverDirection
which indicates the transceiver's current directionality, ornull
if the transceiver is stopped or has never participated in an exchange of offers and answers. To change the transceiver's directionality, set the value of thedirection
property. direction
- A string from the enum
RTCRtpTransceiverDirection
which is used to set the transceiver's desired direction. mid
Read only- The media ID of the m-line associated with this transceiver. This association is established, when possible, whenever either a local or remote description is applied. This field is
null
if neither a local or remote description has been applied, or if its associated m-line is rejected by either a remote offer or any answer. receiver
Read only- The
RTCRtpReceiver
object that handles receiving and decoding incoming media. sender
Read only- The
RTCRtpSender
object responsible for encoding and sending data to the remote peer. stopped
- Indicates whether or not sending and receiving using the paired
RTCRtpSender
andRTCRtpReceiver
has been permanently disabled, either due to SDP offer/answer, or due to a call tostop()
.
Methods
setCodecPreferences()
- A list of
RTCRtpCodecParameters
objects which override the default preferences used by the user agent for the transceiver's codecs. stop()
- Permanently stops the
RTCRtpTransceiver
. The associated sender stops sending data, and the associated receiver likewise stops receiving and decoding incoming data.
Specifications
Specification | Status | Comment |
WebRTC 1.0: Real-time Communication Between BrowsersThe definition of 'RTCRtpTransceiver' in that specification. | Candidate Recommendation |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
RTCRtpTransceiver
|
Chrome
Full support 69 |
Edge
Full support ≤18 |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
currentDirection
|
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
? |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
? |
Samsung Internet Android
Full support 10.0 |
direction
|
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
mid
|
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
receiver
|
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
sender
|
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
setCodecPreferences()
|
Chrome
No support No |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support No |
Safari
? |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
No support No |
Opera Android
No support No |
Safari iOS
? |
Samsung Internet Android
No support No |
stop()
|
Chrome
No support No |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
No support No |
Chrome
Full support 69 |
Edge
No support No |
Firefox
Full support 59 |
IE
No support No |
Opera
No support No |
Safari
Full support Yes |
WebView Android
Full support 69 |
Chrome Android
Full support 69 |
Firefox Android
Full support 59 |
Opera Android
No support No |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support 10.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Deprecated. Not for use in new websites.'
- Deprecated. Not for use in new websites.
See also
- WebRTC API
- Introduction to the Real-time Transport Protocol (RTP)
RTCPeerConnection.addTrack()
andRTCPeerConnection.addTransceiver()
both create transceiversRTCRtpReceiver
andRTCRtpSender
RTCRtpTransceiver by Mozilla Contributors is licensed under CC-BY-SA 2.5.