Self-hosted Docker Compose stack for live radio streaming. Ingest from any studio encoder and deliver via Icecast2 and HLS adaptive bitrate. Includes automatic fallback, silence detection, PostHog analytics, Pushover alerts, and a real-time operator dashboard.Documentation Index
Fetch the complete documentation index at: https://docs.sonicverse.eu/llms.txt
Use this file to discover all available pages before exploring further.
Quickstart
Get the stack running in minutes with the interactive installer.
Features
Multiple formats
MP3, AAC, and Ogg Vorbis outputs at multiple bitrates, plus HLS adaptive streaming for mobile.
Automatic fallback
Three-tier fallback chain — primary stream, backup stream, and emergency audio file.
Silence detection
Detects dead air and sends alerts via Pushover with configurable thresholds.
Operator dashboard
Real-time listener counts, container health, emergency audio management, and alert timeline.
Analytics
Listener metrics and stream events sent to PostHog for monitoring and analysis.
SSL out of the box
Automatic Let’s Encrypt certificate provisioning and renewal via Certbot.
Services
| Service | Description |
|---|---|
| Icecast2 | Stream distribution server with six mount points |
| Liquidsoap | Stream processor — ingest, fallback chain, encoding, HLS output |
| Nginx | Public-facing reverse proxy and HLS segment serving |
| Status API | Flask API backend — stream health, container status, emergency audio management |
| Analytics | Polls Icecast stats and sends events to PostHog with Pushover alerts |
| Certbot | Automatic Let’s Encrypt certificate renewal |
Repository structure
apps/contains operator-facing applications: the Next.js dashboard and the Flask status API.services/contains deployable runtime services: streaming (Icecast, Liquidsoap) and analytics.infrastructure/contains edge and routing infrastructure (Nginx reverse proxy).emergency-audio/stores local fallback media used when both studio streams are unavailable.