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

PeriodCombiner deduplicating image streams too aggressively #3844

Closed
dvoracek-slub opened this issue Jan 11, 2022 · 2 comments
Closed

PeriodCombiner deduplicating image streams too aggressively #3844

dvoracek-slub opened this issue Jan 11, 2022 · 2 comments
Labels
component: DASH The issue involves the MPEG DASH manifest format priority: P2 Smaller impact or easy workaround status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Milestone

Comments

@dvoracek-slub
Copy link

Have you read the FAQ and checked for duplicate open issues?
Yes

What version of Shaka Player are you using?
3.2.2

Can you reproduce the issue with our latest release version?
Yes

Can you reproduce the issue with the latest code from master?
No (there I get a TypeError, see #3840)

Are you using the demo app or your own custom app?
Custom

If custom app, can you reproduce the issue using our demo app?
Yes

What browser and OS are you using?
Linux Mint 20.1, Firefox 95.0.1

For embedded devices (smart TVs, etc.), what model and firmware version are you using?

What are the manifest and license server URIs?
https://raw.githubusercontent.com/dvoracek-slub/shaka-player-issue/main/image-stream-dedup/video.mpd

(full example: https://raw.githubusercontent.com/dvoracek-slub/shaka-player-issue/main/image-stream-dedup/index.html)

What configuration are you using? What is the output of player.getConfiguration()?
Default

What did you do? What did you expect to happen? What actually happened?
Using a DASH manifest that lists four image streams, I tried to access all of them using getImageTracks(). Only one was returned.

await player.load(
  "https://raw.githubusercontent.com/dvoracek-slub/shaka-player-issue/main/image-stream-dedup/video.mpd"
);

const imageTracks = player.getImageTracks();

// Expected: 4
// Actual: 1
console.log(imageTracks.length);

Notes
The issue is that too many image streams are dropped in PeriodCombiner::filterOutImageStreamDuplicates_.

My use-cases for having multiple image streams are:

  • Provide thumbnails in multiple resolutions. However, the total width/height of the grid may be the same (e.g., 10x10 with 80x45 images, and 5x5 with 160x90 images).
  • Provide thumbnails for multiple video tracks. (I'm offering multiple video tracks by filtering the variants available to the player.)

The most robust solution would probably be to also check the media URLs if that's possible, though it may suffice to just add checks for bandwidth, height, tilesLayout, and the label (after providing that via imageStreamToTrack).

@dvoracek-slub dvoracek-slub added the type: bug Something isn't working correctly label Jan 11, 2022
@shaka-bot shaka-bot added this to the v3.3 milestone Jan 11, 2022
@TheModMaker TheModMaker added the priority: P2 Smaller impact or easy workaround label Jan 21, 2022
@avelad avelad added the component: DASH The issue involves the MPEG DASH manifest format label May 2, 2022
@avelad avelad modified the milestones: v3.3, v4.1 May 4, 2022
@avelad avelad modified the milestones: v4.1, v4.2 Jun 3, 2022
@avelad avelad modified the milestones: v4.2, v4.3 Aug 17, 2022
@avelad avelad modified the milestones: v4.3, v4.4 Nov 11, 2022
@avelad
Copy link
Collaborator

avelad commented Aug 23, 2023

@joeyparrish / @theodab do we want to implement this?

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label Aug 23, 2023
@github-actions
Copy link
Contributor

Closing due to inactivity. If this is still an issue for you or if you have further questions, the OP can ask shaka-bot to reopen it by including @shaka-bot reopen in a comment.

@github-actions github-actions bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label Aug 30, 2023
@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Oct 29, 2023
@shaka-project shaka-project locked as resolved and limited conversation to collaborators Oct 29, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
component: DASH The issue involves the MPEG DASH manifest format priority: P2 Smaller impact or easy workaround status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
Development

No branches or pull requests

4 participants