Sync Issues
Solutions for synchronization issues when using recordings in NLEs.
Understanding Sync in PixelRecorder
PixelRecorder embeds SMPTE timecode in all recordings:
- MOV files contain timecode track
- BWF audio files contain BEXT metadata
- All streams recorded simultaneously share the same timecode
Common Sync Problems
Clips Don’t Align in NLE
-
Verify timecode is enabled
- Settings > Timecode > Embed Timecode: ON
- All streams should have this enabled
-
Use matching frame rates
- All streams must use same frame rate
- NLE project must match recording frame rate
-
Import correctly
- Use “Read embedded timecode” option
- Don’t let NLE assign timecode on import
Timecode Not Recognized by NLE
Different NLEs handle timecode differently:
DaVinci Resolve
- In Media Pool, right-click clip
- Select “Clip Attributes”
- Verify timecode shows correctly
- If wrong, manually set “Starting Timecode”
Adobe Premiere Pro
- Right-click clip in Project panel
- Select “Modify” > “Timecode”
- Ensure “Use Media Source” is selected
Final Cut Pro X
- Select clip in browser
- Open Inspector (Cmd + 4)
- Check “Info” > “Timecode”
- Use “Modify” > “Adjust Content Timing” if needed
Audio Drift
Audio gradually goes out of sync:
-
Match sample rates
- Use 48kHz for all audio
- Avoid 44.1kHz for video production
-
Avoid Bluetooth
- Bluetooth introduces variable latency
- Use wired audio devices
-
Check for dropped frames
- Dropped frames cause sync drift
- See Performance Issues guide
Offset Between Streams
If streams have consistent offset:
-
Check stream start times
- All streams should start simultaneously
- Verify no delays in stream configuration
-
Verify timecode settings match
- Same frame rate
- Same drop-frame setting
- Same start timecode (Time of Day)
-
Manual correction in NLE
- If consistent offset exists
- Apply timecode offset to affected clips
Sync Workflow Best Practices
Before Recording
-
Use Time of Day timecode
- Settings > Timecode > Start: Time of Day
- All streams get same reference
-
Match all settings
- Same frame rate on all streams
- Same drop-frame setting
- Same sample rate for audio
-
Start all streams together
- Use global Record button
- Don’t start streams individually
During Recording
-
Don’t pause streams separately
- Pause/resume affects all streams together
- Individual pause breaks sync
-
Monitor for issues
- Watch for dropped frame warnings
- Check audio levels
In Post-Production
-
Import with timecode
- Enable timecode reading in NLE
- Don’t transcode before import
-
Verify before editing
- Check one clip from each stream
- Confirm sync before deep editing
-
Use multicam features
- Create multicam clip
- NLE syncs by timecode automatically
Drop Frame Timecode
When to use Drop Frame
- 29.97 fps (NTSC 30)
- 59.94 fps (NTSC 60)
- When accurate real-world time needed
When to use Non-Drop
- 24, 25, 30, 50, 60 fps
- Frame counting accuracy more important
- Post-production workflows
Setting in PixelRecorder
Settings > Timecode > Drop Frame:
- Auto: Drop frame for 29.97/59.94
- Force Non-Drop: Always use non-drop
Troubleshooting Checklist
- Timecode embedding enabled
- All streams same frame rate
- All streams same drop-frame setting
- All audio at 48kHz
- No Bluetooth audio devices
- No dropped frames during recording
- NLE set to read embedded timecode
- NLE project matches recording frame rate
Still Having Sync Issues?
If sync problems persist:
- Export a short test recording
- Check timecode in MediaInfo or similar tool
- Verify timecode matches across all files
- Contact support with:
- Recording settings used
- NLE and version
- Sample files if possible