Skip to content

fix(HLS): Fix resync issues on Safari #8808

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

Merged
merged 2 commits into from
Jun 26, 2025

Conversation

tykus160
Copy link
Member

@tykus160 tykus160 commented Jun 26, 2025

Removes duplicated logic around timestamp offset checks - now check is only in resync() method. It should stay there, because it ensures it will be executed only in sequence mode and also avoids otherwise unnecessary abort() call.

Increases threshold to 150 ms as it was the originally proposed value and gives better experience.

Now timestamp offset change won't be applied in sequence mode if it's less than 150ms from buffer end, regardless of manifest type.

@tykus160 tykus160 added this to the v4.16 milestone Jun 26, 2025
@tykus160 tykus160 requested a review from avelad June 26, 2025 08:27
@tykus160 tykus160 added type: bug Something isn't working correctly component: HLS The issue involves Apple's HLS manifest format priority: P1 Big impact or workaround impractical; resolve before feature release browser: Safari Issues affecting Safari or WebKit derivatives labels Jun 26, 2025
@avelad
Copy link
Member

avelad commented Jun 26, 2025

@shaka-bot test

@shaka-bot
Copy link
Collaborator

@avelad: Lab tests started with arguments:

  • pr=8808

@shaka-bot
Copy link
Collaborator

Incremental code coverage: 100.00%

@avelad avelad merged commit 7d43ee4 into shaka-project:main Jun 26, 2025
46 of 49 checks passed
joeyparrish pushed a commit that referenced this pull request Jun 26, 2025
Removes duplicated logic around timestamp offset checks - now check is
only in `resync()` method. It should stay there, because it ensures it
will be executed only in sequence mode and also avoids otherwise
unnecessary `abort()` call.

Increases threshold to 150 ms as it was the originally proposed value
and gives better experience.

Now timestamp offset change won't be applied in sequence mode if it's
less than 150ms from buffer end, regardless of manifest type.
joeyparrish pushed a commit that referenced this pull request Jun 27, 2025
Removes duplicated logic around timestamp offset checks - now check is
only in `resync()` method. It should stay there, because it ensures it
will be executed only in sequence mode and also avoids otherwise
unnecessary `abort()` call.

Increases threshold to 150 ms as it was the originally proposed value
and gives better experience.

Now timestamp offset change won't be applied in sequence mode if it's
less than 150ms from buffer end, regardless of manifest type.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
browser: Safari Issues affecting Safari or WebKit derivatives component: HLS The issue involves Apple's HLS manifest format priority: P1 Big impact or workaround impractical; resolve before feature release type: bug Something isn't working correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants