Files
2026-06-09 18:40:21 +02:00

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
catalogue
music
radio
webradio
streaming
azuracast
php
icecast
shoutcast
high false
https://selfh.st/apps/?tag=Music
https://github.com/AzuraCast/AzuraCast
https://www.azuracast.com/

📻 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 → Backups gé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 (WebDJ seul ou Playlist Editor seul), 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) ou Rolling (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 en 127.0.0.1:9000 ou via VPN.
  • Sécurité physique : si serveur bare metal, BIOS verrouillé, GRUB password, chiffrement disque.

📚 Ressources

🔗 Pages Liées