Video Synchronization
Understand how MultiMon syncs videos of the same duration and the limitations of time-based sync.
How Synchronization Works
MultiMon automatically synchronizes videos that have the same duration. When you load multiple videos with matching lengths, they play together in sync.
Duration-Based Grouping
Videos are grouped for synchronization based on their duration:
- Videos must be within 100ms of each other to sync
- Only videos in the same duration group synchronize together
- Videos with different durations loop independently
For example, three 60-second videos will sync together, while a 45-second video plays on its own loop.
Sync Tolerance
The default tolerance is 100ms. You can adjust this in Settings:
- DurationToleranceMs - Milliseconds of allowed difference
- AutoSyncSameDuration - Enable/disable automatic sync
See the Settings guide for detailed configuration options.
Sync Type: Time-Based
MultiMon uses time-based synchronization, not frame-based. Understanding this distinction is important for professional use.
How It Works
- The first loaded video becomes the reference (master)
- Other videos (slaves) adjust their speed to match the master
- A sync timer runs at ~60fps (every 16ms) checking positions
- Drift is calculated as the difference between slave and master positions
Drift Correction
| Drift Amount | Correction Method |
|---|---|
| 0-16ms | No correction needed |
| 16-500ms | Gradual speed adjustment (0.95x to 1.05x) |
| >500ms | Hard seek to correct position (rare) |
Speed adjustments are subtle - slaves speed up slightly when behind or slow down when ahead.
Limitations and Drawbacks
Time-based synchronization has inherent limitations you should understand:
Not Frame-Perfect
- Sync accuracy is in milliseconds, not frames
- Videos may drift by 1-2 frames during playback
- Acceptable for most use cases, but not for broadcast-critical applications
Speed Adjustment Affects Audio
- When correcting drift, playback speed changes slightly (0.95x to 1.05x)
- This can cause subtle pitch variations in audio
- Most noticeable in musical content or sustained tones
Master-First Approach
- The first loaded video always becomes the reference
- No intelligent selection of the most stable source
- If the master video stutters, all synced videos follow the stutter
Variable Framerate Issues
- Videos with variable frame rate (VFR) may desync
- Common in screen recordings and phone videos
- Always export with constant frame rate (CFR) for reliable sync
Codec Differences Not Considered
- Only duration matters for grouping, not codec or framerate
- H.264 and ProRes of the same duration will sync together
- Different decode times may introduce subtle timing variations
LibVLC Timing Quirks
- Position queries may lag actual playback by a few milliseconds
- Seek operations are not instantaneous
- Audio device switching can cause brief playback drops
Best Practices
Follow these guidelines for reliable synchronization:
Source Material
- Use identical source files when possible
- Match codec and framerate across all videos
- Export with CFR (constant frame rate), not VFR
- Keep videos within 100ms duration tolerance
Format Recommendations
| Priority | Format | Why |
|---|---|---|
| Best | HAP | Frame-accurate, consistent timing |
| Good | ProRes | Professional codec, reliable timing |
| Acceptable | H.264 MP4 | Wide compatibility, variable decode time |
| Avoid | VFR recordings | Timing unpredictable |
Setup Tips
- Load videos in the same order each time for consistent master selection
- Test sync before your event using Perform Mode (F11)
- Monitor for drift during long playback sessions
- Consider HAP format for most consistent results
When Sync Matters Most
High-Impact Scenarios
- Video walls displaying continuous content across monitors
- Synchronized installations where timing is visible
- Live events with multiple screens showing related content
Lower-Impact Scenarios
- Background ambience loops in different areas
- Digital signage with independent content per screen
- Presentation support with varied visual elements
Troubleshooting Sync Issues
Videos Won’t Sync
- Check durations are within 100ms tolerance
- Verify AutoSyncSameDuration is enabled in settings
- Try reloading videos in the same order
Noticeable Drift
- Convert to HAP format for better consistency
- Check source videos are CFR, not VFR
- Reduce system load from other applications
Audio Pitch Warbling
- Normal during drift correction phases
- More noticeable with musical content
- Consider using separate audio track via Audio Routing
Next Steps
- Learn about HAP Codec for the most consistent sync
- Set up a Video Wall for single-decode multi-monitor display