Replace manual MSE + sync loop with hls.js for video playback
Use hls.js on the video-only playlist (track=1) for fast video start,
while fetching the single-segment audio blob in the background. Removes
~120 lines of manual M3U8 parsing, byte-range fetching, MediaSource
buffer management, and the fragile playbackRate-based audio sync loop
that caused crackling and drift. Audio now just seeks once to match
video position and plays without continuous correction.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>