mirror of
https://github.com/zoriya/v10.git
synced 2026-08-15 10:23:32 +00:00
Convert anchor-live-tracks from N per-track buffer pins to a single shared (media-time <-> PDT) anchor applied to every selected track — video, audio, and now text. A two-state reactor (unanchored -> anchored) positions from the manifest estimate until a selected A/V track has SourceBuffer ground truth, then establishes the shared anchor once (first track to buffer wins) and positions each track onto it by PDT, leaving it to the parser's carry-forward thereafter. The resolveBufferedAnchor seam now takes the standard (track, deps) setup arguments instead of closing over engine scope; the HLS engine's implementation lives in its own generic module (resolve-buffered-anchor) so a future audio-only-live engine can reuse it. anchorLiveTracks is now a makeAnchorLiveTracks<Context>() factory mirroring makeShareSignals. Realizes internal/decisions/live-presentation-anchor.md. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>