technique:webradio_dev

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
technique:webradio_dev [2024/04/02 15:08] – modification externe 127.0.0.1technique:webradio_dev [2024/04/18 13:41] (Version actuelle) – ancienne révision (2022/09/19 12:27) restaurée guillaumev
Ligne 1: Ligne 1:
-**Cette page est obsolèteVeuillez accéder au contenu à son nouvel emplacement : [[https://bibliotech.cemea.org/books/outils-technique/page/webradio-dev|webradio-dev]]**+====== Personnaliser la webradio studiobox ====== 
 + 
 +La solution de Webradio des CEMEA est issue du projet Studiobox (développé par [[http://logicielslibres.dane.ac-versailles.fr/spip.php?article270|l'académie de Versailles]]). 
 + 
 +Le code en a été modifié et adapté à nos besoins. 
 + 
 +Voici la procédure détaillée de ces modifications. 
 + 
 +===== Récupérer les sources de studiobox ===== 
 + 
 +Le code actuel se trouvent dans un dépot public (comme l'était [[https://git.backbone.education/ggekiere/studiobox/tree/master|celui de Studiobox]]). Nous l'avons cloné et modifié. 
 + 
 +Le dépot Git utilisé : [[https://framagit.org/cemea/webradio|https://framagit.org/cemea/webradio]] 
 + 
 +Pour le récupérer, vous pouvez : 
 + 
 +  soit le télécharger avec le bouton "Download" 
 +  soit le dupliquer sur votre PC dans un dossier qui vous intéresse avec la commande (sous Linux, installer le paquet "git" : sudo apt install git): 
 +<code> 
 + 
 +git clone https://framagit.org/cemea/webradio 
 + 
 +</code> 
 + 
 +===== Modifier les sources de studiobox ===== 
 + 
 +Une fois le code source récupéré, vous pouvez le modifier. Tout se passe dans le dossier **Studiobox3/config**. Voici quelques dossiers utiles : 
 + 
 +  * **package-lists / **//principal.list.chroot//  : fichier contenant la liste des paquets à installer dans la distribution 
 +  * **include.chroot /**  : dossier recopié dans la distribution avec des ajouts manuels (scripts, images grub…). On se retrouve à la racine de la future studiobox. 
 +  * **includes.chroot / etc / skel /**  : contenu du dossier recopié dans le home de chaque utilisateur (qui contient .Scripts…) 
 +  * **include.installer**  / //preseed.cfg//  : fichier d'options pour l'installation de la distribution et de la version live (dépots, langue…) 
 +  * **packages.chroot /**  : dossier contenant des paquets .deb à installer hors dépôts. 
 +  * **includes.binary / isolinux /**  : dossier avec fond d'écran de démarrage 
 +  * **hooks**  : dossier contenant des scripts lancés pendant la création du live, pour nettoyage ou installation de paquets ou procédures supplémentaires 
 +===== Les scripts particuliers ===== 
 + 
 +Dans le dossier /home/studiobox on trouve quelques fichiers personnalisés (qui viennent de /etc/skel) dont certains servent au lancement des outils principaux de la webradio. 
 + 
 +==== Le dossier . Scripts ==== 
 + 
 +Il contient plusieurs scripts importants : 
 + 
 +=== diffrec-LS.bash === 
 + 
 +C'est lui qui lance avec quelques options la diffusion et enregistrements de la radio : 
 + 
 +  * diffrec-LS.bash cs : configure la carte son 
 +  * diffrec-LS.bash pm lance l'interface pour définir le point de montage 
 +  * diffrec-LS.bash rec : diffuse et enregistre en local 
 +  * diffrec-LS.bash internet : diffuse et enregistre sur internet 
 +  * etc. 
 + 
 +=== Le dossier .Scripts / config === 
 + 
 +Il contient les fichiers qui contiendront la configuration de la webradio : 
 + 
 +  * //cs//  : pour la carte son (normalement : 0,0 pour la première entrée de la première carte son) 
 +  * //pm//  : pour le point de montage, contient le nom du canal, le mot de passe 
 +==== Les menus (visibles par clic-droit) ==== 
 + 
 +Ils sont générés à partir de fichiers .xml qu'on trouve dans le dossier **.config / openbox. : **//menu.xml, menuinstallation.xml, menupersistence.xml// 
 + 
 +Lors de la modification de certaines options, ils sont remplacés par la version 2 de ces fichiers : //menu2.xml, menuinstall2.xml, menupersistence2.xml// 
 + 
 +Les possibles modifications sont dues par exemple à l'installation du paquet "Airtime", l'installation de la clef ou l'ajout de la persistance. 
 + 
 +==== Les dossiers ==== 
 + 
 +Les dossiers importants dans le "home"
 + 
 +  * **Documents**  : ils contiennent la documentation : ne pas le changer, les menus y font référence. 
 +  * **Enregistrements**  : C'est là que seront stockés les enregistrements en live. 
 +  * **Musique**  : Si Airtime est installé, c'est là qu'il va chercher la musique à diffuser. 
 +  * **Images**  : contient le fond d'écran. 
 +===== Recréer la distribution ===== 
 + 
 +**Pré-requis**  : sous Linux, installer le paquet "live-build" ([[https://live-team.pages.debian.net/live-manual/html/live-manual/index.en.html|voir documentation]]) (d'autres outils existent aussi pour la création d'ISO comme [[https://vmdb2.liw.fi/|vmdb2]] pour créer des iso à partir de fichiers YAML): 
 +<code> 
 + 
 +apt install live-build 
 + 
 +</code> 
 + 
 +Une fois ces dossiers ou fichier modifiés, placez-vous dans le dossier **Studiobox3**  (ou un autre)à (là où il y a **config**) et lancez la commande : 
 + 
 +<code> 
 +lb build # (lb pour live-build) 
 + 
 +</code> 
 + 
 +Elle va suivre les instructions contenus dans **config/**, **preseed.cfg**  et télécharger les paquets utiles et créer un fichier "iso" (studiobox-amd64-hybrid.iso) dans le dossier. Il faut patienter selon le débit de votre connexion et la vitsse de votre PC : 45 minutes minimum. 
 + 
 +Si vous deviez modifier les fichiers de configuration, il faudrait faire le ménage en lançant : 
 + 
 +<code> 
 +lb clean 
 + 
 +</code> 
 + 
 +avant de relancer 
 + 
 +<code> 
 +lb build 
 + 
 +</code> 
 + 
 +PS : il est possible et pratique de procéder à la création de cette nouvelle iso dans une studiobox installée pour avoir les outils utiles et un environnement similaire. 
 + 
 +===== Tester la distribution ===== 
 + 
 +Pour tester la distribution, vous pouvez soit l'installer sur une clef USB avec [[https://etcher.io/|Etcher]], soit utiliser la virtualisation avec [[https://www.virtualbox.org/|Virtualbox]] pour lancer l'ISO comme live-CD/USB. 
 + 
 +===== Aspects techniques ===== 
 + 
 +  * Le flux audio local est transféré sur le serveur via la librairie liquidsoap 
 +  * Le serveur audio qui diffuse est "icecast" à installer (paquet Debian : icecast2). Fichier de config à venir 
 +  * ll est nécessaire de définir un point de montage différent par flux audio 
 + 
 +==== Fichier de config icecast : ==== 
 + 
 +C'est l'utilisateur source qui est utilisé pour diffuser le flux. 
 + 
 +Le serveur icecast comprend chaque flux avec les options suivantes : 
 + 
 +webradio.mp3 / webradio 
 + 
 +port 8000 
 + 
 +===== Projets similaires de webradio ===== 
 + 
 +  * [[https://p-node.org/|Pi-node]] avec un raspberry-pi et émission locale sur réseau locale, sur serveur distant et en FM en courte portée 
 + 
 +====== Serveur de Webradio ====== 
 + 
 +Le serveur actuel de Webradio est configuré à partir d'un serveur classique Icecast avec un fichier de configuration manuel. 
 + 
 +Une alternative plus récente est possible avec la solution Azuracast déjà testée. 
 + 
 +  [[.:webradiosazuracast|Projet de serveur Azuracast]] : Webradios.cemea.org 
 + 
  • technique/webradio_dev.txt
  • Dernière modification : 2024/04/18 13:41
  • de guillaumev