web api instance method
VideoDecoder: configure() method
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- : 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.
- : An
codedWidthOptional- : An integer representing the width of the
VideoFramein pixels, including any non-visible padding, before any ratio adjustments.
- : An integer representing the width of the
codedHeightOptional- : An integer representing the height of the
VideoFramein pixels, including any non-visible padding, before any ratio adjustments.
- : An integer representing the height of the
displayAspectWidthOptional- : An integer representing the horizontal dimension of the
VideoFramein pixels when displayed.
- : An integer representing the horizontal dimension of the
displayAspectHeightOptional- : An integer representing the vertical dimension of the
VideoFramein pixels when displayed.
- : An integer representing the vertical dimension of the
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"
- : A string representing the color gamut of the video sample. One of:
transfer- : A string representing transfer characteristics. One of:
"bt709""smpte170m""iec61966-2-1"
- : A string representing transfer characteristics. One of:
matrix- : A string representing a matrix coefficient. One of:
"rgb""bt709""bt470bg""smpte170m"
- : A string representing a matrix coefficient. One of:
- : An object representing a
hardwareAccelerationOptional- : A hint as to the hardware acceleration method to use. One of:
"no-preference""prefer-hardware""prefer-software"
- : A hint as to the hardware acceleration method to use. One of:
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.
- : A boolean. If
flipOptional- : A boolean. If
true, horizontal mirroring is applied. Defaults tofalse.
- : A boolean. If
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.
- : An integer representing the rotation (0, 90, 180, or 270) in degrees clockwise. Defaults to
- : An object containing the following members:
[!NOTE] The registrations in the WebCodecs Codec Registry link to a specification detailing whether and how to populate the optional
descriptionmember.
Return value
None (undefined).
Exceptions
TypeError- : Thrown if the provided
configis invalid.
- : Thrown if the provided
InvalidStateErrorDOMException- : Thrown if the
stateis"closed".
- : Thrown if the
NotSupportedErrorDOMException- : Thrown if the provided
configis valid but the user agent cannot provide a codec that can decode this profile.
- : Thrown if the provided
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.