This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2018.
* Some parts of this feature may have varying levels of support.
The RTCRtpSender interface provides the ability to control and obtain details about how a particular MediaStreamTrack is encoded and sent to a remote peer.
With it, you can configure the encoding used for the corresponding track, get information about the device's media capabilities, and so forth. You can also obtain access to an RTCDTMFSender which can be used to send DTMF codes (to simulate the user pressing buttons on a telephone's dial pad) to the remote peer.
RTCRtpSender.dtmf Read only
An RTCDTMFSender which can be used to send DTMF tones using telephone-event payloads on the RTP session represented by the RTCRtpSender object. If null, the track and/or the connection doesn't support DTMF. Only audio tracks can support DTMF.
RTCRtpSender.track Read only
The MediaStreamTrack which is being handled by the RTCRtpSender. If track is null, the RTCRtpSender doesn't transmit anything.
RTCRtpSender.transport Read only
The RTCDtlsTransport over which the sender is exchanging the RTP and RTCP packets used to manage transmission of media and control data. This value is null until the transport is established. When bundling is in use, more than transceiver may be sharing the same transport object.
RTCRtpSender.transformAn RTCRtpScriptTransform is used to insert a transform stream (TransformStream) running in a worker thread into the sender pipeline, allowing stream transforms to be applied to encoded video and audio frames after they are output by a codec, and before they are sent.
rtcpTransport Deprecated This property has been removed; the RTP and RTCP transports have been combined into a single transport. Use the transport property instead.
RTCRtpSender.getCapabilities()Returns an object describing the system's capabilities for sending a specified kind of media data.
RTCRtpSender.getParameters()Returns an object describing the current configuration for the encoding and transmission of media on the track.
RTCRtpSender.getStats()Returns a Promise which is fulfilled with a RTCStatsReport which provides statistics data for all outbound streams being sent using this RTCRtpSender.
RTCRtpSender.setParameters()Applies changes to parameters which configure how the track is encoded and transmitted to the remote peer.
RTCRtpSender.setStreams()Sets the stream(s) associated with the track being transmitted by this sender.
RTCRtpSender.replaceTrack()Attempts to replace the track currently being sent by the RTCRtpSender with another track, without performing renegotiation. This method can be used, for example, to toggle between the front- and rear-facing cameras on a device.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
RTCRtpSender |
64 | 13 | 34 | 51 | 11 | 64 | 34 | 47 | 11 | 9.0 | 64 | 11 |
createEncodedStreams |
86 | 86 | No | 72 | No | 86 | No | 61 | No | 14.0 | 86 | No |
dtmf |
66 | 79 | 52 | 53 | 13.1 | 66 | 52 | 47 | 13.4 | 9.0 | 66 | 13.4 |
getCapabilities_static |
69 | 13 | 113 | 56 | 12.1 | 69 | 113 | 48 | 12.2 | 10.0 | 69 | 12.2 |
getParameters |
68 | 79 | 46 | 55 | 11 | 68 | 46 | 48 | 11 | 10.0 | 68 | 11 |
getStats |
67 | 13 | 55 | 54 | 12.1 | 67 | 55 | 48 | 12.2 | 9.0 | 67 | 12.2 |
replaceTrack |
65 | 79 | 34 | 52 | 11 | 65 | 34 | 47 | 11 | 9.0 | 65 | 11 |
rtcpTransport |
75 | 13 | No | 62 | No | 75 | No | 54 | No | 11.0 | 75 | No |
setParameters |
68 | 79 | 6446–64Before Firefox 64, changes to parameters that should update live would not do so. |
55 | 11 | 68 | 6446–64Before Firefox for Android 64, changes to parameters that should update live would not do so. |
48 | 11 | 10.0 | 68 | 11 |
setStreams |
76 | 79 | 113 | 63 | 14.1 | 76 | 113 | 54 | 14.5 | 12.0 | 79 | 14.5 |
track |
64 | 13 | 34 | 51 | 11 | 64 | 34 | 47 | 11 | 9.0 | 64 | 11 |
transform |
141 | 141 | 117 | No | 15.4 | 141 | 117 | No | 15.4 | No | 141 | 15.4 |
transport |
75 | 13 | 82 | 62 | 15.4 | 75 | 82 | 54 | 15.4 | 11.0 | 75 | 15.4 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/RTCRtpSender