mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
A track reload read its `previous` (the prior window it carries the timeline forward from) before the playlist fetch await, then parsed against that stale snapshot after. When anchor-live-tracks established the shared live anchor during the fetch — stamping every track's timeline via positionAllTracksToAnchor — the in-flight reload wrote a window built on the pre-stamp (un-anchored) snapshot, clobbering the stamp. Anchoring is pin-once, so the track was never re-corrected: its model timeline sat seconds off the anchor and the loader stopped fetching it near currentTime. Observed live on Mux LL-HLS as the selected video track stranded ~hundreds of seconds off the anchor while its un-reloaded ABR-shell siblings stayed anchored — video never buffered, playback stalled. Re-read `previous` from a fresh peek after the fetch and parse against that. With no yield between the re-read and the write, no concurrent writer can interleave, so the stamp is carried forward instead of lost. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@videojs/spf
⚠️ Beta Experimental adoption in real projects.
Overview
@videojs/spf is a lightweight, bundle-size-optimized streaming engine for Video.js 10. It provides
HLS playback with adaptive bitrate switching, WebVTT captions, and MSE support.
Community
If you need help with anything related to Video.js 10, or if you'd like to casually chat with other members: