The MediaCapabilities.encodingInfo()
method, part of the MediaCapabilities
interface of the Media Capabilities API, returns a promise with the tested media configuration's MediaCapabilitiesInfo
; this contains the three Boolean properties supported
, smooth
, and powerefficient
, which describe how compatible the device is with the type of media.
mediaCapabilities.encodingInfo(mediaEncodingConfiguration)
mediaEncodingConfiguration
MediaEncodingConfiguration
dictionary containing a valid media encoding type of record
or transmission
and a valid media configuration: either an AudioConfiguration
or VideoConfiguration
dictionary.A Promise
fulfilling with a MediaCapabilitiesInfo
interface containing three Boolean attributes:
supported
smooth
powerEfficient
A TypeError
is raised if the MediaConfiguration
passed to the encodingInfo()
method is invalid, either because the type is not video or audio, the contentType
is not a valid codec MIME type, or any other error in the media configuration passed to the method, including omitting any of the media encoding configuration elements.
//Create media configuration to be tested const mediaConfig = { type : 'record', // or 'transmission' video : { contentType : "video/webm;codecs=vp8.0", // valid content type width : 1920, // width of the video height : 1080, // height of the video bitrate : 120000, // number of bits used to encode 1s of video framerate : 48 // number of frames making up that 1s. } }; // check support and performance navigator.mediaCapabilities.encodingInfo(mediaConfig).then(result => { console.log('This configuration is ' + (result.supported ? '' : 'not ') + 'supported, ' + (result.smooth ? '' : 'not ') + 'smooth, and ' + (result.powerEfficient ? '' : 'not ') + 'power efficient.') });
Specification | Status | Comment |
---|---|---|
Media Capabilities The definition of 'encodingInfo()' in that specification. | Draft | Initial definition |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 67
|
? | 63 | ? | ? | ? |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | 67
|
67
|
? | ? | ? | ? | ? |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/mediaCapabilities/encodingInfo