The RTCRtpEncodingParameters dictionary's scaleResolutionDownBy property can be used to specify a factor by which to reduce the size of a video track during encoding.

This property is only available for tracks whose kind is video.


rtpEncodingParameters.scaleResolutionDownBy = scalingFactor;

rtpEncodingParameters = {
  scaleResolutionDownBy: scalingFactor


A double-precison floating-point number specifying the amount by which to reduce the size of the video during encoding. The default value, 1.0, means that the video will be encoded at its original size. A value of 2.0 would reduce the size of the video by a factor of 2 both horizontally and vertically, resulting in a video 25% the original size.

A value less than 1.0 would cause the video to get larger rather than smaller, which is not the intent of this property. Therefore, specifying a value less than 1.0 is not permitted and will cause a RangeError exception to be thrown by RTCPeerConnection.addTransceiver() or RTCRtpSender.setParameters().


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

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
scaleResolutionDownByChrome Full support 74Edge No support NoFirefox Full support 46IE No support NoOpera ? Safari ? WebView Android Full support 74Chrome Android Full support 74Firefox Android Full support 46Opera Android ? Safari iOS ? Samsung Internet Android Full support 11.0


Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown