evgeny
5a3999fbdb
Prepare one Android media response per player request
5 days ago
evgeny
125f740a5f
Use the shared publisher in Android and desktop stream bridges
5 days ago
evgeny
de67de33df
Report codec capabilities and document the expanded Android media header
5 days ago
evgeny
5677e8ec5f
Initialize the publication media format with the selected codec
5 days ago
evgeny
8b6c72b704
Publish bounded 100 ms send telemetry from the Android media actor
5 days ago
evgeny
98655284b2
Discard stale playback snapshots before reseeking a media cursor
6 days ago
evgeny
e1abcb5d69
Observe actual silent device intervals when adapting playback history
6 days ago
evgeny
9781f138ed
Switch Android media delivery to demand reads from the shared RS ring
6 days ago
evgeny
f15c97d11a
Size Android publisher buffers for the signed batch format
6 days ago
evgeny
22b62699ac
Describe stereo Opus in live media blocks
6 days ago
evgeny
3a6dacf378
Add stream camera controls and preserve playback on changes
6 days ago
evgeny
34349bd663
Require selected epochs and verify multiple live publishers
7 days ago
evgeny
dad67360b9
Remove obsolete Android stream polling and simplify lifecycle tests
7 days ago
evgeny
ba3dfa9fcc
Watch Android stream sources and validate selected epochs
7 days ago
evgeny
a96d5926c7
Fix Android external network monitoring and startup readiness
...
Select frontend network callbacks for auto_sockets=android instead of opening a denied netlink monitor. Preserve monitor descriptor ownership, keep native monitoring failures fatal, and release caller config on failed Android core creation and restart.
Register ConnectivityManager before requesting startup, report readiness after SERVICE_STARTED, and refresh addresses after initialization with serialized updates and generation checks. Add regression coverage for denied netlink, socket failures, address updates, and fd=0 preservation. Record the separate cancellation issue for startup before readiness.
Validation: full check.sh passed, including proxy/burst/load integrations. Clean Android build installed successfully on SM-A525F and Q8; logcat confirms both cores initialized and entered the poll loop with external monitoring and post-start address refresh.
7 days ago
evgeny
98dcaae853
Close viewers on malformed media and release terminal owners immediately
7 days ago
evgeny
1dcf6a79ce
Reject overlapping core ownership of Android stream handles
1 week ago
evgeny
c2c202e716
Mute local preview and clear Android media queues at detach
1 week ago
evgeny
e8adf03826
Preserve stream control events when discarding delayed media
1 week ago
evgeny
6c692399c2
Build verified live source snapshots in the core thread
1 week ago
evgeny
0ee1163a0b
Bind Android media queues to core lifetime and source epochs
1 week ago
evgeny
938289a6f0
Include Android streaming bridge and refine malformed wire tests
1 week ago
evgeny
36fceec6b2
Bridge Android live streams through bounded session queues
1 week ago
evgeny
d9c8e006b5
tests: accelerate standby phases and group connection retries
1 week ago
evgeny
5f79d00f7a
android: pass reply context through video preparation
2 weeks ago
evgeny
7aada92be9
android: preserve reply context while recording voice
2 weeks ago
evgeny
721160fbd9
android: carry channel reply references through file and photo sends
2 weeks ago
evgeny
653853588a
logging: preserve system diagnostics and inherit Android debug level
2 weeks ago
evgeny
123b47c612
Improve Android VAD lifecycle, audio settings and diagnostics
2 weeks ago
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.
2 weeks ago
evgeny
bdcf8b5634
Сохрани накопленные исправления аудио, async и диагностики
2 weeks ago
evgeny
5092bdf9fe
Validate capture format and diagnose capture thread failures
3 weeks ago
evgeny
add016894b
Use bounded independent Android cache files for each attachment
3 weeks ago
evgeny
6185869c6d
Use fixed conversation targets for Android media preparation
3 weeks ago
evgeny
038fd173c2
Detach Android recordings for shared background preparation
3 weeks ago
evgeny
9e3a417059
Synchronize standby transitions and immediate keepalive phase announcements
3 weeks ago
evgeny
72fee9e245
Separate core, UTUN and chat lifecycles with owned asynchronous work
3 weeks ago
evgeny
0e625da109
call: ретрансмит INVITE каждые 2с + fail-fast при отсутствии маршрута (6с)
4 weeks ago
evgeny
5628138d16
etcp: keepalive sleep-протокол на флагах (KA_FLAG_SLEEP + sleep_time, announce-retry, ack/echo)
4 weeks ago
evgeny
2f3001458f
android: standby keepalive sync + rx logging during sleep
4 weeks ago
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: компактная раскладка имени интерфейса
4 weeks ago
evgeny
01987a75d0
chatgui: verify FFmpeg DLL deployment + fix dependency resolution order
4 weeks ago
evgeny
ba1c2d85d3
reality_relay: async DNS вместо getaddrinfo + AGC-компрессор по умолчанию (-12 dBFS)
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
1 month 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
evgeny
73fe99b33f
dm: прямой обмен сообщениями (DM) + soundtouch + архитектура звонков
...
- src/dm/: dm_core/dm_crypto/dm_mailbox — прямой обмен сообщениями (DM)
- lib/soundtouch-master/: vendored SoundTouch (изменение темпа/высоты аудио)
- doc/dm_arch.md, doc/chat_call_arch.md: архитектура DM и звонков
- tests: test_dm.c, test_dm_e2e.c
- chat: рефакторинг chat_* модулей, member_sync, invite_build
- chatgui/chatgui-android: синхронизация с новым API чата
- lib/u_async, debug_config, utun_instance: сопутствующие изменения
1 month ago
evgeny
481872d5db
chat: invite-ссылки с несколькими адресами + ncd-адреса узлов (join)
1 month ago
evgeny
75e39d2fee
chat_join: модуль join-протокола, invite-ссылки v2, синхронизация мемберов
1 month ago
evgeny
7c8d65db78
chat: локальное удаление канала (Android) + db_sync инстансы в куче
1 month ago