The MediaDecodingConfiguration dictionary of the Media Capabilities API is used to define the type of media being tested when calling MediaCapabilities.decodingInfo() to query whether a specific media configuration is supported, smooth, and/or power efficient.


A MediaDecodingConfiguration dictionary takes two properties:

  • type — the type of media being tested. This takes one of two values:
    • file: Represents a configuration that is meant to be used for a plain file playback.
    • media-source: Represents a configuration that is meant to be used for playback of a MediaSource.
  • A media configuration — a VideoConfiguration or AudioConfiguration dictionary.


//Create media configuration to be tested
const mediaConfig = {
    type : 'file', // or 'media-source'
    video : {
        contentType : "video/webm;codecs=vp8", // valid content type
        width : 800,     // width of the video
        height : 600,    // height of the video
        bitrate : 10000, // number of bits used to encode 1s of video
        framerate : 30   // number of frames making up that 1s.

// check support and performance
navigator.mediaCapabilities.decodingInfo(mediaConfig).then(result => {
    console.log('This configuration is ' +  (result.supported ? '' : 'not ') + 'supported.')


Specification Status Comment
Media Capabilities
The definition of 'MediaDecodingConfiguration' in that specification.
Draft Initial definition

Browser compatibility

No compatibility data found for api.MediaDecodingConfiguration.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.

See also