Specify jitter reserve at startup and expose delay diagnostics

This commit is contained in:
evgeny committed 2026-10-15 13:19:39 +02:00
1 parent aaff1a5494
commit c1cc3c459b
2 files changed
+10 -3

No files matched your search

+5 -1
View File
@@ -9,7 +9,8 @@ extern "C" {
#endif
/* Звонок: FIFO Opus, запас 20мс..max_reserve_ms по изменению задержки доставки за 10 секунд и догон после паузы устройства.
* push — сетевой поток, pull/decode/SoundTouch — единственный аудиопоток.
* push — сетевой поток, pull/decode/CallDelay — единственный аудиопоток.
* Старт/восстановление ждут запас плюс запрошенный блок; при выдаче PCM запас не резервируется повторно.
* destroy — после остановки обоих потребителей. get_stats — любой поток. */
#define CALL_JITTER_FRAME_MS 20
#define CALL_JITTER_MIN_RESERVE_MS 20
@@ -24,6 +25,9 @@ struct call_jitter_diagnostics {
int encoded_ms, processing_ms, pcm_samples;
int64_t arrival_spread_ms;
uint32_t underruns;
int delay_mode, tempo_ppm;
unsigned phase_samples;
uint64_t cut_samples, stretch_entries, stretch_exits;
};
/* Снимок и сброс событий под mutex; логировать после выхода из mutex голосового стека. */
void call_jitter_get_diagnostics(struct call_jitter*, struct call_jitter_diagnostics*, int reset_events);