VideoDecoder: configure() method
        
        
          Limited availability
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Dedicated Web Workers.
The configure() method of the VideoDecoder interface enqueues a control message to configure the video decoder for decoding chunks.
Syntax
configure(config)
Parameters
- config
- 
An object containing the following members: - codec
- 
A string containing a valid codec string. See "codecs" parameter for details on codec string construction. 
- descriptionOptional
- 
An ArrayBuffer, aTypedArray, or aDataViewcontaining a sequence of codec specific bytes, commonly known as extradata.
- codedWidthOptional
- 
An integer representing the width of the VideoFramein pixels, including any non-visible padding, before any ratio adjustments.
- codedHeightOptional
- 
An integer representing the height of the VideoFramein pixels, including any non-visible padding, before any ratio adjustments.
- displayAspectWidthOptional
- 
An integer representing the horizontal dimension of the VideoFramein pixels when displayed.
- displayAspectHeightOptional
- 
An integer representing the vertical dimension of the VideoFramein pixels when displayed.
- colorSpaceOptional
- 
An object representing a VideoColorSpace, containing the following members:- primaries
- 
A string representing the color gamut of the video sample. One of: - "bt709"
- "bt470bg"
- "smpte170m"
 
- transfer
- 
A string representing transfer characteristics. One of: - "bt709"
- "smpte170m"
- "iec61966-2-1"
 
- matrix
- 
A string representing a matrix coefficient. One of: - "rgb"
- "bt709"
- "bt470bg"
- "smpte170m"
 
 
- hardwareAccelerationOptional
- 
A hint as to the hardware acceleration method to use. One of: - "no-preference"
- "prefer-hardware"
- "prefer-software"
 
- optimizeForLatencyOptional
- 
A boolean. If truethis is a hint that the selected decoder should be optimized to minimize the number ofEncodedVideoChunkobjects that have to be decoded before aVideoFrameis output.
- flipOptional
- 
A boolean. If true, horizontal mirroring is applied. Defaults tofalse.
- rotationOptional
- 
An integer representing the rotation (0, 90, 180, or 270) in degrees clockwise. Defaults to 0. Arbitrary numbers (including negatives) are rounded to the next quarter turn.
 
Note:
The registrations in the WebCodecs Codec Registry link to a specification detailing whether and how to populate the optional description member.
Return value
None (undefined).
Exceptions
- TypeError
- 
Thrown if the provided configis invalid.
- InvalidStateError- DOMException
- 
Thrown if the stateis"closed".
- NotSupportedError- DOMException
- 
Thrown if the provided configis valid but the user agent cannot provide a codec that can decode this profile.
Examples
The following example creates a new VideoDecoder and configures it with the "vp8" codec, a codedWidth of 640 pixels and a codedHeight of 480 pixels.
const init = {
  output: handleFrame,
  error(e) {
    console.log(e.message);
  },
};
const config = {
  codec: "vp8",
  codedWidth: 640,
  codedHeight: 480,
};
let decoder = new VideoDecoder(init);
decoder.configure(config);
Specifications
| Specification | 
|---|
| WebCodecs> # dom-videodecoder-configure> | 
Browser compatibility
Loading…