-
Notifications
You must be signed in to change notification settings - Fork 2.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
Ignore fragLoadPolicy and levelLoadPolicy on livestreams when 404 error #5647
Comments
When a 4xx status is returned, there is no expectation that re-requesting the fragment will change the result, so the player moves on to the next fragment. If you would like to retry on 4xx segment errors, try calling |
If you would like to be able to provide a hls.js/src/utils/error-helper.ts Lines 49 to 58 in 134da06
|
Yes, you're right, but when we working with livestreams it can be no Also we have the same problem with an 404 error on level m3u8. It's just going crazy 😃 |
Sounds like an HLS serving issue. segments should not be advertised that 404. Your playlist publishing sounds a bit eager. |
Thank you for helping! |
Are you getting the same loop loading issue with v1.4.9? For VOD and live the player should switch levels, if it can not switch because there are no alternatives I would expect a fatal error eventually. |
It's reproducing with 1.4.9
As you can see the player try to load the last fragment several times. I think it happens because there is no comparison with previous try base-stream-controller.ts:
On your test stand it's not a big problem, because Now I process it on our side with handling NETWORK_ERROR, it's works for us. I open this issue just to let your know about problem, and maybe hear a better way to fix it:) |
What version of Hls.js are you using?
1.4.3
What browser (including version) are you using?
Chrome 114.0.5735.198 (Official Build) (x86_64)
What OS (including version) are you using?
MacOs 11.6
Test stream
https://mirismanager.ubicast.eu/media/storage/ts-404.m3u8
Configuration
Additional player setup steps
No response
Checklist
Steps to reproduce
Expected behaviour
The player should wait for the delay configured in fragLoadPolicy/levelLoadPolicy between two attempts and have an attempt limits
What actually happened?
When trying to play live-stream (with VOD it works fine) and have an 404 error on fragment or level there is no delay between attempts, also limits from maxNumRetry also doesn't work, so that we have endless requests for segments/levels with no delays.
Other problem is when level is ok, but .ts have an 404, player retry to fetch level with no delay
har-file: https://drive.google.com/file/d/1aIKrJEn-b46fZDinun26mp0qRi8-a48T/view?usp=sharing
The problem is similar to the one with the old versions of the settings
#4312
Now we solve it with hls.stopLoad() if we have an error, and hls.startLoad() after timeout, but on old versions of hls.js delay works
Console output
Chrome media internals output
No response
The text was updated successfully, but these errors were encountered: