Files
re-teamspeak/docs/SDD.md
T

1017 B

Software Design Document

iced-app

main.rs

  • Defines the full app state and message enum
  • Uses SyncConnection / SyncConnectionHandle from tsclientlib
  • 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:
    • None
    • nnnoiseless
    • sonora

identity.rs

  • Locates TeamSpeak config database in common Linux paths
  • Extracts identity_secret_key
  • Parses it into tsclientlib::Identity

Known Design Limitations

  • main.rs is 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