The MediaTrackSupportedConstraints dictionary's frameRate property is a read-only Boolean value which is present (and set to true) in the object returned by MediaDevices.getSupportedConstraints() if and only if the user agent supports the frameRate constraint. If the constraint isn't supported, it's not included in the list, so this value will never be false.

You can access the supported constraints dictionary by calling navigator.mediaDevices.getSupportedConstraints().


frameRateConstraintSupported = supportedConstraintsDictionary["frameRate"];


This property is present in the dictionary (and its value is always true) if the user agent supports the frameRate constraint. If the property isn't present, this property is missing from the supported constraints dictionary, and you'll get undefined if you try to look at its value.


let result = document.getElementById("result");

if (navigator.mediaDevices.getSupportedConstraints()["frameRate"]) {
    result.innerHTML = "Supported!";
} else {
    result.innerHTML = "Not supported!";



Specification Status Comment
Media Capture and Streams
The definition of 'frameRate' in that specification.
Editor's Draft Initial specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 50 (50) No support (Yes) ?
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support ? (Yes) 50.0 (50) No support ? ? (Yes)

See also

Document Tags and Contributors

 Contributors to this page: Sheppy
 Last updated by: Sheppy,