-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Extract HDR metadata from DASH manifests #2813
Comments
Instead of assuming that hevc1.2 indicates HDR, we should get HDR profile information from DASH manifests. This removes the assumption in the Cast isTypeSupported polyfill. Issue #2813 Change-Id: Ieb40a06c78c99b6975082eaffb23d5e09a5f2464
Instead of assuming that hevc1.2 indicates HDR, we should get HDR profile information from DASH manifests. This removes the assumption in the Cast isTypeSupported polyfill. Issue #2813 Backported to v2.5.x Change-Id: Ieb40a06c78c99b6975082eaffb23d5e09a5f2464
Instead of assuming that hevc1.2 indicates HDR, we should get HDR profile information from DASH manifests. This removes the assumption in the Cast isTypeSupported polyfill. Issue #2813 Change-Id: Ieb40a06c78c99b6975082eaffb23d5e09a5f2464
I have created the PR for HLS #3116, but the implementation of DASH is not very clear to me. @joeyparrish , according to the documentation, the profile is global, but it only applies to certain codecs ("hvc1.2.4.L153.B0" or "hev1.2.4.L153.B0"), but I don't think this is entirely correct, since VP9 profile 2 supports HDR, and AV1 also supports HDR. Do you have any idea how this should be implemented? |
1. Added hdr as a property in stream when constructing. Fixes build failure from commit 7137286 . PR #3116 Issue #2813 2. Fixed the test error from commit d3640d1 . PR #3044 Issue #3029 3. Fixed the new line with no other arguments from commit 0845843 . PR #3060 Change-Id: I5833e49c1a95172742c4ec820960c9c5a7bf0cca
We are interested in this enhancements as well. Second the work on this
@avelad have you asked the community on slack to help clarify this by chance? I can look into it or bring it up at the next IF meeting I attend? |
If you can ask, I appreciate it. As soon as I know what to implement, I will send a PR. Can you send me a link to the Slack community channel? Is it the official channel of the ShakaPlayer team? |
@avelad my bad I read that as you were confused on something from DASH spec, but you are saying Shaka Documentation. So no this is the best place to ask the Shaka team. |
What documentation are you referring to? DASH documentation, or codec string specs, or our docs?
No, I don't, offhand. Maybe I've misunderstood the issue, or maybe it's just outside of my area of experience. Can you explain the problem again or differently? |
https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf -->
In HLS in each video track it is identified if it is HDR or not, but in DASH it seems that it is at the manifest level, so I want to be sure of this and that I have understood the same as you. |
Have you read the FAQ and checked for duplicate open issues?
Yes
Is your feature request related to a problem? Please describe.
In our isTypeSupported polyfill for Cast, we use the HEVC profile ("hevc1.2") as an indication of the HDR transfer function, but it seems that this is not always accurate. This profile of HEVC is 10-bit color, but could be non-HDR 10-bit color, according to an internal issue report.
Describe the solution you'd like
The polyfill should stop assuming that 10-bit color HEVC means HDR, and remove the extra
eotf="smpte2084"
parameter. Instead, the manifest parser should extract HDR profile information from the DASH manifest and pass that info along through theStream
object.Describe alternatives you've considered
Not aware of any off-hand.
Additional context
DASH-IF docs state that conformant HDR streams for which we should use
eotf="smpte2084"
would be in an<AdaptationSet>
with theprofiles
parameter set to"http://dashif.org/guidelines/dash-if-uhd#hevc-hdr-pq10"
.See DASH IOP v4.3, section 10.3 "DASH-IF IOP HEVC HDR PQ10" and section 10.3.3, "Mapping to DASH".
The text was updated successfully, but these errors were encountered: