Fix audio clock drift and adaptive jitter buffering
.NET port / test (macos-latest) (push) Canceled after 0s
.NET port / test (ubuntu-24.04) (push) Canceled after 0s
.NET port / test (windows-latest) (push) Canceled after 0s
.NET port / apple-client (push) Canceled after 0s

This commit is contained in:
2026-09-20 16:26:03 +02:00
parent 3ee0df11a9
commit dd811a0bb8
23 changed files with 401 additions and 61 deletions
+4 -2
View File
@@ -177,8 +177,10 @@ Noise reduction does not gate speech.
`TimeProvider` timestamps; tests inject a clock. Threshold changes are atomic; all
processing state otherwise has one owner. Codec/DSP processing methods allocate no
managed memory after initialization, verified across 1,000 combined cycles. They run
on a managed worker, never the native real-time device callback. Native device rings,
jitter, mixer, and audio scheduling remain later work.
on a managed worker, never the native real-time device callback. Managed capture/playback
rings compensate independent clock drift around a configurable 20/40/60 ms target. Receive
jitter is duration-aware, reserves one codec frame for DRED/FEC look-ahead, and decodes each
channel packet at its actual duration before the fixed 20 ms mixer stage.
## Initial managed server