Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Media Capabilities data dictionary requires properties not defined in the manifest #385

Open
wilaw opened this issue Nov 18, 2019 · 5 comments

Comments

@wilaw
Copy link
Member

wilaw commented Nov 18, 2019

The Media Capabilities API https://w3c.github.io/media-capabilities/ for MSE-based players defines a VideoConfiguration https://w3c.github.io/media-capabilities/#dictdef-videoconfiguration with the following properties:

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;

};

The last three are defined by enumerated properties which are not currently conveyed in the DASh manifest.

enum HdrMetadataType {
"smpteSt2086",
"smpteSt2094-10",
"smpteSt2094-40"
};

enum ColorGamut {
"srgb",
"p3",
"rec2020"
};

enum TransferFunction {
"srgb",
"pq",
"hlg"
};

Request is for DASH IF to define a standard means of defining these properties within a DASH manifest,

@haudiobe
Copy link

haudiobe commented Nov 18, 2019 via email

@haudiobe
Copy link

More offline discussion happening. Let's use Codec Independent Code Points.

@jpiesing
Copy link

DVB-DASH uses CICP.

@haudiobe
Copy link

haudiobe commented Nov 19, 2019 via email

@ZmGorynych
Copy link

SMPTE 2086 is a "base layer", both DolbyVision and HDR10+ require it for PQ, afaik.
It may be worth splitting metadata into dynamic (DolbyVision, HDR10+) and static. You will have streams that will have smpteSt2086, smpteSt2094-10, and smpteSt2094-40 metadata at the same time. 2094-unaware decoders will just process the stream as HDR10.
I'd add a new supplemental property with a list of HDR metadata types carried in the stream.
<SupplementalProperty schemeIdUri="xxx:hdr-metadata:2020 value="smpteSt2086 smpteSt2094-10"/>`

Another potential issues is that there are multiple versions of DolbyVision (unsure about HDR10+), and you need to know which version is supported. This currently shows in the codecs string

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants