evgeny
fe23f4ca56
Add invitation action to desktop member rows
2026-10-04 14:54:58 +02:00
evgeny
6bc6d28e9e
Add desktop group picker for PM invitations with ten minute notice
2026-10-04 14:53:59 +02:00
evgeny
a97e8bcc1f
docs: update file inventory and module header contracts
...
Refresh both AGENTS guides and clarify module purpose, usage, ownership, threading, return values and wire formats in headers. Remove the unused timeout_heap freed_count field and unimplemented getter.
2026-10-04 13:10:01 +02:00
evgeny
a2bafb61c7
Own pending radio settings in cancellable uasync tasks
2026-10-03 13:18:09 +03:00
evgeny
625846fa33
Apply shared audio changes without resetting saved preferences
2026-10-03 13:13:28 +03:00
evgeny
afbce0efeb
Load radio settings after core startup and apply from dialog
2026-10-03 13:12:17 +03:00
evgeny
9f41415dc7
Expose radio VAD thresholds and independent compressor gains
2026-10-03 13:11:54 +03:00
evgeny
d1e2220e54
Place radio controls above desktop chat messages
2026-10-03 13:10:38 +03:00
evgeny
fa70093866
Add desktop radio panel with device menus and VAD switch
2026-10-03 13:09:38 +03:00
evgeny
dcb07c9124
Add live desktop radio VAD settings and transmission state
2026-10-03 13:08:04 +03:00
evgeny
1e9264735b
Fix desktop hover and emoji playback; share Android chat background
2026-10-02 23:19:13 +03:00
evgeny
35648a19ce
Avoid Windows poll macro collision in PTT hotkey manager
2026-10-02 17:32:46 +03:00
evgeny
23368a5bbe
Add Android boot startup, lazy settings, emoji and DM calls
...
Add battery optimization controls and configurable boot startup. Keep message sounds in the application and render general settings lazily to avoid ANRs. Add animated emoji controls and live BGP availability for direct-message calls on Android and desktop.
2026-10-02 17:18:24 +03:00
evgeny
bd082a26bf
Раздели аудиопотоки и привяжи AEC к фактическому общему выходу
2026-10-02 10:22:34 +03:00
evgeny
217e5795bf
Раздели PCM-сессии и исправь частоту и перемотку звука
2026-10-02 02:00:50 +03:00
evgeny
40b974b29c
Исправь потоковый AGC и применяй mute после AEC
2026-10-02 01:56:10 +03:00
evgeny
bdcf8b5634
Сохрани накопленные исправления аудио, async и диагностики
2026-10-02 01:49:32 +03:00
evgeny
203ae61eda
Share bounded thumbnail workers and keep PM downloads in DM transport
2026-10-01 19:12:25 +03:00
evgeny
3b0609fe76
Reject corrupt voice containers and remove unused synchronous playback
2026-10-01 18:51:44 +03:00
evgeny
20322e7ecb
Show PM voice and video delivery status in both shared renderers
2026-10-01 18:49:59 +03:00
evgeny
be8dbcf25e
Remove duplicate GUI voice encoding and keep shared worker codec
2026-10-01 18:48:09 +03:00
evgeny
225e11265f
Connect Qt preparation notifications to the conversation view
2026-10-01 18:39:31 +03:00
evgeny
6da6471204
Apply task-scoped media preparation events to the shared Qt composer
2026-10-01 18:39:31 +03:00
evgeny
e4a57970f0
Show preparation state for the current Qt conversation only
2026-10-01 18:39:31 +03:00
evgeny
318d72708c
Preserve voice autoplay ordering while decoding in a worker
2026-10-01 18:29:43 +03:00
evgeny
172cc3a649
Update shared Qt playback controls after background decoding
2026-10-01 18:29:07 +03:00
evgeny
d4a27d1975
Decode voice files asynchronously before starting Qt playback
2026-10-01 18:27:44 +03:00
evgeny
c77cb9bb0a
Adopt decoded voice buffers without large copies on the Qt thread
2026-10-01 18:27:44 +03:00
evgeny
c58b92ecd7
Render typed PM media using shared Qt message roles
2026-10-01 17:57:43 +03:00
evgeny
a281165450
Keep channel download commands out of the shared message delegate
2026-10-01 17:56:29 +03:00
evgeny
4f76b4d765
Dispatch Qt attachments using the target captured by the composer
2026-10-01 17:54:48 +03:00
evgeny
d1f03f2f80
Enable shared Qt voice and video composition for PM
2026-10-01 17:53:41 +03:00
evgeny
0d3f2952c1
Move Qt recording buffers to background preparation without copies
2026-10-01 17:52:38 +03:00
evgeny
934f1ccd1f
Use the existing diagnostic macros for desktop PM errors
2026-10-01 16:32:14 +03:00
evgeny
7fee3ec551
Render asynchronous PM history and submit desktop file sends
2026-10-01 16:24:09 +03:00
evgeny
1ceb09062f
Show PM file delivery state without invoking group downloads
2026-10-01 16:22:54 +03:00
evgeny
570f3dfab3
Enable original file attachments in the desktop PM composer
2026-10-01 16:22:32 +03:00
evgeny
72b5a9887f
chatgui: measure duplex audio stalls and record SM call evidence
2026-10-01 01:36:34 +03:00
evgeny
111432aa64
conn_mgr: race connection probes and report call path with correct RTT
2026-10-01 00:42:47 +03:00
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
2026-09-30 17:31:53 +03:00
evgeny
f12f61d7ee
call: add SpeexDSP AEC (acoustic echo cancellation) for desktop + Android
2026-09-29 17:01:30 +03:00
evgeny
1176411b79
radio: Silero VAD + auto-PTT; chatgui/android: app icon and background
2026-09-29 16:19:25 +03:00
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)
2026-09-29 02:31:41 +03:00
evgeny
3131dcbb7c
Fix ETCP session recovery and router lifecycle; confirm chat invites before publishing
2026-09-27 02:51:47 +03:00
evgeny
b90dc752d2
call: две фазы исходящего вызова — индикация + разные гудки (desktop/Android)
2026-09-23 19:16:53 +03:00
evgeny
7198154106
chatgui: клик по медиа с отсутствующим файлом — сброс пометки и перекачка
2026-09-22 21:59:59 +03:00
evgeny
0e625da109
call: ретрансмит INVITE каждые 2с + fail-fast при отсутствии маршрута (6с)
2026-09-22 16:06:52 +03:00
evgeny
cc0dcb071e
chat: UI настройки звука канала (Android toggle + JNI, desktop через C API) + trampoline
2026-09-22 01:25:55 +03:00
evgeny
845af9200d
Stop call ring sound immediately on accept
2026-09-21 19:41:21 +03:00
evgeny
9793733cd5
chatgui: диагностика воспроизведения голосовых сообщений (Windows)
...
- sound_manager: ma_engine_init/playRawPcm логируют через DEBUG_* (qWarning/qDebug терялись в GUI-приложении без консоли); детальный результат старта PCM (rc/is_playing/cursor)
- main: ранняя инициализация лога в GUI-потоке до SoundManager::init, чтобы диагностика инициализации попала в файл
- messagedelegate: лог клика по Play/timeline (filePath/dlState/существует ли файл)
- voiceplayback: лог заголовка opus (sr/ch/frameSamples)
Попутные правки:
- u_async: фикс двойного close wakeup_pipe (eventfd/Windows)
- chat_core: NULL-guard в get_db/is_initialized
- android: sqlite открывается в utun_instance_init, cleanup stale-потока без утечки fd
- android SettingsScreen: компактная раскладка имени интерфейса
2026-09-21 18:59:04 +03:00