-
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
Playback starts from 3 seconds only in compiled form (vite) #5617
Comments
The bug does not reproduce on versions <= 1.3.5, also the bug does not reproduce when running a dev version (without minification). The bug does not reproduce on another video. |
Is the issue only reproducible with this setting on? It's listed as experimental in the docs. |
Nope, without |
I've prepared a github repo with minimal reproducible code: You can try it by yourself: Scenario 1 (working):
Scenario 2 (the bug):
|
Can you attach full debug logs to the issue. This should include segment loading, demuxing, and buffer append details that should provide some insight into why the gap controller seeks over such a large gap on start. |
Sure:
|
I can reproduce the issue by providing a bad
When compiling the player externally, the built in IIFE that wraps the library used to inject the worker may be removed. This results the worker setup failing. If your build and embed do not support the worker setup, either disable the worker using |
@robwalch, thanks, it works! But why this issue is not reproducible on version <= 1.3.5? |
Different worker setup and worker setup error handling I suppose.
In many cases external builds broke worker support and failed all-together. Maybe you got lucky? |
Here's a fix: |
Note that with the fix above, the segments that could not complete because of the worker setup error still get reloaded. The fix just makes sure that they are reloaded in the correct order. Always make sure that your hls.js embed supports worker setup, otherwise disable it. |
* patch/v1.4.x: Reset loading start on worker setup error Fixes #5617 Never back-track on first fragment to avoid loop loading Fixes #5609 Only load earlier subtitle fragment if discontinuity matches Remove requirement for subtitles to be synced with media PTS when WebVTT MPEGTS map is not present Wait for level switch after fragment or key error with level switch action Fixes #5598 Reset loader aborted state on internal retry #5588 Fix issue where large subtitle target-durations result in incorrect subtitle segment selection Fixes #5595 Keep level switch error actions within player constraints Do not adjust the end time of metadata cues that overlap with cues of another type (id3, emsg, daterange) Fixes #5531 Resume fragment loading after level switch follows level error Fixes #5498
What version of Hls.js are you using?
1.4.0 — 1.4.7
What browser (including version) are you using?
Chrome 114.0.5735.198 (Official Build) (arm64)
What OS (including version) are you using?
Mac OS Ventura
Test stream
https://slingshot-assets-development.s3.us-east-2.amazonaws.com/video/a3bdbb85-ffb1-4f3b-9f99-34dfa1a0e869/HLS/258e7546b35fd10d6550ce45204207c6_1080.m3u8
Configuration
Additional player setup steps
No response
Checklist
Steps to reproduce
Expected behaviour
Playback starts from 0 second.
What actually happened?
Playback starts from 3 second.
Console output
[warn] > skipping hole, adjusting currentTime from 0 to 3.5425
Chrome media internals output
No response
The text was updated successfully, but these errors were encountered: