Table des matières

Version POC (Proof of concept) de la webradio V2

Je commence par les remerciements, tout particulièrement à trebmuh , le responsable du projet Librazik et à ephase , le technicien de la radio libre de Bordeaux : Giroll Plutôt que de repartir sur une base de Studiobox, qui propose un menu “sommaire” et des applications limitées, l'idée est de partir d'une distribution Grand public avec des paquets standards et de pouvoir transformer au moment voulu son système en webradio et de réutiliser son PC avec ou sans webradio. On part donc d'une base Linux Debian et on lui ajoute les dépots de l'équipe Librazik, et on utilise l'interface IDJC qui permet de gérer un flux webradio de manière très optimale.

0. Ce que cette solution peut faire

0-bis. Installation rapide

0-ter. Installation basique

Procédure d'install testée sur des X201

Installation de LibraZiK 3 ? Ne semble pas nécessaire.

1) Télécharger une image d'installation de la dernière version de Debian (Buster) avec l'environnement graphique Mate
https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/10.6.0-live+nonfree/amd64/iso-hybrid/debian-live-10.6.0-amd64-mate+nonfree.iso

2) Créer une clé USB “bootable” avec l'image téléchargée

3) Installer la dernière version de debian (Buster)

4) Ajouter les dépôts Librazik

* Se connecter avec son compte utilisateurice
* Menu → Système → Administration → Gestionnaire de paquets Synaptic
* Installer le paquet gdebi 1)
* Une fois le logiciel installé, fermer Synaptic
* Menu → Applications → Internet → Firefox ESR
* Aller à l'adresse http://download.tuxfamily.org/librazik/pasapas/
* Télécharger les paquets “librazik-keyring_3_all.deb” et “librazik-apt_3.02_all.deb” en double cliquant dessus. L'installateur de paquets GDebi se lance automatiquement et propose d'installer les paquets.
* Relancer Synaptic et “recharger” la liste des dépôts


Une fois Synaptic “rechargé” une erreur de doublon apparaît, il suffit de déselectionner les sources en double pour revenir à un “Synaptic sans erreur”.

5) Installer Jackd et IDJC

* Installer jackd et IDJC
* Suivre la fin de la procédure d'install/paramétrage des outils depuis https://ladoc.cemea.org/technique/webradiov2_librazik (à partir du paragraphe 4 “Paramétrage de Jackd”)

Et ça fonctionne !

1. Une base Debian

On installe sur une partition d'un PC une distribution Debian à partir d'une image ISO Debian net-install, (mais on peut aussi partir d'une Debian avec un environnement XFCE pré-installé et passer directement à l'étape 2.). On partitionne comme on veut (on peut tout mettre dans une seule partition si on veut).

On modifie les dépots Debian (/etc/apt/sources.list) pour ajouter à minima les dépots contrib (et non-free qui est ici optionnel mais nécessaire pour certains pilotes wifi comme firmware-iwlwifi):

deb http://deb.debian.org/debian stretch main contrib non-free
deb-src http://deb.debian.org/debian stretch main contrib non-free

deb http://deb.debian.org/debian-security/ stretch/updates main contrib non-free
deb-src http://deb.debian.org/debian-security/ stretch/updates main contrib non-free

deb http://deb.debian.org/debian stretch-updates main contrib non-free
deb-src http://deb.debian.org/debian stretch-updates main contrib non-free

et on installe le méta paquet mate-desktop-environment mais aussi lightdm (pour l'interface grahique) et on peut aussi installer mate-desktop-environment-extras mate-tweak

Mate est un environnement simple et léger basé sur Gnome 2. Mais au fond, peu importe l'environnement (d'autres à tester ?).

On peut aussi installer d'autres bricoles comme mate-tweak, firefox et ce qu'on veut d'autres tant que ça marche.

Paquets intéressants à rajouter, à compléter :

sudo apt install audacious easytag audacity task-mate-desktop mate-desktop-environment mate-desktop-environment-extras lightdm firefox-esr firefox-esr-l10n-fr network-manager-gnome

Il peut être utilie d'ajouter un taggeur de MP3 comme : easytag ou exfalso (ou d'autres)

IMPORTANT : il est nécessaire que l'utilisateur soit membre du groupe “audio”

sudo adduser monuser audio #adapter monuser à votre nom d'utilisateur

2. Ajout des dépots Librazik

On veut pouvoir bénéficier des supers outils de Librazik il faut ajouter les dépots de ce projet dans notre Debian.

Se rendre sur https://download.tuxfamily.org/librazik/decepas/ et télécharger les 2 fichiers .deb et les installer.

wget https://download.tuxfamily.org/librazik/decepas/librazik-keyring_2_all.deb && dpkg -i librazik-keyring_2_all.deb
wget https://download.tuxfamily.org/librazik/decepas/librazik-apt_2_all.deb && dpkg -i librazik-apt_2_all.deb
rm librazik-keyring_2_all.deb && rm librazik-apt_2_all.deb
apt-get update && apt-get upgrade

En cas d'erreur de doublons de dépots dans la mise à jour, corriger manuellement avec cette doc : https://librazik.tuxfamily.org/doc2/logiciels/synaptic/doublon

3. Ajout de paquets liés à Librazik

On a besoin surtout de jackd (serveur de son), de qjackctl (interface de gestion de Jackd) (mais on pourra aussi lui préférer Cadence couplé avec Catia qui jouent le même rôle) et de IDJC, Internet DJ Console (qui sera l'outil principal de la webradio).

Certains recommandent l'usage d'un noyau Linux Basse Latence (à confirmer ?) pour réduire le temps entre l'entrée du son et le retour dans le casque par exemple.

sudo apt install idjc qjackctl linux-image-4.9.0-8-lzk-bl-amd64 # remplacer qjackctl par cadence et catia

4. Paramétrage de Jackd

Jackd est un serveur de son, utile pour pouvoir gérer plusieurs entrées. IDJC n'en a pas besoin pour fonctionner et diffuser un flux audio vers la radio, mais il est nécessaire pour gérer différentes entrées son : pistes son, son externe (micros), son depuis un navigateur Internet…

Il est recommandé de lancer Jack avec l'utilitaire QJackctl.

Jack arrêté :

Jack démarré (mode TR Temps réel avec le noyau basse latence installé et démarré dessus) et 0 (0) x-runs (décrochage = craquements).

Le processeur est utilisé à 3,4 %.

Réglages de QJackctl, onglets Paramétres : On peut ajouter un péripherique audio à utiliser dans Jack dans Interface (sa carte son interne si on veut l'utiliser comme entrée micro ou la sortie locale = le retour de ce qui est diffusé en direct et même un peu plus…).

On peut passer la fréquence d'échantillonnage à 44100 Hz et descendre Echantillons/Période à 512 ou 256 ou moins pour trouver un compromis intéressant entre “CPU utilisé” et “latence”.

Atteindre une latence de 5ms avec 5% de CPU est très correct.

On peut ajouter des options pour lancer Jack dès le lancement de Qjackctl, le démarrer minimisé dans la barre des tâches

Pour une config optimale, voir cette page pour un logiciel de gestion de jackd similaire : https://librazik.tuxfamily.org/doc2/manuel/configuration_jack

et cette page pour tout saisir de Jack avec Cadence : https://librazik.tuxfamily.org/doc2/logiciels/suite-cadence/cadence

5. Paramétrage de Connexions Jack

Lancer le Graphe de QJackctl pour voir vos interfaces utiles.

Ici on voit :

Il va maintenant falloir lancer IDJC qui va rajouter beaucoup d'entrées utiles comme :

Au final, on doit connecter manuellement :

On peut ajouter des options pour lancer Jack dès le lancement de Qjackctl, le démarrer minimisé dans la barre des tâches

Pour une config optimale, voir cette page pour un logiciel de gestion de jackd similaire : https://librazik.tuxfamily.org/doc2/manuel/configuration_jack

et cette page pour tout saisir de Jack avec Cadence : https://librazik.tuxfamily.org/doc2/logiciels/suite-cadence/cadence

6. Configuration de IDJC

Décocher “Voir” → Canal mêtres qui ne nous intéressent pas

Aller dans Voir / Préférences et modifier :

Onglet Général :

Transmissions simultannées : 1 (on ne veut pas émettre sur plusieurs canaux en même temps mais on pourrait)

Nom du fichier d'enregistrement : emission-%Y%m%d-%H%M%S.$r au lieu de idjc-blabla.

Onglet Canaux

Renommer dans le canal 1 le texte “DJ” en “MicroRadios” et dans le 2 le “Aux” en “MusiqueInternet”

Et regarder les raccourcis “Scorciatoie”

7. Configuration pour diffusion et enregistrement dans IDJC

Aller dans Voir / Sortie

Il n'y a qu'une sortie puisqu'on a enlevé les autres. On clique sur «Configuration» et on choisit l'onglet «Connexion» et le bouton “Nouveau


Il semble que le script paramètre le canal de diffusion sur “radios.cemea.org/listen” de base.

Il faut supprimer cette config pour pouvoir éditer et paramétrer la sienne en “Icecast 2 Maître”

On remplit les champs avec son canal :

On n'oublie pas “source” ni son bon mot de passe de canal. On laisse cochée la petite case du bas pour avoir les stats d'écoute en direct !!! Et on valide.

Se rendre dans l'onglet “Format” et choisir MPEG puis enchainer les paramètres par défaut , jusqu'à obtenir la configuration jointe où les 3 capacités sont en vert :

Icecast (o) - Shoutcast (o) - Recordable (o)

Et on peut personnaliser l'onglet “Informations sur le flux” et on peut jeter un oeil à “Contrôle individuel

On peut aussi personnaliser le lieu des enregistrements : le 1 en Flux 1 (celui d'envoi = mp3) et le 2 en FLAC (sans perte).

On ferme et on est prêt pour la première session live !

8. On balance la sauce sur le web !

Pour lancer la diffusion sur le canal :

Fichier / flux / 1 votre flux ou connexion de groupe. A activer ou désactiver

Pour enregistrer la diffusion :

Fichier / Enregistreurs / 1 ou 2 ou les 2 selon votre besoin. A activer ou désactiver

Interface de IDJC.

2 onglets :

Lecteur principal pour diffuser des musiques en alternance avec les players (vous vous souvenez des entrées pl et pr dans le graphe de Qjackctl ? Ce sont eux) en haut et le Crossfader en bas : cocher bien «Monitor mix : Flux“ et non DJ.

Effets : pour balancer des jingles ou des musiques de fond (pendant une histoire par exemple).

Les boutons en bas servent à envoyer sur le Stream (flux sortant de la radio)': MicroRadios pour les micros branchés sur le ch_in_1, et MusiquesInternet sur le ch_in_3

On oublie vite les options Voip et téléphonie qui ne nous concernent pas.

Le bandeau à droite est très intéressant, car en plus du vu-mètre, il indique aussi :

Je connais pas la différence entre VU et Pick ???

Que faut-il faire maintenant ?

Voilà, il reste à faire des essais avec du matos différent et regarder toutes les options utiles qu'on activera par défaut dans des fichiers de conf par défaut.

Il faut malmener l'interface de IDJC pour en comprendre les subtilités et voir tout ce qui est utile / inutile pour nos besoins.

Objectif : proposer un paquet deb qui installe tout ce qu'il faut et ajouter des outils simples :

Donc essayer de regarder toutes les options, de comprendre comment ça fonctionne et de trouver de supers astuces.

Studiobox v2 en ISO

L'académie de Versailles a conçu une version actualisée, donc les sources sont publiques : http://francois-xavier-vial.ac-versailles.fr/studiobox/

Les CEMEA Belges ont aussi leur version : https://github.com/Papaul2/webradio_live

Donc une nouvelle version pourrait bientôt voir le jour.




1)
en acceptant la liste des autres paquets-logiciel à installer