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
Failing live playlist update when lowLatencyMode = false #3566
Comments
The request you are referring to is a blocking playlist request, not a part request. Blocking playlist requests for part 0 are used even when I'm unable to reproduce in the lastest release (v1.0.0-rc.3) with Apple's CMAF stream: There are no part requests made and playlist requests work as expected. Would you prefer that hls.js not use directives or blocking playlist requests when |
Sorry about the confusion. I am talking about playlist update, where hls.js requests one containing a future part using a blocking request. I am not talking about how Apple's server happens to handle this, but how it should be handled to comply with the spec. As I stated, the current logic can expect error responses, since the server is not expected to handle such part update requests more than 3 seconds into the future (for <= 1s parts): https://tools.ietf.org/html/draft-pantos-hls-rfc8216bis-08#section-6.2.5.2
It appears that my server is responding wrong (503 when 400 is expected), but hls.js should not have made the request regardless. I would expect hls.js to still do blocking updates (since the playlist advertises Another possibility is to do the update requests without the |
When using a LL-HLS stream and
lowLatencyMode: false
, hls.js will request part 0 from a future segment. The server can return an error, since it is likely more than 3 parts into the future.Note that the stream will actually play, since hls.js has some recovery logic, but it means that 3 requests are made for each live playlist update.
What version of Hls.js are you using?
master / c5698be.
What browser and OS are you using?
Test stream:
https://stream.sob.m-dn.net/live/sb1-ll/index.m3u8
Checklist
Steps to reproduce
lowLatencyMode: false
.Expected behavior
Request future index update using
_HLS_msn=<next-msn>
param, or use regular part updates fromlowLatencyMode: true
logic.Actual behavior
Request future index update using
_HLS_msn=<next-msn
&_HLS_part=0
params, resulting in 503s and multiple requests.Console output
The text was updated successfully, but these errors were encountered: