MediaTrackSupportedConstraints: frameRate property

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.

The frameRate constraint can be used to establish acceptable upper and lower bounds on the video frame rate for a new video track, or to specify an exact frame rate that must be provided for the request to succeed. Checking the value of this property lets you determine if the user agent allows constraining the video track configuration by frame rate. See the example to see how this can be used.


This property is present in the dictionary if the user agent supports the frameRate constraint. If the property isn't present, the user agent doesn't allow specifying limits on the frame rate for video tracks.

Note: If this property is present, its value is always true.


This simple example looks to see if your browser supports constraining the frame rate when requesting video tracks.


const result = document.getElementById("result");
const supported = navigator.mediaDevices.getSupportedConstraints().frameRate;
result.textContent = supported ? "Supported!" : "Not supported!";


<div id="result"></div>


#result {
    14px "Arial",


The output, showing if your browser supports the frameRate constraint, is:

While this example is trivial, you can replace the simple output of "Supported" vs. "Not supported" with code to provide alternative methods for presenting the audiovisual information you want to share with the user or otherwise work with.


Media Capture and Streams
# dom-mediatracksupportedconstraints-framerate

Browser compatibility

BCD tables only load in the browser

See also