7.0 KiB
title, created, updated, type, tags, confidence, contested, sources
| title | created | updated | type | tags | confidence | contested | sources | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AzuraCast | 2026-06-07 | 2026-06-07 | app |
|
high | false |
|
📻 AzuraCast
Suite complète de gestion de webradio : hébergement, automatisation, encodage multi-format, planning, live DJ et analytics. Couvre Icecast, Shoutcast et Liquidsoap sous une seule interface web.
📋 Informations Générales
| Métadonnée | Valeur |
|---|---|
| Site web | https://www.azuracast.com/ |
| GitHub | https://github.com/AzuraCast/AzuraCast |
| License | AGPL-3.0 |
| Langage | PHP (Laravel) / Liquidsoap / AngularJS |
| Étoiles | ⭐ 721 (3 800+ sur GitHub) |
| Dernière MAJ | 2026-06-06 |
| Catégorie | cat-music |
📝 Description
AzuraCast est la solution de référence pour monter une webradio professionnelle self-hosted. Né de la fusion de plusieurs projets (Airtime notamment), il combine en une seule plateforme : un système d'automation (playlists rotatives, scheduling, jingles), un serveur de streaming Icecast 2 ou Shoutcast, un module de Live DJ (connexion DJ via navigateur ou client compatible Icecast), un encodeur multi-format (MP3, OGG, AAC, Opus) avec transcodage à la volée, et un tableau de bord analytics complet (écouteurs uniques, géographie, pic d'audience).
L'architecture repose sur Liquidsoap (le moteur de streaming, en OCaml) couplé à Icecast 2, le tout piloté par une interface PHP/Laravel. Une station peut avoir plusieurs « mount points » (128 kbps MP3 pour le public, 320 kbps pour les archives, AAC+ pour mobile, etc.) et diffuser en parallèle sur une dizaines de serveurs relais. La fonction Podcasts génère automatiquement un flux RSS pour chaque émission, et WebDJ permet aux animateurs de se connecter depuis un simple navigateur sans installer de logiciel.
Cas d'usage : radio associative, station communautaire, projet étudiant, radio d'entreprise, webradio thématique. La communauté Discord est très active, le développement est régulier, et la documentation de qualité permet un démarrage en moins d'une heure.
🚀 Installation
Option 1 : Docker (recommandé)
# docker-compose.yml
version: "3.8"
services:
azuracast:
image: ghcr.io/azuracast/azuracast:latest
container_name: azuracast
restart: unless-stopped
ports:
- "80:80" # Web UI
- "8000:8000" # WebDJ (secure)
- "8001:8001" # WebDJ (non-secure)
- "9000:9000" # Liquidsoap telnet
environment:
COMPOSE_PROJECT_NAME: azuracast
AZURACAST_VERSION: latest
volumes:
- ./data:/var/azuracast/db
- ./stations:/var/azuracast/stations
- ./backups:/var/azuracast/backups
healthcheck:
test: ["CMD", "curl", "-fsS", "http://localhost/api/status"]
interval: 60s
timeout: 10s
retries: 5
Premier lancement : visiter http://localhost/, créer le compte super-admin, puis créer une première station depuis l'interface.
Option 2 : Installation manuelle (bare metal)
Prérequis : Ubuntu 22.04 LTS (officiellement supporté), 1 Go de RAM minimum, accès root. Script officiel : sudo -E bash -c "$(curl -fsSL https://raw.githubusercontent.com/AzuraCast/AzuraCast/main/docker/install.sh)" qui installe Docker + l'image AzuraCast en mode systemd.
⚙️ Configuration
- Stations : créer une ou plusieurs stations indépendantes (chacune avec ses DJs, ses playlists, ses ports).
- Playlists : rotatives (mélange random + weighted) ou séquentielles ; scheduling par jour/heure/crontab.
- Médias : upload via UI (drag & drop, jusqu'à ~2 Go par fichier), ou déposer directement dans le dossier mappé de la station.
- Stream mount points : qualité basse (128 kbps), moyenne (192 kbps), haute (320 kbps), AAC+ pour mobile, chacun avec son URL publique.
- Live DJ :
WebDJ(navigateur) ou client traditionnel (Mixxx, BUTT, RadioBoss) via Icecast source protocol. - Publicité : gestion des jingles, liners, IDs, triggering par intervalle ou heure fixe.
- Analytics : historique complet, géolocalisation des auditeurs (GeoIP), top titres, top auditeurs.
- Backup/Restore :
Settings → System → Backupsgénère une archive JSON complète, restaurable d'un clic.
🔄 Alternatives
Open Source
- app-icecast — Le serveur de streaming basique (utilisé par AzuraCast en interne).
- app-funkwhale — Plutôt orienté podcast et musique à la demande.
- app-koel — Streaming musical à la demande (pas radio).
- app-navidrome — Streaming musical à la demande.
- LibreTime — Fork communautaire d'Airtime, automation pure.
- RadioCMS — Autre solution PHP plus légère.
- Rivendell — Pour radio broadcast FM professionnelle.
- OpenBroadcaster — Pour la diffusion vidéo en plus de l'audio.
Propriétaires (ce que cette app remplace)
- Radio.co — SaaS webradio (≈ 15-50 $/mois).
- Airtime Pro — SaaS automation radio.
- Live365 — Streaming radio avec royalties payées.
- RadioJar — Agrégateur radio.
- SAM Broadcaster Cloud — Suite Windows payante.
🔒 Sécurité
- HTTPS obligatoire : via Traefik ou Caddy avec Let's Encrypt (les streams et l'UI doivent être chiffrés).
- Comptes DJ : créer des comptes dédiés avec permissions limitées (
WebDJseul ouPlaylist Editorseul), ne jamais donner le rôle super-admin. - Source passwords Icecast : mot de passe fort pour le mount principal, distincts pour chaque DJ.
- GeoIP blocking : si la radio a une licence territoriale (juridique FR/CSAR), configurer CrowdSec.
- Mises à jour : suivre le canal
Stable(LTS) ouRolling(features plus tôt, mais plus de risque). - Backups : automatiques (
./backups) + externes, tester régulièrement la restauration sur un environnement jetable. - Exposition des ports : ne pas exposer
9000(Liquidsoap telnet) sur Internet, garder en127.0.0.1:9000ou via VPN. - Sécurité physique : si serveur bare metal, BIOS verrouillé, GRUB password, chiffrement disque.
📚 Ressources
- Site officiel : https://www.azuracast.com/
- Documentation : https://www.azuracast.com/docs/
- Repository : https://github.com/AzuraCast/AzuraCast
- Communauté Discord : https://discord.gg/azuracast
- Wiki : https://github.com/AzuraCast/AzuraCast/wiki
- Forum : https://github.com/AzuraCast/AzuraCast/discussions
- Démo : https://demo.azuracast.com/ (compte de test public)
🔗 Pages Liées
- cat-music — Catégorie parente
- app-icecast — Serveur streaming sous-jacent
- app-koel — Streaming musical à la demande
- app-navidrome — Streaming musical à la demande
- app-funkwhale — Plateforme audio fédérée
- app-traefik — Reverse proxy HTTPS
- app-crowdsec — WAF/ban IP
- recettes-docker-compose — Templates Docker
- securisation-home-lab — Bonnes pratiques