Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • VLC VLC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,728
    • Issues 3,728
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 225
    • Merge requests 225
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • VideoLANVideoLAN
  • VLCVLC
  • Merge requests
  • !2018

clock: fix audio/video synchronisation issues

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Thomas Guillem requested to merge tguillem/vlc:timeget2 into master May 31, 2022
  • Overview 63
  • Commits 20
  • Pipelines 7
  • Changes 9

This MR aim to fix #27023 (closed)

I decided to report more precise timing points from all audio outputs instead of trying to use a different mathematical function to "smooth" the clock average. This solution might be possible, but will always be less precise.

This MR is divided in two parts:

  • The core part
  • PulseAudio changes

I also tested it with all main aout modules (apple, android AAudio, Wasapi). If accepted, I will implement aout_TimingReport for all these modules.

The result ! Clock offset measurement in most common situation with this MR:

A/V sync is perfect and quick to stabilize, even with BT devices, no video drops reported in logs.

Compare with #27023 (closed)

PulseAudio with a BT device, playing a 25fps video (23ms audio sample)

fixed-25fps-bt

PulseAudio with a BT device, playing a 60fps video (10ms audio sample)

fixed-60fps-bt

PulseAudio with a speaker, playing a 25fps video (23ms audio sample)

fixed-25fps-speaker

PulseAudio with a speaker, playing a 60fps video (10ms audio sample)

fixed-60fps-speaker

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: timeget2

VideoLAN code repository instance