Skip to content

Fix live autoplay with HLS.js-first playback and faster seek readiness - #4

Merged
pushpinderbal merged 1 commit into
mainfrom
fix/live-autoplay
Sep 30, 2026
Merged

pushpinderbal merged 1 commit into
mainfrom
fix/live-autoplay

Conversation

@pushpinderbal

Copy link
Copy Markdown
Owner

Browsers can advertise native HLS support and still reject a provider stream. The native-first retry path could delay playback and lose the autoplay request, leaving live streams paused. Prefer HLS.js when supported and use native playback when HLS.js is unavailable.

Keep lazy decoder loading, worker processing, 30-second buffer limits, and media cleanup. Start the decoder download alongside upstream preparation. After a server-side seek, check readiness immediately instead of waiting for the existing polling timer, without overlapping requests. Preserve explicit pauses across seeking and clear pending autoplay on pause.

Validation

  • Production frontend build passed.
  • Browser suite: 54 passed; one optional screenshot test skipped.
  • Real Chrome/FFmpeg integration passed for HLS.js and native-only playback, including autoplay, pause/resume, local and server-side seeks, live channel switching, and worker/session cleanup.
  • Local FFmpeg fixture: first decoded frame observed in 1,075 ms; server-side seek resumed decoded playback in 1,090 ms. These are fixture measurements, not provider latency benchmarks.
  • git diff --check passed.

@pushpinderbal
pushpinderbal merged commit d981ae8 into main Sep 30, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant