@@ -45,12 +45,19 @@ tinyice/
4545├── main.go # Entry point. Flags, config loading, and Updater initialization.
4646├── config/ # JSON configuration struct and defaults.
4747├── relay/ # AUDIO CORE.
48- │ ├── relay.go # CircularBuffer and Stream structs.
48+ │ ├── buffer.go # CircularBuffer implementation for stream data.
49+ │ ├── stream.go # Stream struct and core stream operations.
50+ │ ├── stats.go # Stream statistics, health monitoring, and snapshots.
51+ │ ├── ogg.go # Ogg/Opus specific functionality and synchronization.
52+ │ ├── io.go # Reusable I/O components (StreamWriter, StreamReader).
53+ │ ├── interfaces.go # Core interfaces for better abstraction and testability.
54+ │ ├── relay.go # Core Relay management and stream coordination.
4955│ ├── streamer.go # AutoDJ logic (playlist, queue, playback loop).
5056│ ├── transcode.go # Native MP3/Opus encoding logic.
5157│ ├── mpd.go # Minimal implementation of MPD protocol.
5258│ ├── webrtc.go # WebRTC PeerConnection and Source management.
53- │ └── client.go # Logic for pulling external relay streams.
59+ │ ├── client.go # Logic for pulling external relay streams.
60+ │ └── history.go # Historical data and statistics tracking.
5461├── server/ # HTTP/TCP LAYER.
5562│ ├── server.go # Routes, handlers, auth, middleware.
5663│ ├── socket_*.go # OS-specific socket syscalls (SO_REUSEPORT).
0 commit comments