網頁應用
Home Media — DJ 廣播式同步音樂平台
類廣播電台的多人同步聽歌平台:任何人可以開一個「台」當 DJ 放音樂,有興趣的同事點進去就能即時跟聽。DJ 切歌或調整播放進度,所有在台裡的人近乎毫秒級同步跟隨。
專案概覽
類廣播電台的多人同步聽歌平台:任何人可以開一個「台」當 DJ 放音樂,有興趣的同事點進去就能即時跟聽。DJ 切歌或調整播放進度,所有在台裡的人近乎毫秒級同步跟隨。
為什麼會做
背景
想讓同事之間有一個輕鬆的共享音樂體驗——不只是各聽各的播放清單,而是「一起聽同一位 DJ 現在放的歌」,像電台一樣。
遇到什麼問題
問題
多人同步播放的難點在延遲:每個人的裝置、網路、緩衝狀態都不同,要讓所有聽眾在 DJ 切歌 / 拖動進度時幾乎同時跟上、又不能各自卡頓,需要精準的時間對齊機制。而且行動裝置鎖屏後音訊常被系統中斷。
如何解決
解法
以廣播來源為單一事實:DJ 的播放狀態(曲目、進度、播放/暫停)透過即時通道推送,聽眾端做時鐘對齊與漂移補償,達到近毫秒級跟隨。iPhone 做成 PWA,處理背景 / 鎖屏持續播放與音訊 session 中斷復原(stale download 取消、audio element 為唯一音源的鎖屏 fallback)。
我負責什麼
我的角色
Full-stack: Realtime Sync Architecture, Clock Alignment, PWA Background Playback, Media Pipeline
使用技術
技術棧
Node.jsExpressTypeScriptReactMUI 5WebSocket / 即時同步PWA (背景播放)SQLiteyt-dlpDocker
踩過哪些坑
挑戰
成果
成果
多人同步聽歌:DJ 切歌 / 調整進度時聽眾近毫秒級跟隨;iPhone PWA 支援背景與鎖屏持續播放。
