-
Notifications
You must be signed in to change notification settings - Fork 6k
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
Use most recent ll-hls part for window start position #8767
Use most recent ll-hls part for window start position #8767
Conversation
Actually from looking at the RFC, whether we start at the segment start also should depend on whether we get have an #EXT-X-START and whether it has the PRECISE field set. Does this seem correct? |
I mocked something up according to the above, but since PRECISE will be parsed as a boolean with a default, it is hard to differentiate between the second case and the third or fourth ones. It is easier if we collapse the second case into either the third or the fourth one. |
I'll leave this in draft pending comments and #8764 . |
Hi. Thanks for the PR. Let's finish-up #8764 first before getting this one. |
@christosts The existing behavior of I'm not familiar enough with the rest of Exoplayer to know if there's actually any advantage in starting from an independent part vs a non-independent part. Also, since starting at a part doesn't seem to be specified anywhere, maybe case 3) should be dropped altogether and just handled as is (ie as case 1). Looking forward to hearing your thoughts on the matter. Thanks! |
Hmm. How about this:
Aside: I'll need to check the behavior change for non-live since we now parse PRECISE. Looks like we pass EXT-X-START directly at the moment, maybe we need to tune it as well. |
Sounds good.
Yes, I had this interpretation as well, and I still think that it makes the most sense. However I later noticed that the current draft RFC seems to imply that when PRECISE=NO, the player should start from the beginning of the segment:
This makes sense, and we can add a check to enforce good behavior, but wouldn't the constraint only be violated if the media playlist provided an invalid EXT-X-START/PART-HOLD-BACK combination? |
@uvjustin we reshaped the code a bit and added some unit tests. It worked fine with our testing LL-HLS streams, would you be able to test too? |
@christosts Thanks - I will give it a try and report back. |
This PR uses the most recent independent part for the window default start position.