technique:webradio:azuracast_serveur

Ceci est une ancienne révision du document !


Serveur Azuracast

Azuracast est un projet libre serveur de webradio (un unique développeur) avec des fonctionnalités très intéressantes :

  • Super adminnistrateur qui gère le serveur
  • plusieurs webradios simultanées avec des propriétaires pour chacun
  • gestion de playlists évolué
  • player évolué
  • Vue de statistiques d'audiences en direct
  • Backup automatiques possibles via interface web


Attention, ce projet est annoncé en version béta et recommande des mises à jour régulières (Proxmox !)

  • serveur dédié (VPS) : 2Go de Ram, 20 Go de disque (ou plus : si upload de fichiers audio)
  • 64-bit x86 (x86_64) CPU
  • installation préconisée tout en docker
  • Install préconisée sur Ubuntu serveur 16.04 ou 18.04
  • Serveur nu avec sudo, curl et git
mkdir -p /var/azuracast
cd /var/azuracast

curl -fsSL https://raw.githubusercontent.com/AzuraCast/AzuraCast/master/docker.sh> docker.sh
chmod a+x docker.sh
./docker.sh install

Se rendre sur l'adresse IP du serveur pour créer le compte super-administrateur

Le script docker.sh permet de faire tout ça de manière simple…

cd /var/azuracast
./docker.sh update-self
./docker.sh update
./docker.sh backup path-to-backup.zip
./docker.sh backup --exclude-media path-to-backup.zip
./docker.sh restore path-to-backup.zip

Les paramètres de configuration se trouvent dans le fichier azuracast.env

Déploiement d'une instance de test

Lancement de la procédure d'install sur une VM - Ubuntu-server 18.04 net install - openssh + git + curl + sudo en tant que root.

Choix à l'installation de n'utiliser que les versions stables.

Première connexion à l'adresse IP, création du super-admin : mail + mot de passe.

Message d'erreur à la création sur la base MySQL :

An exception occurred while executing 'INSERT INTO audit_log (timestamp, operation, class, identifier, target_class, target, changes, user) VALUES (?, ?, ?, ?, ?, ?, ?, ?)' with params [1590834974, 1, "Role", "Super administrateur", null, null, "a:1:{s:4:\"name\";a:2:{i:0;N;i:1;s:20:\"Super administrateur\";}}", null]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'azuracast.audit_log' doesn't exist
AbstractMySQLDriver.php : 42

Lancement d'une mise à jour :

./docker.sh update-self
./docker.sh update

Retour sur l'interface d'admin :

  1. création du super-admin : ça marche !
  2. Création d'une webradio initiale : ok Des paramètres sympa comme l'URL de la webradio. Tout est francisé
  3. Paramétrage par défaut de Azuracast : annonce des mises à jour…
  4. Proposotion de création d'un premier backup après install, via l'interface web. On peut exclure les medias si besoin. Première sauvegarde :

10.5 KB

Utilisation

La radio créé émet par défaut sur une page publique un son qui tourn e en boucle.

  • On peut uploader des fichier musicaux très simplement, créer des dossiers
  • On peut embarquer le lecteur mp3 dans un iframe
  • On peut personnaliser chaque morceau : pochette, auteur et même modifier le fichier audio (beta) pour entrées et sortie en fondu.
  • On peut créer des playlist avec des niveau de priorités : la menu playlist permet de définir la fréquence de la playlist, pas son contenu. On peut activer une playlist ou la désactiver, définir sa planification (jours, horaires).
  • Il faut passer par les fichiers musicaux pour ajouter des morceaux.
  • Il y a une page d'admin Icecast pour chaque radio avec mot de passe administrateur / source (emetteur) / relais
  • Fonctionnalité “Demandes de titres” Désactivé ; “Streamers/DJs” : Désactivé
  • Les points de montage permettent de récupérer l'adresse du .mp3
  • Pour diffusion, il est nécessaire : de créer un compte DJ avec identifiant et mot de passe. C'est cet identifiant qui sera utilisé pour se connecter sur le WebDJ en activant le micro (ou sur icecast ?). Lors de la diffusion, il n'est pas ncessaire d'arrêter la diffusion automatique (service AutoDJ)
  • WebDJ : Ne pas oublier de mettre son ideintifiant DJ et son mot de passe pour diffuser (tests à plusieurs ?). On peut customiser 2 playlist locales et choisir les fichiers à envoyer (pas de possiblité de piocher dans les playlists déposée sur le serveur). Activer le micro en haut pour voir le curseur bouger. Fonction “CUE” à détailler (superposition ? Points de repère ? mixage ? Pas compris…). Dès qu'on quitte la page WebDJ, la diffusion auto reprend.
  • Il faut parfois redémarrer le service webradio (déconnexion des auditeurs) si on dés-active le service webDJ par exemple, mais le lecteur web se reconnecte automatiquement.

Depuis le menu “Rapports” / “Auditeurs”, on a des stats en direct, et par jour et pour les meilleurs et pires titres.

A venir

Un retour sur docker ps nous montre que plusieurs instance de docker tournent :

jrcs/letsencrypt-nginx-proxy-companion:latest
jrcs/letsencrypt-nginx-proxy-companion:latest
azuracast/azuracast_nginx_proxy:stable
azuracast/azuracast_web_v2:stable
azuracast/azuracast_radio:stable (certains ports redirigés de 8000 à 8496 : 9000 = limitations du nombre de webradio ?)
azuracast/azuracast_db:stable
azuracast/azuracast_redis:stable
azuracast/azuracast_influxdb:stable

Les médias de chaque webradio sont stockés dans /var/azuracast/stations/nomradios (dans un docker)

  • Customiser le fond de la page d'accueil de chaque webradio ? (ticket) (pour le changer de manière distante)
  • Limitation du nombre de webradio ? (Cahque webradio dispose de ports propres pour diffusion , admin,
  • technique/webradio/azuracast_serveur.1590848985.txt.gz
  • Dernière modification : 2020/05/30 16:29
  • de francoisa