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
Cannot play manifest with SegmentTimeline inside of SegmentList #1457
Comments
Despite its odd appearance, this is valid DASH and ought to work. I had a quick go at prototyping support - see davemevans@bc95f12 I haven't really tested it too much beyond it playing the MPD above and not breaking a few reference streams I tried. @bwidtmann, fancy giving it a try? |
thx @bbcrddave that looks nice. I found out, that our specific problem is, not loading segments when there is NO 'duration' but instead 'indexRange' attribute in SegmentList element. So the logic here should do the following:
So I changed the following line in DashHandler.js in function updateRepresentation:
Correct me if I am wrong: you provided a solution for the second point and I provide a solution for the first point. To be 100% MPEG-DASH compliant, we have to implement both solutions? right? |
Yes, that is correct.
Yes, although the SegmentTimeline use is not optional with this solution - it will always be used because there is no option for non-accurate seeking. I think that is ok. |
@bbcrddave I also think it is ok always using SegmentTimeline when present. One question regarding your solution: what is 'availabilityIdx'? |
It's useful here to correlate the entries in the SegmentList to the SegmentTimeline since they must be at the same index. |
How do we proceed? Should we provide 2 separate PRs? |
I'll submit a PR with both (crediting you, of course 😉) later if that's ok with you? |
Steps to reproduce
It works on shaka player: http://shaka-player-demo.appspot.com/demo/
Observed behaviour
Manifest gets downloaded.
First chunks get downloaded.
Playback does not start.
Console output
The text was updated successfully, but these errors were encountered: