RTCRtpSendParameters.encodings

The RTCRtpSendParameters dictionary's encodings property is an RTCRtpEncodingParameters object providing configuration settings for the encoder being used for the RTCRtpSender's track.

Syntax

sendParameters.encodings = encodingParameterList;

encodingParameterList = sendParameters.encodings;

Value

An array of objects conforming to the RTCRtpEncodingParameters dictionary, each of which contains properties which provide settings and parameters that describe and configure a single codec that could be used to encode the track. Each object's properties are:

active
If true, the described encoding is currently actively being used. That is, for RTP senders, the encoding is currently being used to send data, while for receivers, the encoding is being used to decode received data. The default value is true.
codecPayloadType
When describing a codec for an RTCRtpSender, codecPayloadType is a single 8-bit byte (or octet) specifying the codec to use for sending the stream; the value matches one from the owning RTCRtpParameters object's codecs parameter. This value can only be set when creating the transceiver; after that, this value is read only.
dtx
Only used for an RTCRtpSender whose kind is audio, this property indicates whether or not to use discontinuous transmission (a feature by which a phone is turned off or the microphone muted automatically in the absence of voice activity). The value is taken from the enumerated string type RTCDtxStatus.
maxBitrate
An unsigned long integer indicating the maximum number of bits per second to allow for this encoding. Other parameters may further constrain the bit rate, such as the value of maxFramerate or transport or physical network limitations.
maxFramerate
A double-precision floating-point value specifying the maximum number of frames per second to allow for this encoding.
ptime
An unsigned long integer value indicating the preferred duration of a media packet in milliseconds. This is typically only relevant for audio encodings. The user agent will try to match this as well as it can, but there is no guarantee.
rid
A DOMString which, if set, specifies an RTP stream ID (RID) to be sent using the RID header extension. This parameter cannot be modified using setParameters(). Its value can only be set when the transceiver is first created.
scaleResolutionDownBy
Only used for senders whose track's kind is video, this is a double-precision floating-point value specifying a factor by which to scale down the video during encoding. The default value, 1.0, means that the sent video's size will be the same as the original. A value of 2.0 scales the video frames down by a factor of 2 in each dimension, resulting in a video 1/4 the size of the original. The value must not be less than 1.0 (you can't use this to scale the video up).

Specifications

Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'RTCRtpSendParameters.encodings' in that specification.
Candidate Recommendation Initial definition.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
encodingsChrome Full support 69Edge Full support ≤79Firefox No support No
Notes
No support No
Notes
Notes Firefox uses RTCRtpParameters.encodings instead.
IE No support NoOpera ? Safari ? WebView Android Full support 69Chrome Android Full support 69Firefox Android No support No
Notes
No support No
Notes
Notes Firefox uses RTCRtpParameters.encodings instead.
Opera Android ? Safari iOS ? Samsung Internet Android Full support 10.0

Legend

Full support
Full support
No support
No support
Compatibility unknown
Compatibility unknown
See implementation notes.
See implementation notes.