web api static method
VideoDecoder: isConfigSupported() static method
Secure contextAvailable in workers
The isConfigSupported() static method of the VideoDecoder interface checks if the given config is supported (that is, if VideoDecoder objects can be successfully configured with the given config).
Syntax
VideoDecoder.isConfigSupported(config)
Parameters
config- : The dictionary object accepted by
configure
- : The dictionary object accepted by
Return value
A Promise that resolves with an object containing the following members:
supported- : A boolean value which is
trueif the given config is supported by the decoder.
- : A boolean value which is
config- : A copy of the given config with all the fields recognized by the decoder.
Exceptions
TypeError- : Thrown if the provided
configis invalid; that is, if doesn’t have required values (such as an emptycodecfield) or has invalid values (such as a negativecodedWidth).
- : Thrown if the provided
Examples
The following example tests if the browser supports accelerated and un-accelerated versions of several video codecs.
const codecs = [
"avc1.42001E",
"hvc1.1.6.L123.00",
"vp8",
"vp09.00.10.08",
"av01.0.04M.08",
];
const accelerations = ["prefer-hardware", "prefer-software"];
const configs = [];
for (const codec of codecs) {
for (const acceleration of accelerations) {
configs.push({
codec,
hardwareAcceleration: acceleration,
codedWidth: 1280,
codedHeight: 720,
not_supported_field: 123,
});
}
}
for (const config of configs) {
const support = await VideoDecoder.isConfigSupported(config);
console.log(
`VideoDecoder's config ${JSON.stringify(support.config)} support: ${
support.supported
}`,
);
}
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.