1017 B
1017 B
Software Design Document
iced-app
main.rs
- Defines the full app state and message enum
- Uses
SyncConnection/SyncConnectionHandlefromtsclientlib - Maintains local UI mirrors for:
- bookmarks
- server metadata
- channels
- clients
- chat messages
- device selection
- mute / AFK state
audio.rs
- Output playback through
cpal - Input capture through
cpal - Opus encode for outgoing voice
- Simple VAD for continuous talk mode
noise_cancel.rs
- Runtime-selected noise cancellation backend
- Current backends:
Nonennnoiselesssonora
identity.rs
- Locates TeamSpeak config database in common Linux paths
- Extracts
identity_secret_key - Parses it into
tsclientlib::Identity
Known Design Limitations
main.rsis still monolithic and should be split later- Bookmarks are not persisted
- ServerQuery is not wired to a real backend yet
- Audio settings apply to runtime state, but broader config persistence is not implemented