I'm running into a weird issue with CapCut. My masks aren't lining up with what's actually showing in the video during playback, even though everything looks correct when I go through it frame by frame.
Has anyone else had this happen? Is there a fix for it, or am I missing a setting somewhere?
Hi,
This is a common issue in CapCut.
When a mask looks perfect frame-by-frame while scrubbing or paused but slips out of alignment during live playback, the issue stems from CapCut using a temporary lower-resolution engine or proxy to handle real-time rendering.
During active playback, CapCut drops rendering precision to keep frame rates smooth, causing positional offsets between your mask coordinates and the underlying video frame.
1. Disable Proxy Mode or Preview Quality Reduction
If Proxy Mode or low-quality playback is turned on, CapCut rescales the preview window. This scale shift often causes mask bounding boxes to drift out of sync while playing.
-
Desktop (PC/Mac):
- Click on any blank space on your timeline (so no clip is selected) to bring up Details / Project Settings on the right panel.
- Click Modify next to Project Settings.
- Go to the Performance tab.
- Toggle Proxy OFF (or set preview quality back to Quality Priority instead of Performance).
-
Mobile:
- Tap the player resolution menu (usually top right or on the player options) and switch from Performance Mode / Low Quality back to Original / High Quality.
2. Nest / Compound the Clip Before Masking
If your clip has speed changes, stabilization, re-framing, or keyframes applied BEFORE masking, CapCut’s render engine can process the mask before or after those transforms asynchronously during live playback.
- Select your clip on the timeline.
- Right-click (or hold/select options on mobile) and choose Create Compound Clip.
- Apply your mask and keyframes directly to the new Compound Clip.
Why this works: Compounding bakes all previous speed adjustments or scale transforms into a single static video stream, forcing the mask coordinates to stick precisely.
3. Convert Variable Frame Rate (VFR) Footage
If your footage was recorded on a smartphone or via screen recording (OBS, iPhone video, Twitch clips), it likely uses Variable Frame Rate (VFR).
- During frame-by-frame scrubbing, CapCut calculates exact frame points.
- During live playback, VFR causes clock drift, making keyframed masks lag behind or jump ahead.
Fix: Transcode the clip to a Constant Frame Rate (CFR) (e.g., 30 fps or 60 fps) using a free tool like HandBrake, or re-export the raw clip once from CapCut before editing/masking it.
4. Clear Cache & Enable Hardware Acceleration
A bloated preview cache can cause playback stutter and desync.
- Clear Cache: Go to CapCut Settings → Draft / Media → Delete Cache.
- Hardware Acceleration: Go to Settings → Performance → ensure Hardware Encoding / Hardware Decoding are enabled. Restart CapCut afterward.
How to test if it's just preview lag
If the mask is properly aligned when paused on keyframes, it usually exports correctly because the final export engine renders frame-by-frame without preview-throttling.
Try doing a quick 5-second test export of the masked section. If the exported file plays smoothly with no drift, you know it's purely a real-time preview display glitch.