Commit Graph

9 Commits

Author SHA1 Message Date
Username
0eccda1a2c add audio pipeline tests 2026-02-24 12:10:54 +01:00
Username
6673ad187e app: wire audio pipeline and ptt
Start AudioPipeline on server connect, send loop polls capture
queue, PTT toggles mic encoding, incoming sound queued for playback.
Audio failure logs to chatlog without crashing.
2026-02-24 12:10:50 +01:00
Username
0aa7b81439 audio: fix playback path to accept raw pcm
pymumble already decodes incoming audio. Remove the decoder from
the playback callback — write PCM directly to the output buffer.
2026-02-24 12:10:44 +01:00
Username
6efa9591dc docs: update roadmap and tasklist for phase 1 completion 2026-02-24 12:01:16 +01:00
Username
a8960e2027 add client dispatcher unit tests 2026-02-24 12:01:11 +01:00
Username
2f7b192640 app: wire mumble connection, text chat, channel tree
Connect to server on mount via @work(thread=True). Bridge pymumble
callbacks to Textual messages (ServerConnected, ServerDisconnected,
TextMessageReceived, ServerStateChanged). Render live channel/user
tree recursively. Send text on input submit. Clean disconnect on quit.
2026-02-24 12:01:06 +01:00
Username
5fecebaa12 client: replace async wrapper with thread-safe dispatcher
Convert connect/disconnect to blocking calls (pymumble is synchronous).
Remove asyncio loop coupling. Add set_dispatcher() for marshalling
callbacks into the host event loop. Register all pymumble callbacks:
connected, disconnected, user/channel CRUD, text message, sound.
2026-02-24 12:00:59 +01:00
Username
5df1f484a4 fix: use rich markup instead of raw ansi in tui widgets 2026-02-24 11:48:30 +01:00
Username
836018d146 feat: scaffold tuimble TUI mumble client
Core modules: TUI app (textual), mumble protocol client,
audio pipeline (sounddevice + opus), push-to-talk with
kitty protocol / evdev / toggle backends. Config via TOML.
2026-02-24 11:44:06 +01:00