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

Playlist loading errors must return fatal after all levels and retries exhausted #5498 (Still persist) #5534

Closed
4 of 5 tasks
whatever1211 opened this issue Jun 2, 2023 · 4 comments

Comments

@whatever1211
Copy link

whatever1211 commented Jun 2, 2023

What version of Hls.js are you using?

1.4.4

What browser (including version) are you using?

Chrome 114.0.5735.90

What OS (including version) are you using?

Windows 10

Test stream

https://vod-zlr2.tv360.vn/video1/2022/11/10/09/7062f3b1/7062f3b1-832c-4b04-b3d3-e5b8ef1ffb3a_m.m3u8?timestamp=1686284460&token=b1f4c65bfcbeadc4d0e441fe000a08f0

Configuration

Running on hls demo page https://hlsjs.video-dev.org/demo with default configure.

Additional player setup steps

No response

Checklist

Steps to reproduce

  1. Running on hls demo page with default configure
    https://hlsjs.video-dev.org/demo/?src=https%3A%2F%2Fvod-zlr2.tv360.vn%2Fvideo1%2F2022%2F11%2F10%2F09%2F7062f3b1%2F7062f3b1-832c-4b04-b3d3-e5b8ef1ffb3a_m.m3u8%3Ftimestamp%3D1686284460%26token%3Db1f4c65bfcbeadc4d0e441fe000a08f0&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==
    (Please info if the test link is expired, we will provide a new one)
  2. After few seconds (5~10s).
  3. Turn Network offline in Chrome Devtools.
  4. Hls.js will try to retry until halt (No fatal error throw).
  5. Turn Network online again.
  6. Player stuck in spinning.

Expected behaviour

After number of level loader retries, should ended with fatal error.
Hls js_1 4 4_NetworkError
hlsjs.video-dev.org-1685673654745.log

What actually happened?

End with no fatal error.

Console output

Check log file hlsjs.video-dev.org-1685673654745.log in Expected behaviour* field

Chrome media internals output

No response

@whatever1211 whatever1211 added Bug Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. labels Jun 2, 2023
@robwalch
Copy link
Collaborator

robwalch commented Jun 2, 2023

The logs end before the final retry of the last level. If you want a fatal error to occur sooner, adjust the playlist loading policy.

Are you sure that this was the last attempt by the player?

level-controller.ts:351 [log] > [level-controller]: Switching to level 0 from level 1
main.js:734 Error event: {type: 'networkError', details: 'levelLoadError', fatal: false, url: 'https://vod-zlr2.tv360.vn/video1/2022/11/10/09/7062f3b1/7062f3b1-832c-4b04-b3d3-e5b8ef1ffb3a_2_.m3u8', 

@robwalch
Copy link
Collaborator

robwalch commented Jun 2, 2023

I am able to reproduce. What I am seeing is that level 0 was already loaded, so the player successfully switches to level 0, as level 1 fails. Why fragment loading does not resume is the issue.

@robwalch robwalch added Confirmed and removed Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. labels Jun 2, 2023
@robwalch
Copy link
Collaborator

robwalch commented Jun 2, 2023

Posted a fix scheduled for v1.5.0 with #5537.

v1.3.5 jumps straight down to 0 without fragment requests being interrupted, so it avoids this case which is probably still there, but less likely to occur. Let me know if a v1.4.5 patch would help as v1.5.0 won't land until later this summer.

@robwalch robwalch added this to the 1.5.0 milestone Jun 2, 2023
@whatever1211
Copy link
Author

Yes, a v1.4.5 patch would be a great help, as I was seeing this bug happens more than often.
I have tried your changes with #5537 and it has thrown a fatal: true fragLoadError for video and fatal: true levelLoadError for live successfully.

@robwalch robwalch modified the milestones: 1.5.0, 1.4.5 Jun 5, 2023
@robwalch robwalch closed this as completed Jun 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants