diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
commit | 0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d (patch) | |
tree | a31f07c9bcca9d56ce61e9a1ffd30ef350d513aa /testing/web-platform/tests/interfaces/media-capabilities.idl | |
parent | Initial commit. (diff) | |
download | firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.tar.xz firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.zip |
Adding upstream version 115.8.0esr.upstream/115.8.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/interfaces/media-capabilities.idl')
-rw-r--r-- | testing/web-platform/tests/interfaces/media-capabilities.idl | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/testing/web-platform/tests/interfaces/media-capabilities.idl b/testing/web-platform/tests/interfaces/media-capabilities.idl new file mode 100644 index 0000000000..94339b6d1d --- /dev/null +++ b/testing/web-platform/tests/interfaces/media-capabilities.idl @@ -0,0 +1,115 @@ +// GENERATED CONTENT - DO NOT EDIT +// Content was automatically extracted by Reffy into webref +// (https://github.com/w3c/webref) +// Source: Media Capabilities (https://w3c.github.io/media-capabilities/) + +dictionary MediaConfiguration { + VideoConfiguration video; + AudioConfiguration audio; +}; + +dictionary MediaDecodingConfiguration : MediaConfiguration { + required MediaDecodingType type; + MediaCapabilitiesKeySystemConfiguration keySystemConfiguration; +}; + +dictionary MediaEncodingConfiguration : MediaConfiguration { + required MediaEncodingType type; +}; + +enum MediaDecodingType { + "file", + "media-source", + "webrtc" +}; + +enum MediaEncodingType { + "record", + "webrtc" +}; + +dictionary VideoConfiguration { + required DOMString contentType; + required unsigned long width; + required unsigned long height; + required unsigned long long bitrate; + required double framerate; + boolean hasAlphaChannel; + HdrMetadataType hdrMetadataType; + ColorGamut colorGamut; + TransferFunction transferFunction; + DOMString scalabilityMode; + boolean spatialScalability; +}; + +enum HdrMetadataType { + "smpteSt2086", + "smpteSt2094-10", + "smpteSt2094-40" +}; + +enum ColorGamut { + "srgb", + "p3", + "rec2020" +}; + +enum TransferFunction { + "srgb", + "pq", + "hlg" +}; + +dictionary AudioConfiguration { + required DOMString contentType; + DOMString channels; + unsigned long long bitrate; + unsigned long samplerate; + boolean spatialRendering; +}; + +dictionary MediaCapabilitiesKeySystemConfiguration { + required DOMString keySystem; + DOMString initDataType = ""; + MediaKeysRequirement distinctiveIdentifier = "optional"; + MediaKeysRequirement persistentState = "optional"; + sequence<DOMString> sessionTypes; + KeySystemTrackConfiguration audio; + KeySystemTrackConfiguration video; +}; + +dictionary KeySystemTrackConfiguration { + DOMString robustness = ""; + DOMString? encryptionScheme = null; +}; + +dictionary MediaCapabilitiesInfo { + required boolean supported; + required boolean smooth; + required boolean powerEfficient; +}; + +dictionary MediaCapabilitiesDecodingInfo : MediaCapabilitiesInfo { + required MediaKeySystemAccess keySystemAccess; + MediaDecodingConfiguration configuration; +}; + +dictionary MediaCapabilitiesEncodingInfo : MediaCapabilitiesInfo { + MediaEncodingConfiguration configuration; +}; + +[Exposed=Window] +partial interface Navigator { + [SameObject] readonly attribute MediaCapabilities mediaCapabilities; +}; + +[Exposed=Worker] +partial interface WorkerNavigator { + [SameObject] readonly attribute MediaCapabilities mediaCapabilities; +}; + +[Exposed=(Window, Worker)] +interface MediaCapabilities { + [NewObject] Promise<MediaCapabilitiesDecodingInfo> decodingInfo(MediaDecodingConfiguration configuration); + [NewObject] Promise<MediaCapabilitiesEncodingInfo> encodingInfo(MediaEncodingConfiguration configuration); +}; |