VideoDecoder: isConfigSupported() static 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 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
VideoDecoder.configure
Return value
Exceptions
TypeError
-
Thrown if the provided
config
is invalid; that is, if doesn't have required values (such as an emptycodec
field) or has invalid values (such as a negativecodedWidth
).
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
Specification |
---|
WebCodecs # dom-videodecoder-isconfigsupported |
Browser compatibility
BCD tables only load in the browser