evgeny
35ce2a2b93
Check group avatar encoding, rendering and key-based controls
1 week ago
evgeny
8173677475
Avoid refreshing avatar controls on unchanged member telemetry
1 week ago
evgeny
9bfdf3ea41
Allow avatar replacement alongside downloads and correct join fixtures
1 week ago
evgeny
dc156c7f2b
Test bounded downloads and late completion after avatar replacement
1 week ago
evgeny
8b327a3f27
Bound upload cache growth and reject stale transfer completions
1 week ago
evgeny
972910c763
Verify profile signatures survive avatar and display name updates
1 week ago
evgeny
3e1641aaf0
Persist avatar removal intent and prioritize profile changes
1 week ago
evgeny
2fe5f34c5c
Trace avatar discovery and profile events for integration checks
1 week ago
evgeny
8fb9129300
Verify large signed profiles alongside full owner records
1 week ago
evgeny
eceb69c58e
Test avatar publication, channel replication and persistent cache
1 week ago
evgeny
64d46cdef0
Display file and directory totals in client quota snapshots
1 week ago
evgeny
db6acf8662
Test quota display, stale responses and startup directory retries
1 week ago
evgeny
aca10e8268
Trace file bridge callbacks and use scoped VAD test logs
2 weeks ago
evgeny
78a655bb05
Add asynchronous member file storage and desktop browser
2 weeks ago
evgeny
27d93ecaf9
Add English and Russian ChatGUI interface translations
2 weeks ago
evgeny
4fcf45d545
Accept browser URL paths on Android and drag within the tested link
2 weeks ago
evgeny
ec856cc73f
Verify web link geometry, full addresses, mixed schemes and drag copying
2 weeks ago
evgeny
4ce7e29a37
Share URL boundary fixtures between Android and Qt tests
2 weeks ago
evgeny
dc2b6c3d68
Keep invitation and gesture regressions on the generic link API
2 weeks ago
evgeny
35266d2a31
Verify copy through Qt keyboard action and log Android invite presentation
2 weeks ago
evgeny
f70d5c7460
Verify invitation title delivery and one-line full-link actions
2 weeks ago
evgeny
69442dcbb8
Start wrapped-link selection test inside the first link line
2 weeks ago
evgeny
17179c9c4a
Use invite text layout for selection and wrapped emoji positions
2 weeks ago
evgeny
92b41ec300
Test wrapped message links and per-member invitation button hit targets
2 weeks ago
evgeny
570e637795
Verify desktop invitation clicks preserve drag selection
2 weeks ago
evgeny
123b47c612
Improve Android VAD lifecycle, audio settings and diagnostics
2 weeks ago
evgeny
c1bec9aca5
Wait for queued radio packets and verify persistent VAD settings
2 weeks ago
evgeny
33f276a69e
Cover radio panel shutdown and microphone recovery states
2 weeks ago
evgeny
312c2dd386
Test desktop VAD panel through Qt buttons and real audio workers
2 weeks ago
evgeny
8820e9a3c9
Build desktop radio panel and retain audio recovery coverage
2 weeks ago
evgeny
ffd26c56b4
Reduce radio VAD prefetch to 600 milliseconds
2 weeks ago
evgeny
9c8f635e63
Test VAD compression, quiet speech and independent prefetch audio
2 weeks ago
evgeny
1e9264735b
Fix desktop hover and emoji playback; share Android chat background
2 weeks ago
evgeny
bd082a26bf
Раздели аудиопотоки и привяжи AEC к фактическому общему выходу
2 weeks ago
evgeny
217e5795bf
Раздели PCM-сессии и исправь частоту и перемотку звука
2 weeks ago
evgeny
bdcf8b5634
Сохрани накопленные исправления аудио, async и диагностики
2 weeks ago
evgeny
05476fb102
Test Qt voice file validation and decoder cancellation
2 weeks ago
evgeny
fe1d29f007
Check refill below the 60 ms reserve including SoundTouch
2 weeks ago
evgeny
5b0262d53f
Diagnose refill expectation with the corrected reserve
2 weeks ago
evgeny
7d9f13b8bc
Test startup backlog independently of delivery jitter
2 weeks ago
evgeny
5487bc8c20
call: suppress loss tone until first received PCM
2 weeks ago
evgeny
1c51df039f
Fix call gap tone to follow 500ms of missing jitter PCM
2 weeks ago
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
2 weeks ago
evgeny
0d44ada922
Improve Android radio capture lifecycle, VAD and PTT controls
2 weeks ago
evgeny
ce1f23fe46
Radio: stereo capture/playback with mono fallback; CAMCORDER source; bump RADIO_MAX_OPUS
...
- stereo capture: Android AudioRecord stereo (CAMCORDER source for stereo,
voice sources fall back to CAMCORDER) + desktop separate miniaudio
capture/playback devices (no asymmetric duplex)
- Opus stereo encode/decode, voice_jitter stereo (per-channel frame_size,
slot-based SoundTouch)
- radio_audio_start takes explicit capture_channels (stereo->mono fallback)
- RADIO_MAX_OPUS 256->512 (128kbps stereo frames up to 320B)
- radio_capture_stereo setting + desktop radio settings UI (opus mode/bitrate,
capture stereo)
- radio_send_to send stats logging (etcp_send ok/fail per second)
2 weeks ago
evgeny
a7a3666d85
radio: AGC release-rate (без кликов), jitter dead-zone, TX/RX-статистика, FGS-гонка и кэш настроек
4 weeks ago
evgeny
738cfe7835
radio: адаптивный джиттер-буфер (pre-roll, симметричный темп, reorder) + AGC-компрессор микрофона
...
- voice_jitter: vj_create_cfg (target_ms/min_tempo/max_tempo/pre_roll), pre-roll
с таймаутом, vj_end для дренажа остатка, глубина учитывает внутренний буфер SoundTouch
- radio_audio: reorder по seq (mesh, out-of-order через соседей), force-flush pending
по таймауту и FIN, компрессор микрофона (AGC, конфиг [chatserver]), статистика буфера
- audio_compressor: clear_output для потокового слива без потери gain_smoothed
- chatgui messagelist: fromUtf8 для emoji-строк
- тесты: pre-roll/симметричный темп, reorder, late-drop
4 weeks ago
evgeny
b96ed8bd00
radio: PTT-радио в каналах (src/radio + chatgui + chatgui-android)
...
Новый модуль src/radio (radio/radio_audio/radio_headless) — push-to-talk
радио поверх topo-групп, доставка аудио в канал, headless-режим и тесты.
Интеграция в chatgui (ptt_hotkey_manager, radio_audio_engine, радионастройки,
вызовы) и chatgui-android (RadioAudioEngine, RadioOverlayService, UI).
4 weeks ago
evgeny
2de554f8b9
call: единый голосовой стек (libutun_voice) + SoundTouch на Android
...
- voice_jitter (кодированные Opus-кадры + decode-on-pull + SoundTouch time-stretch)
вместо PCM-буфера audio_jitter; излишек держится до декодирования
- call_audio.c/.h — единая реализация для desktop/Android/headless (C-интерфейс)
- libutun_voice (voice_sources.cmake): SoundTouch + voice_jitter + call_audio + call_tones
- Android: pull-модель (nativeCallAudioPull), убран Kotlin FIFO, ANDROID_STL=c++_static
- headless audio-сокет: PCM-протокол (decode-only, без тактирования), daemon остаётся C-only
- CALL_STATS расширен dropped/underruns; удалены audio_jitter.cpp и libutun_lite/call_audio.c
- тест test_voice_jitter (ёмкость/догон/стационар), test_call_headless переведён на PCM
4 weeks ago
evgeny
b11e77e4c0
call: P2P аудиозвонки — сигналинг, релей медиа, аудио-контур, headless/desktop/android
...
- src/call/: сигналинг (call.c, call_proto.h, ETCP_RT_ID_CALL 0x36) + релей медиа
+ headless аудио-сокет (call_headless.c, call_audio_bind) + Opus/jitter/тоны
- chat: события CHAT_EVT_CALL_* (34–40), CHAT_EVT_DM_MESSAGES (41), DM-трамплины
- chatgui: call window, miniaudio I/O, audio_frame_ring, test_audio_jitter
- chatgui-android: CallScreen/IncomingCallDialog, аудио-роутинг, JNI, рингтон
- tests: test_call, test_call_headless
1 month ago