HomeBlog › Why Video Is Out of Sync

Why Your Video Is Out of Sync (and How to Fix It)

Updated April 25, 2026 · ~8 minute read

Audio and video drifting apart is one of the most annoying things that can happen during a stream. The mouth moves, the words arrive half a second later. An explosion happens before the sound. It's subtle at first, then impossible to ignore. Here's why it actually happens and how to fix it — not just "restart the browser" but the real underlying reasons so you can diagnose it quickly.

The short version

Audio and video are two separate data streams. In a healthy playback pipeline they're locked together by timestamps. When something disrupts that lock — CPU overload, a driver mismatch, a buffer underrun, a capture handoff — one stream pulls ahead of the other. The longer the session runs, the wider the gap can become. Fixing it usually means either relieving the pressure on whichever component is struggling, or resetting the pipeline entirely.

Cause 1: GPU hardware acceleration conflict

Modern browsers offload video decoding to the graphics card (GPU) to save CPU resources. The problem is that the GPU decoder runs on a slightly different clock than the CPU handling the audio. When they fall out of step — which is more likely on machines with integrated graphics, older drivers, or when the GPU is under load from something else — the audio and video timestamps diverge.

How to tell if this is your problem

The desync starts small and gets gradually worse over the session. It doesn't jump — it drifts. After 30 minutes of watching, the gap might be 2–3 seconds.

The fix

  1. In Chrome: Settings → System → toggle off "Use hardware acceleration when available" → Relaunch.
  2. In Edge: Settings → System and performance → toggle off "Use hardware acceleration when available" → Restart.
  3. In Firefox: Settings → Performance → uncheck "Use recommended performance settings" → uncheck "Use hardware acceleration when available."

This pushes video decoding back onto the CPU, which runs on the same clock as audio. The CPU load goes up slightly, but the sync stays locked. On most modern machines the difference in CPU load is negligible.

Cause 2: Audio output device mismatch

If your system has more than one audio output — headphones plugged in while a monitor is set as the default speaker, or a Bluetooth device that takes a second to wake up — the browser may be sending audio to a different device than expected. Each device has its own buffer, and different buffer sizes create different latency offsets.

Check your system's default audio output (Windows: right-click the speaker icon → Sounds → Playback tab; Mac: System Settings → Sound → Output) and make sure it matches what you're actually listening through. Then reload the streaming page.

Bluetooth audio specifically

Bluetooth audio codecs introduce 100–300ms of latency compared to wired headphones. If you're using Bluetooth headphones and the audio arrives before the video (dialogue before lip movement), this is likely why. Switch to wired audio for the most accurate sync, or adjust: some audio players and operating systems let you set a manual audio delay offset to compensate.

Cause 3: CPU overload causing frame drops

Screen capturing, encoding and transmitting a video stream is CPU-intensive. If the host's machine is simultaneously running a game, doing a background Windows Update, encoding another video, or just running a lot of browser tabs, the CPU starts dropping video frames to keep up — but audio keeps playing at full rate. The result is video that appears to slow down or stutter while audio races ahead.

Symptoms

The video feels "choppy" — it moves in bursts rather than smoothly. Audio is fine. This is frame drop, not desync in the traditional sense, but the practical effect is the same.

The fix

Cause 4: Network jitter and packet reordering

In peer-to-peer WebRTC streams, audio and video packets travel independently across the network. If the network path between host and viewer has high jitter — packets arriving out of order or in bursts — the viewer's browser has to buffer and reorder them. If the jitter buffer is too small, packets arrive late and get played late, causing momentary desync spikes that correct themselves but feel jarring.

Symptoms

Sync is mostly fine but there are occasional sudden jumps where audio and video briefly separate, then snap back together. Happens more on congested home networks (many devices, peak hours) or when the viewer is on Wi-Fi far from the router.

The fix

Cause 5: The streaming service is running slow

Less common but worth mentioning: if the streaming service itself is delivering video and audio segments from different CDN nodes at different speeds, the browser's player can briefly fall behind on one stream. This looks like desync but it's actually the service catching up to itself. A page refresh during a natural pause usually resolves it.

The 60-second fix that covers 80% of cases

  1. Pause the film.
  2. Host: disable hardware acceleration in Chrome if not already done (one-time setup).
  3. Host: close all other browser tabs and applications.
  4. Refresh the watch room page.
  5. Resume playback.

If this doesn't work, you're likely looking at a network issue (Cause 4) or a persistent driver problem that needs a full browser restart.