Firefox Tomorrow

web api instance method

VideoDecoder: configure() method

View on MDN ↗

Secure contextAvailable in 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
      • description Optional
      • codedWidth Optional
        • : An integer representing the width of the VideoFrame in pixels, including any non-visible padding, before any ratio adjustments.
      • codedHeight Optional
        • : An integer representing the height of the VideoFrame in pixels, including any non-visible padding, before any ratio adjustments.
      • displayAspectWidth Optional
        • : An integer representing the horizontal dimension of the VideoFrame in pixels when displayed.
      • displayAspectHeight Optional
        • : An integer representing the vertical dimension of the VideoFrame in pixels when displayed.
      • colorSpace Optional
        • : 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"
      • hardwareAcceleration Optional
        • : A hint as to the hardware acceleration method to use. One of:
          • "no-preference"
          • "prefer-hardware"
          • "prefer-software"
      • optimizeForLatency Optional
        • : A boolean. If true this is a hint that the selected decoder should be optimized to minimize the number of EncodedVideoChunk objects that have to be decoded before a VideoFrame is output.
      • flip Optional
        • : A boolean. If true, horizontal mirroring is applied. Defaults to false.
      • rotation Optional
        • : 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 config is invalid.
  • InvalidStateError DOMException
    • : Thrown if the state is "closed".
  • NotSupportedError DOMException
    • : Thrown if the provided config is 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

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also