Skip to content

Fix Zoom audio pacing and responsive meters - #400

Merged
iamfatness merged 2 commits into
mainfrom
codex/zoom-audio-meter-scaling
Aug 15, 2026
Merged

Fix Zoom audio pacing and responsive meters#400
iamfatness merged 2 commits into
mainfrom
codex/zoom-audio-meter-scaling

Conversation

@iamfatness

Copy link
Copy Markdown
Owner

What changed

  • Prime Zoom meeting-mix and participant ISO audio onto the 20 ms program clock with a permanent one-tick reserve.
  • Prevent 10 ms partial blocks from reaching Program, then re-prime cleanly after a genuine source gap.
  • Preserve the Zoom pacing flag when PCM frames are coalesced.
  • Make vertical audio-meter segments fill the available channel-strip height and remain aligned with the dBFS scale.
  • Add native and WinUI regression coverage for pacing, re-priming, viewport growth, and compact-window behavior.

Why

Zoom supplies raw audio in 10 ms packets while the CoreVideo program mixer runs on a 20 ms tick. Sending whatever was available allowed partial blocks to reach Program, producing audible artifacts and weakening audio/video sync. Separately, the mixer used fixed-height meter segments, so taller windows created unused space while the dB scale continued to grow.

Operator impact

Zoom ISO and meeting-mix audio now enter Program in complete 20 ms blocks with a stable timing cushion. The mixer meters now scale with compact and maximized layouts instead of remaining pinned to a fixed height.

Validation

  • ctest -C Release --test-dir native/build-dev --output-on-failure — passed
  • dotnet test native-shell/CoreVideoPro.WinUI.Tests/CoreVideoPro.WinUI.Tests.csproj -c Debug --no-restore — 710 passed
  • npm run pack:native — passed; packaged native-core hash matched the validated build
  • Local package smoke test — UI and native core responsive
  • Visual resize smoke test — meter segments aligned with the dBFS scale in compact and maximized windows

A fresh real-meeting soak remains appropriate before promoting the alpha.

@iamfatness
iamfatness merged commit e244ad6 into main Aug 15, 2026
18 of 19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant