# VLC - Synchronized Remote Playback ## Overview This guide shows you how to watch videos together with someone in a different location using **Syncplay** with VLC Media Player. Syncplay provides true synchronized playback where play, pause, and seek commands automatically sync between all viewers—perfect for long-distance watch parties. **Key question: Are transports linked?** - ✅ **With Syncplay: YES** - When one person plays, pauses, or seeks, everyone's player responds automatically - ❌ **With VLC's native netsync: NO** - Only timeline position syncs, not transport controls - ❌ **With VLC streaming: NO** - Only the host has control **Recommended solution: Use Syncplay** (covered first below). ## Syncplay with VLC (Recommended Method) ### What It Does **Syncplay** is a free, open-source tool that wraps around VLC (or other media players) to provide true synchronized playback: - ✅ **Transports are fully linked** - Play, pause, and seek commands sync automatically between all viewers - ✅ **Built-in chat** - Text communication without needing a separate app - ✅ **Readiness indicators** - See when everyone is ready to start - ✅ **No port forwarding required** - Works through public servers - ✅ **Minimal latency** - Sub-second synchronization ### Step-by-Step Setup (Both Viewers) #### 1. Installation 1. Download Syncplay from **[syncplay.pl](https://syncplay.pl/)** 2. Install on both computers (available for Windows, macOS, Linux) 3. Ensure **VLC Media Player** is installed and up-to-date on both computers #### 2. Share the Same Media File Both viewers need **identical copies** of the video file: - Transfer via cloud storage (Google Drive, Dropbox, OneDrive) - Use file transfer services (WeTransfer, Filemail) - Ensure filenames are **exactly the same** (including extension) #### 3. Configure Syncplay (First Launch) When you first launch Syncplay, you'll see a configuration window with several fields: **Connection Settings:** - **Server address:** - Click the dropdown (blue arrow button) - Choose a **public server** from the list (e.g., `syncplay.pl:8995` or `syncplay.pl:8999`) - Both viewers **must use the same server** - Alternatively, enter a custom server if someone is hosting privately - **Server password (if any):** - Leave blank for public servers - Only needed if connecting to a password-protected private server - **Username (optional):** - Enter a display name so you can identify each other (e.g., "Nakul", "Fiancée's Name") - Doesn't need to match between users—pick unique names - **Default room:** - This is **critical**: Both viewers must enter the **same room name** (case-sensitive) - Create a unique room name you both agree on (e.g., `MovieNight2025`, `OurWatchParty`) - Anyone with this room name can join your session, so make it unique **Media Player Settings:** - **Path to media player:** - Syncplay auto-detects VLC's location - Default macOS path: `/Applications/VLC.app/Contents/MacOS/VLC` - Default Windows path: `C:\Program Files\VideoLAN\VLC\vlc.exe` - If auto-detection fails, click **Browse** and locate VLC manually **Other Settings:** - ✅ Check **Enable shared playlists** if you want to queue multiple videos #### 4. Launch Syncplay 1. Click **Store configuration and run Syncplay** 2. Syncplay will open in the background with a small control window 3. VLC will launch automatically #### 5. Load Your Video **Both viewers do this:** 1. In VLC (opened by Syncplay), go to **File → Open File** (or drag-and-drop) 2. Select your shared video file 3. **Do not press play yet** #### 6. Verify Connection In the Syncplay window: - You should see your **room name** displayed - You should see **both usernames** listed - File status should show the video filename for both users - If filenames don't match exactly, Syncplay will warn you #### 7. Start Watching Together 1. Once both users have loaded the file, Syncplay shows **readiness indicators** 2. Either person can press **Play** in VLC 3. **Both VLC instances will start playing simultaneously** 4. Any pause, seek, or play command from either person syncs instantly ### Using Syncplay During Playback **Synchronized Actions:** - **Play/Pause:** Works from either person's VLC or Syncplay window - **Seeking:** Jump to any timestamp—both players follow - **Speed changes:** Adjusting playback speed syncs (if enabled in settings) **Chat Feature:** - Type messages in the Syncplay window to communicate - Messages appear in real-time for all viewers in the room - Useful for coordinating bathroom breaks or discussing what you're watching **Pausing for Lag:** - If one person's playback lags (slow internet, buffering), Syncplay auto-pauses everyone - Prevents one person from falling behind - Resume when ready—sync is maintained ### Troubleshooting Syncplay **Problem: Can't see each other in the room** - Verify you're both using the **same server address** - Check that the **room name** is identical (case-sensitive) - Ensure both users clicked "Store configuration and run Syncplay" **Problem: "Filename mismatch" warning** - File names must be **byte-for-byte identical** (including extension) - Rename files to match exactly (e.g., `Movie.mp4` on both) - Avoid special characters or unicode differences **Problem: VLC doesn't launch automatically** - Check the **Path to media player** in Syncplay settings - Manually browse to VLC's executable if auto-detection failed - On macOS, ensure you selected the `VLC` file inside `VLC.app/Contents/MacOS/` **Problem: Playback keeps pausing** - One person may have slow internet/buffering issues - Disable **pause on desync** in Syncplay settings (advanced) - Close bandwidth-heavy apps (downloads, uploads, streaming) **Problem: Out of sync by a few seconds** - Click **Resync** in Syncplay window - Ensure both files are truly identical (same source, not re-encoded) - Check network stability (wired connection preferred over Wi-Fi) ### Advanced Syncplay Features **Shared Playlists:** - Queue multiple videos for sequential playback - One person adds files to the playlist; everyone sees them - Great for TV show marathons **Controlled Rooms:** - Set one person as "operator" who controls playback - Others can watch but can't pause/seek without permission - Enable in Syncplay settings → Advanced **Custom Servers:** - Host your own Syncplay server for better privacy/control - Requires port forwarding (default port 8999) - Instructions at [syncplay.pl/guide](https://syncplay.pl/guide/) **Rewind Threshold:** - Adjust how far out of sync before Syncplay forces a resync - Default is 2 seconds—increase for slower connections ## Alternative Method 1: VLC Netsync (Not Recommended) ### What It Does VLC's built-in `netsync` feature synchronizes the playback position (timeline) between a master and client instance over a network. **Limitations:** - ❌ **Transports are NOT linked** - Play, pause, and seek commands do not sync automatically - ❌ Both users must manually press play at the same time - ❌ If one person pauses, the other must manually pause too - ❌ Requires port forwarding (firewall configuration) - Only synchronizes playback speed/position within milliseconds **Verdict:** Outdated and cumbersome. Use Syncplay instead. ### Setup Instructions (For Reference) #### On the Master Computer (Host) 1. Open VLC and load your media file 2. Go to **Tools → Preferences** 3. Click **Show settings: All** (bottom left) 4. Navigate to **Advanced → Network Sync** 5. Enable **Network master sync** 6. Note your **IP address** (find via `System Preferences → Network` on Mac, or `Settings → Network` on Windows) 7. Start playback #### On the Client Computer (Remote Viewer) 1. Open VLC and load the **same media file** (must be identical) 2. Go to **Tools → Preferences → Show settings: All** 3. Navigate to **Advanced → Network Sync** 4. Enable **Network client sync** 5. Enter the master's **IP address** in the **Master server IP** field 6. Leave **Master server port** at default (9875) unless changed 7. Start playback at approximately the same time as the master ### Troubleshooting Netsync - **Firewall:** Ensure port 9875 (UDP) is open on both networks - **Same file required:** Both copies must be byte-identical (same encoding, duration) - **Drift:** If sync drifts over time, restart both instances - **NAT/Router issues:** Port forwarding may be required if connecting across different networks ## Alternative Method 2: Streaming via VLC (One-Way Broadcast) ### What It Does One person streams media to the other via HTTP/RTP. The viewer watches a live stream rather than playing a local file. **Limitations:** - Significant latency (5-30 seconds depending on network) - Viewer has no transport control - Requires good upload bandwidth from the host ### Setup Instructions #### On the Host Computer 1. Open VLC and go to **Media → Stream** 2. Add your media file and click **Stream** 3. Click **Next**, then select **HTTP** as the destination 4. Set a **port** (default 8080) and **path** (e.g., `/stream`) 5. Click **Next**, choose a **transcoding profile** (H.264 + MP3 recommended) 6. Click **Stream** to begin broadcasting 7. Share your public IP address and stream URL (e.g., `http://YOUR_IP:8080/stream`) #### On the Viewer Computer 1. Open VLC and go to **Media → Open Network Stream** 2. Enter the host's stream URL: `http://HOST_IP:8080/stream` 3. Click **Play** ### Streaming Tips - **Port forwarding:** Host must forward the chosen port (8080) in their router settings - **Bandwidth:** Requires 3-10 Mbps upload speed depending on video quality - **Latency:** Expect 10-30 second delay; not suitable for real-time interaction - **Security:** Use a VPN or password-protect the stream for privacy ## Quick Comparison: Which Method Should You Use? | Method | Transport Sync | Setup Difficulty | Latency | File Sharing Required | Verdict | |--------|---------------|------------------|---------|----------------------|---------| | **Syncplay** | ✅ Yes | Easy | <1 second | ✅ Yes | **Best choice** | | **VLC Netsync** | ❌ No | Medium | <1 second | ✅ Yes | Outdated | | **VLC Streaming** | ❌ No | Hard | 10-30 seconds | ❌ No | High latency | **Bottom line:** Use **Syncplay** unless you have a specific reason not to. It's the only method with true transport synchronization and requires no network configuration. ## How to Get the Same File to Both Viewers For Syncplay (and netsync), both people need **identical copies** of the video file: **Cloud Storage (Easiest):** - Upload to **Google Drive, Dropbox, OneDrive, or iCloud** - Share the download link with your fiancée - Both download the file to your computers - Ensure you download (not stream) to avoid buffering issues **Direct File Transfer:** - **WeTransfer** (up to 2GB free, no account needed) - **Filemail** (up to 50GB free) - **Firefox Send alternatives** (send.vis.ee, sendbig.com) **For Large Files (>5GB):** - **Torrent clients** (legal for personal content) - **Physical media:** Mail a USB drive if internet is slow - **Syncthing:** Peer-to-peer file sync (no cloud middleman) **Important:** Ensure both files are **byte-identical**: - Download from the same source - Don't re-encode or compress on either end - Filenames should match exactly (including extension) ## Tips for the Best Watch Party Experience **Before You Start:** - **Test run:** Do a 5-minute test with a short video before your actual watch session - **Same file check:** Verify filenames match exactly and both files play without issues - **Room name:** Agree on a unique room name in advance (text it to each other) **Network Quality:** - **Wired connection preferred:** Ethernet is more stable than Wi-Fi - **Close bandwidth-heavy apps:** Pause downloads, uploads, cloud syncs - **Speed test:** Ensure both have at least 5 Mbps download (test at speedtest.net) **Audio/Video Communication:** - **Separate voice chat:** Use Discord, Zoom, FaceTime, or a phone call for talking - **Mute during playback:** Prevents audio feedback/echo - **Headphones recommended:** Better audio quality and prevents echo **Subtitles:** - If using external subtitles (.srt, .ass), both viewers need the same subtitle file - Place subtitle file in the same folder as the video (VLC auto-loads it) - Ensure subtitle encoding matches (UTF-8 is safest) **Intermission/Breaks:** - Either person can pause—it syncs automatically with Syncplay - Use the chat to coordinate bathroom breaks or discuss the show - Syncplay shows when both viewers are ready to resume ## Related Resources - [[Immich]] - Self-hosted photo/video library for sharing personal media - [[Unraid]] - Media server platform for centralized storage - `Computer Tech/Network Engineering/` - Networking fundamentals for troubleshooting connectivity ## References - Syncplay official site: [syncplay.pl](https://syncplay.pl/) - VLC documentation: [wiki.videolan.org](https://wiki.videolan.org/)