[client] audio: include the jitter in the target calculation

This commit is contained in:
Geoffrey McRae
2026-07-28 23:45:11 +10:00
parent 6f6816b99f
commit 739931fca3

View File

@@ -1241,13 +1241,13 @@ void audio_playbackData(uint8_t * data, size_t size, uint32_t time)
const int configLatencyMs = max(g_params.audioBufferLatency, 0); const int configLatencyMs = max(g_params.audioBufferLatency, 0);
const int maxPeriodFrames = const int maxPeriodFrames =
max(audio.playback.deviceMaxPeriodFrames, spiceData->devPeriodFrames); max(audio.playback.deviceMaxPeriodFrames, spiceData->devPeriodFrames);
const double configuredJitterFrames = const double configuredLatencyFrames =
configLatencyMs * audio.playback.sampleRate / 1000.0; configLatencyMs * audio.playback.sampleRate / 1000.0;
const double measuredJitterFrames = const double measuredJitterFrames =
(spiceData->arrivalJitterSec + 0.001) * audio.playback.sampleRate; (spiceData->arrivalJitterSec + 0.001) * audio.playback.sampleRate;
const double targetBufferFrames = const double targetBufferFrames =
maxPeriodFrames * 1.1 + maxPeriodFrames * 1.1 +
max(configuredJitterFrames, measuredJitterFrames); configuredLatencyFrames + measuredJitterFrames;
const double targetLatencyFrames = const double targetLatencyFrames =
targetBufferFrames + PLAYBACK_RESAMPLER_DELAY_FRAMES; targetBufferFrames + PLAYBACK_RESAMPLER_DELAY_FRAMES;