evgeny
12c0de503d
Document installer builds and register packaging checks
20 hours ago
evgeny
1b406202b5
Integrate installer generation into Windows build scripts
20 hours ago
evgeny
2e9babe73b
Build batch transfers and wait for cancellation on close
3 days ago
evgeny
17f5c0ecbd
Cover footer file drops and upload queue lifecycle
3 days ago
evgeny
7f3247bfcc
radio: add activation controls, live VAD meters and signal diagnostics
3 days ago
evgeny
44af542f61
chatgui: add radio activation by signal level with hysteresis
4 days ago
evgeny
f054f9c8d9
test: cover radio receive guard timing and playback progress
4 days ago
evgeny
484d6f2fa4
Test signed replies, media completion and old-history lookup
5 days ago
evgeny
efebf8c5e8
Fix settings drafts, enlarge avatars, and show desktop version
5 days ago
evgeny
6496448569
Verify radio speaker icons through the bridge and actual PTT/VAD
5 days ago
evgeny
4a7f37b920
Use independent X11 notification overlay across desktops
5 days ago
evgeny
d62fae9e88
Verify notification desktop scope with a real window manager
5 days ago
evgeny
247479e411
Show Linux message notifications on all X11 desktops
5 days ago
evgeny
16a9094770
Test live message metadata and document notification limits
5 days ago
evgeny
c6cb3f0e8e
Test notification timing, replacement, and activity fallbacks
5 days ago
evgeny
f2e35da1fe
Wire notification platform dependencies and event diagnostics
5 days ago
evgeny
e5d8c34514
Fix desktop uasync readiness for radio member mute requests
5 days ago
evgeny
7e19cbaf3a
Add local per-member radio mute controls on desktop and Android
5 days ago
evgeny
cf869770fb
Add desktop poll creation, voting and live result dialogs
6 days ago
evgeny
96af98f063
Exercise avatar crop gestures, gallery navigation and EXIF originals
6 days ago
evgeny
c4c11ad813
Build avatar UI and deploy the desktop WebP codec
6 days ago
evgeny
a175129f93
chatgui: complete audio dependencies for composer integration tests
6 days ago
evgeny
9c7442544b
chatgui: add Qt integration tests for file drops and recipient changes
6 days ago
evgeny
3d277349be
Deploy the selected Qt version and recognize Windows system DLLs
6 days ago
evgeny
35ce2a2b93
Check group avatar encoding, rendering and key-based controls
6 days ago
evgeny
4062ecdfb1
Display group avatars and restrict editing to group key holders
6 days ago
evgeny
eceb69c58e
Test avatar publication, channel replication and persistent cache
6 days ago
evgeny
694ed8e263
Display cached user avatars in member lists and chat messages
6 days ago
evgeny
78a655bb05
Add asynchronous member file storage and desktop browser
1 week ago
evgeny
27d93ecaf9
Add English and Russian ChatGUI interface translations
1 week ago
evgeny
8feb7902b9
Search local rlottie build for its CMake package configuration
1 week ago
evgeny
394ac93dc4
Extract message links with explicit schemes and punctuation boundaries
1 week ago
evgeny
92b41ec300
Test wrapped message links and per-member invitation button hit targets
1 week ago
evgeny
6bc6d28e9e
Add desktop group picker for PM invitations with ten minute notice
1 week ago
evgeny
20a1211e09
Add GPLv3 licensing and bundle third-party notices
1 week ago
evgeny
312c2dd386
Test desktop VAD panel through Qt buttons and real audio workers
1 week ago
evgeny
8820e9a3c9
Build desktop radio panel and retain audio recovery coverage
1 week ago
evgeny
1e9264735b
Fix desktop hover and emoji playback; share Android chat background
1 week ago
evgeny
bd082a26bf
Раздели аудиопотоки и привяжи AEC к фактическому общему выходу
1 week ago
evgeny
bdcf8b5634
Сохрани накопленные исправления аудио, async и диагностики
2 weeks ago
evgeny
05476fb102
Test Qt voice file validation and decoder cancellation
2 weeks ago
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
2 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).
3 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
4 weeks ago
evgeny
c474c37284
chatgui/chatgui-android: просмотр изображений с зумом + инфо о медиа
...
- chatgui: просмотрщик изображений (ImageViewerWindow) с зумом/поворотом
- chatgui: отправка картинок как image с определением разрешения и типа
- chatgui: у видео-пузыря строка info (res·size·bitrate) и бейдж только длительность
- chatgui: контекстное меню медиа (сохранить в файл/скачать)
- chatgui-android: большие emoji-only сообщения, битрейт/разрешение у видео
- chatgui-android: сохранение неактивных интерфейсов как закомментированные секции
- chatgui-android: отправка картинок по расширению (jpg/png/gif/bmp/webp)
- photo_sender: content-type и расширение по типу файла
1 month ago
evgeny
74b17685f7
chatgui: фикс синхронизации кадров (часы не убегают вперёд при быстром декоде) + smoke-тест движка
...
- presentTick: кадры всегда по мастер-часам, завершение только когда очередь пуста
- clockMs: по окончании аудио часы в конец (хвостовые кадры не теряются)
- fallback на системные часы, если аудио-устройство недоступно
- tests/test_video_engine: smoke-тест FFmpeg-декодера (opened/frames/seek)
1 month ago
evgeny
6542618927
chatgui: воспроизведение видео — FFmpeg-плеер + frameless окно
...
- videoplayer_engine: декод в worker-потоке (FFmpeg), A/V sync по аудио-курсору,
seek с epoch-защитой от устаревших кадров
- videoplayer_window: окно без рамки, drag-перенос, dblclick/Alt+Enter fullscreen,
Esc закрытие, timeline + play/pause/close, авто-скрытие контролов
- видео-баббл в списке: превью-кадр (jpg), play-оверлей, длительность, прогресс
- превью извлекается после скачивания (video_extract_thumbnail) в фоне
- mainwindow: синглтон-плеер, openVideoRequested → openVideo
- CMake: HAVE_FFMPEG для vibechat
1 month ago
Evgeny
f347dc8edc
vibechat: single-instance (QLockFile) + переименование Chat→vibechat (бинарник, конфиг, hostname node name)
2 months ago
evgeny
b2e4aadbf0
e2e: AES-128-CCM encryption via BGP router (ROUTER_FLAG_ENCRYPTED), ECDH key per peer-pair from NODEINFO pubkeys, cache 8 entries
...
- etcp_router.h/c: new flag ROUTER_FLAG_ENCRYPTED (0x04), etcp_route_send_encrypted(), inflight/retrans/send_q support
- utun_instance.h: e2e_ctx_cache[8] — per-peer sc_context_t cache with derived session key
- topo_node.c: topo_node_sign_self() — single point for Ed25519 self-signing of NODEINFO
- topo_node.c: fix stale x25519_self_sig after address update (topo_node_sign_self call)
- nat_detection.c: fix stale x25519_self_sig after in-place socket meta modification
- test_etcp_router_unit: 5 E2E tests (basic round-trip, no NODEINFO drop, tampered, cache reuse, ENCRYPTED+SIGNED combined)
- builds clean, 70/70 tests pass
2 months ago