DualSync 🎬
DualSync is a Chrome Extension that synchronizes video playback (play, pause, seek, playback rate) across multiple browser tabs in real-time. It is purpose-built for watching reaction videos perfectly in sync with the original source content.[Currently only working for YouTube, working on adding support for more platforms]
Features
- Real-Time Sync: Play, pause, seek, or change the playback speed on the leader video, and all follower videos instantly match.
- Configurable Time Offsets: Adjust for delayed start times if the reactor pauses at the beginning of their video.
- Picture-in-Picture Overlay: Pop the original video out into a floating, resizable window that sits on top of the reaction video.
- Drift Correction: Automatic background heartbeat ensures videos never drift out of sync during long watch sessions.
- Privacy First: 100% offline. No backend server, no data collection. Sync commands are passed securely between your own local tabs.
How It Works
DualSync uses a Hub-and-Spoke architecture within Chrome Manifest V3:
- Content Scripts hook into the HTML5
<video> elements using MutationObserver to handle dynamically loaded single-page applications like YouTube.
- Background Service Worker acts as the central router, tracking state in
chrome.storage.session and relaying commands.
- Echo Prevention guards against infinite loops when programmatically forcing video state updates.
Installation (Developer Mode)
- Clone this repository:
git clone https://github.com/YOUR-USERNAME/DualSync.git
- Open Chrome and navigate to
chrome://extensions/
- Enable Developer mode in the top right corner.
- Click Load unpacked and select the DualSync directory.
License
MIT License