Skip to content

fix(DASH): Use the correct Representation ID for Uri substitution of media segments #8760

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

Conversation

gmcgarry
Copy link
Contributor

For DASH segment templates, MpdUtils.fillUriTemplate() is used for substitution of tokens in the fetch URL, like R e p r e s e n t a t i o n I D . When supplemental codecs are used, the incorrect RepresentationID will be substituted for media segments. The initialisation segment is correctly substituted.

The symptom is that fetches for media segments will fail with 404 response codes.

Here is a sample mpd: https://chromium.dolby.link/media/supplemental-segments/manifest.mpd

The correct media path is: https://chromium.dolby.link/media/supplemental-segments/video/seg-5.m4s
The incorrect media path is: https://chromium.dolby.link/media/supplemental-segments/video_supplementalCodecs/seg-5.m4s

…nts.
@avelad avelad changed the title Fix: use the correct Representation ID for Uri substitution of media segments fix(DASH): Use the correct Representation ID for Uri substitution of media segments Jun 18, 2025
@avelad avelad requested a review from tykus160 June 18, 2025 11:02
@avelad avelad added type: bug Something isn't working correctly priority: P1 Big impact or workaround impractical; resolve before feature release component: DASH The issue involves the MPEG DASH manifest format labels Jun 18, 2025
@avelad avelad added this to the v4.16 milestone Jun 18, 2025
Copy link
Member

@tykus160 tykus160 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add unit test for that case

@shaka-bot
Copy link
Collaborator

Incremental code coverage: 100.00%

@avelad
Copy link
Member

avelad commented Jun 18, 2025

I can confirm the bug and that the fix works! (Tested with Safari)

@gmcgarry please add unit test! Thanks!

@avelad avelad self-requested a review June 18, 2025 13:35
gmcgarry added 2 commits June 20, 2025 17:26

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
gmcgarry added 2 commits June 20, 2025 18:23
…s-segments' into dolby/fix-supplemental-codecs-segments
@avelad avelad dismissed tykus160’s stale review June 20, 2025 08:45

Tests added

@avelad avelad merged commit 88627c3 into shaka-project:main Jun 20, 2025
29 of 32 checks passed
avelad pushed a commit that referenced this pull request Jun 23, 2025
…media segments (#8760)

For DASH segment templates, MpdUtils.fillUriTemplate() is used for
substitution of tokens in the fetch URL, like $RepresentationID$. When
supplemental codecs are used, the incorrect RepresentationID will be
substituted for media segments. The initialisation segment is correctly
substituted.

The symptom is that fetches for media segments will fail with 404
response codes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: DASH The issue involves the MPEG DASH manifest format priority: P1 Big impact or workaround impractical; resolve before feature release type: bug Something isn't working correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants