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.
Syntax
var constraintsObject = { aspectRatio: constraint };
constraintsObject.aspectRatio = constraint;
Value
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.
Example
See Example: Constraint exerciser in Capabilities, constraints, and settings for an example.
Specifications
| Specification | Status | Comment |
|---|---|---|
| Media Capture and StreamsThe definition of 'aspectRatio' in that specification. | Candidate Recommendation | Initial specification. |
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 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
aspectRatio
|
Chrome
Full support 59 |
Edge
Full support ≤79 |
Firefox
No support No |
IE
No support No |
Opera
Full support Yes |
Safari
? |
WebView Android
Full support 59 |
Chrome Android
Full support 59 |
Firefox Android
Full support 29 |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
Full support 7.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
See also
- Media Capture and Streams API
- Capabilities, constraints, and settings
MediaTrackConstraintsMediaDevices.getSupportedConstraints()MediaTrackSupportedConstraintsMediaStreamTrack
MediaTrackConstraints.aspectRatio by Mozilla Contributors is licensed under CC-BY-SA 2.5.