Synchronize your Watches: Cross-platform stream synchronization of HLS and DASH
summary
Philo builds synchronized playback for HLS and DASH by reusing the existing manifest timeline and broadcasting a UTC reference time and position so clients calculate target positions. Clients converge slowly—about 15 seconds—to roughly 500 milliseconds of synch, using buffered-time estimation and occasional seeks or tiny playback-rate adjustments. Seeks increase startup latency and can waste buffered content; the server side stays lightweight (state messages and heartbeats) and the prototype runs as a hack‑week feature not yet in production.
AI-written summary · about
chapters (11)
- 0:00Start
- 2:57What makes a Watch Party?
- 6:57Challenges
- 7:48HLS/DASH as a shared timeline
- 9:36Server has source of truth
- 11:30Synchronizer
- 14:43Add Estimated Time to Buffer
- 16:26Add playback rate
- 17:42Seeking is hard!
- 18:36Move the session back
- 20:10Tradeoffs
related talks
21mThe challenges of deploying Apple's Low Latency HLS In Real Life
14mSynchronized horizontal and vertical video without compromises
10mVHS for the streaming era: record and replay for HLS
19mLow Latency Live from a Different Vantage Point
24mDynamic content insertion into live streams across the 3 main streaming formats
27mPerformance of Low-Latency DASH/CMAF and Low-Latency HLS Systems
22mDesigning for Live Stream Failure with Seamless Switching
24mPeople make the difference, or video streaming
