W3cubDocs

/DOM

MediaConfiguration

The MediaConfiguration MediaCapabilities dictionary of the Media Capabilities API describes how media and audio files must be configured, or defined, to be passed as a parameter of the MediaCapabilities.encodingInfo() and MediaCapabilities.encodingInfo() methods.

Properties

A valid configuration includes a valid encoding configuration type or decoding configuration type and a valid audio configuration or video configuration. If you plan on querying encoding information, set the media type to record or transmission.

For decoding, set the type to file or media-source.

If the media is an audio file, the audio configuration must include a valid audio MIME type as contentType, the number of channels, the bitrate, and the sample rate. Video configurations mush include a valid video MIME type as contentType, the bitrate, and framerate, along with the width and the height of the video file. All of these must be present, as in the examples below, or a TypeError will occur.

A valid media decoding configuration, to be submitted as the parameter for mediaCapabilities.decodingInfo() method, has it's `type` set as:

  • file: For plain playback file
  • media-source: For media source files

A valid media encoding configuration, to be submitted as the parameter for mediaCapabilities.encodingInfo() method, has it's `type` set as:

  • record: For recording media
  • transmission: For media to be electronically transmitted

A valid audio configuration includes:

  • contentType: A valid audio MIME type
  • channels: Number of channels used by the audio track
  • bitrate: Number of bits used to encode one second of the audio file
  • samplerate: Number of audio samples making up one second of the audio file

A valid video configuration includes:

  • contentType: Valid video MIME type
  • width: Width of the video
  • height: Height of the video
  • bitrate: Number of bits used to encode one second of the video file
  • framerate: Number of frames making up one second of video playback

Example

//Create a video configuration to be tested
const videoDecoderConfig = {
    type : 'file', // 'record', 'transmission', 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.
     }
}

const audioEncoderConfig = { 
   type : 'file', // 'record', 'transmission', or 'media-source'
   audio : {
        contentType : "audio/ogg", // valid content type 
        channels : 2,     // audio channels used by the track
        bitrate : 132700, // number of bits used to encode 1s of audio 
        samplerate : 5200 // number of audio samples making up that 1s. 
     }
};

Specifications

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

Browser compatibility

No compatibility data found. Please contribute data for "api.MediaConfiguration" (depth: 1) to the MDN compatibility data repository.

See also

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaConfiguration