The MediaTrackConstraints dictionary's aspectRatio property is a ConstrainDouble describing the requested or mandatory constraints placed upon the value of the aspectRatio constrainable property.

If needed, you can determine whether or not this constraint is supported by checking the value of MediaTrackSupportedConstraints.aspectRatio as returned by a call to MediaDevices.getSupportedConstraints(). However, typically this is unnecessary since browsers will simply ignore any constraints they're unfamiliar with.


var constraintsObject = { aspectRatio: constraint };

constraintsObject.aspectRatio = constraint;


A ConstrainDouble describing the acceptable or required value(s) for a video track's aspect ratio. The value is the width divided by the height and is rounded to ten decimal places. For example, the standard high-definition video aspect ratio of 16:9 can be computed as 1920/1080, or 1.7777777778.

If this value is a number, the user agent will attempt to obtain media whose aspect ratio is as close as possible to this number given the capabilities of the hardware and the other constraints specified. Otherwise, the value of this ConstrainDouble will guide the user agent in its efforts to provide an exact match to the required aspect ratio (if exact is specified or both min and max are provided and have the same value) or to a best-possible value.


See Example: Constraint exerciser in Capabilities, constraints, and settings for an example.


Specification Status Comment
Media Capture and Streams
The definition of 'aspectRatio' in that specification.
Candidate Recommendation Initial specification.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
aspectRatioChrome Full support 59Edge Full support ≤79Firefox No support NoIE No support NoOpera Full support YesSafari ? WebView Android Full support 59Chrome Android Full support 59Firefox Android Full support 29Opera Android ? Safari iOS ? Samsung Internet Android Full support 7.0


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

See also