Ahmed Doghri Logo Image
Ahmed Doghri

avsyncdoctor

Five flash/click pairs expose 120 ms of offset and 5,000 ppm of drift. FFmpeg repair brings remeasured skew below 40 ms.

avsyncdoctor audio video synchronization dial
avsyncdoctor working browser demo

One Offset Is Not Enough

Independent audio and video clocks can begin misaligned and continue separating, so a single timeline shift fixes the opening while the ending still drifts.

avsyncdoctor detects flash and click events, fits offset and clock ratio, applies FFmpeg trim and tempo correction, and remeasures the output.

The Demo

Five anchors contain a known 120 ms offset and 5,000 ppm clock drift. The real MP4 integration test detects the mismatch, repairs it, and requires the resulting maximum skew to remain below 40 ms.

The event-based path suits claps, flashes, impacts, and test slates. Continuous speech and semantic mismatch require content-aware audio-visual features.

Research Basis

AV-SyncBench separates temporal alignment from semantic correspondence when evaluating audio-video synchronization.

Read the AV-SyncBench.

Tools Used

Python
OpenCV
FFmpeg
Audio-Video Sync
Clock Drift
Docker
GitHub Actions CI