Créer une webradio

Il existe plein de manières de démar­rer une webra­dio. Cer­taines solu­tions clé en main pol­lu­ent votre flux avec des pub­lic­ités non désirées. D’autres solu­tions imposent d’avoir un ordi­na­teur per­son­nel qui fonc­tionne sans inter­rup­tion à la mai­son. La solu­tion que j’ai com­mencé à met­tre en place n’a pas ces deux incon­vénients. Mais com­mençons par expli­quer ce qu’est une webra­dio, et com­ment ça fonc­tionne.

Qu’est-ce qu’une webradio ?

Une webra­dio, c’est une radio que l’on écoute grâce au web. Elle est disponible aux audi­teurs sous forme d’un flux de son, générale­ment au for­mat mp3, qui peut être soit lu dans un logi­ciel ou une appli­ca­tion dédiée, soit depuis un site inter­net, soit grâce à un poste de radio inter­net (ou radio wifi, quelque chose qui se démoc­ra­tise de plus en plus).

Quand on créé une webra­dio, on doit donc être capa­ble d’envoyer le flux de son vers le poste de cha­cun des audi­teurs. Cela veut dire que le serveur de dif­fu­sion doit avoir une bande pas­sante assez con­séquente, pour pou­voir accueil­lir tous les audi­teurs, comme l’illustre le sché­ma ci-dessous. Claire­ment, une con­nex­ion ADSL ne suf­fit pas, il faut louer les ser­vices d’une entre­prise qui dis­pose de serveurs à grande bande pas­sante.

Étapes principales de la diffusion d'une webradio

Le serveur de dif­fu­sion reçoit quant à lui le son depuis un mul­ti­plexeur, un out­il qui per­met de choisir (ou de mélanger) les sources : soit on pro­pose un direct depuis un stu­dio, soit on dif­fuse de la musique qui a été pro­gram­mée. Cha­cune de ces trois con­nex­ions n’étant pas trop gour­mande, on peut alors installer au besoin ces serveurs der­rière une con­nex­ion nor­male, même ADSL.

La plu­part du temps, sauf pour des raisons pra­tiques, on va choisir d’installer la par­tie pro­gram­ma­tion, mul­ti­plex­age et dif­fu­sion sur le même ordi­na­teur, le même serveur physique, instal­lé dans un dat­a­cen­ter. La par­tie prise d’antenne en direct se réalise générale­ment depuis un stu­dio en ville.

Et c’est là qu’intervient air­time, qui est un logi­ciel pilotant liq­uid­soap, cet out­il poly­va­lent qui fab­rique un flux de son à par­tir de mul­ti­ples sources. L’interface d’airtime per­met de choisir les morceaux qui passeront, et liq­uid­soap les assem­ble pour les envoy­er ensuite à un logi­ciel de dif­fu­sion, comme ice­cast par exem­ple.

Une solution à base d’airtime

Il y a deux ans, j’avais aidé Radio Cam­pus Cler­mont-Fer­rand à déploy­er une solu­tion d’automation avec air­time. Depuis ce temps, l’entreprise à l’origine de ce logi­ciel a arrêté de pub­li­er les nou­velles ver­sions sous licence libre… À cette occa­sion, j’avais co-signé une let­tre à la com­mu­nauté pour motiv­er l’arrivée d’un fork, libre­time. Aujourd’hui, libre­time est encore en ver­sion alpha, aus­si je vous invite forte­ment à préfér­er pen­dant quelques temps les ver­sions pro­duites du temps d’airtime.

Configuration du système

Pour pou­voir faire fonc­tion­ner sans sur­prise air­time 2.5.x, il est con­seil­lé d’installer une Ubun­tu 14.04 (trusty) 64 bits. Pour ma part, j’ai choisi de pren­dre un serveur chez Scale­way, à 3 euros par mois c’est très raisonnable. C’est je pense le prix min­i­mum à pay­er pour avoir une solu­tion com­plète­ment indépen­dante de toute pub­lic­ité, et pour maîtris­er toutes les briques logi­cielles du stream­ing.

Atten­tion cepen­dant, cette ver­sion d’ubuntu a une ver­sion de silan défectueuse : elle se trompe dans le cal­cul de la durée des morceaux. Il faut donc la rem­plac­er par une ver­sion pro­posée par l’entreprise qui développe air­time :


wget http://apt.sourcefabric.org/pool/main/s/silan/silan_0.3.2~trusty~sfo-1_amd64.deb
dpkg -i silan_0.3.2~trusty~sfo-1_amd64.deb

Une fois la machine instal­lée et ain­si cor­rigée, on com­mence donc par clon­er la ver­sion 2.5.x depuis le github de libre­time :

git clone -b archive/airtime/2.5.x https://github.com/LibreTime/libretime.git

Puis on se rend dans le réper­toire libre­time ain­si créé, et on lance l’installation :


cd libretime
sudo ./install

L’outil d’installation se charge d’installer les paque­ts man­quants, pour ren­dre fonc­tion­nelle la machine.

Configuration d’airtime

Pour régler cor­recte­ment air­time, il est néces­saire d’aller dans l’onglet Sys­tème, puis de régler le flux de sor­tie.

Fenêtre de réglage des flux dans airtime

Air­time est instal­lé avec ice­cast, logi­ciel qui se charge de faire la dif­fu­sion du flux vers les audi­teurs. Il suf­fit donc de régler air­time pour qu’il envoie le flux qu’il pro­duit à l’instance d’icecast instal­lée sur le même serveur. Sur la cap­ture d’écran ci-dessus, c’est le pan­neau droit qui per­met de faire cela. On peut d’ailleurs régler plus d’un flux, par exem­ple pour avoir dif­férentes qual­ités d’encodage, ou dif­férents for­mats (mp3, ogg).

Programmation d’airtime

Ensuite, on télé­verse des morceaux dans air­time, puis on créé des blocs intel­li­gents, des listes de dif­fu­sion, et enfin des émis­sions dans le cal­en­dri­er. Et puis on glisse des listes de dif­fu­sion dans les émis­sions, et c’est prêt à jouer ! Pour plus de détails, je vous pro­pose de con­sul­ter la doc­u­men­ta­tion que j’avais écrite pour Radio Cam­pus France à ce sujet.

Petits réglages

Si on a oublié d’installer la ver­sion cor­rigée de silan, les titres joués par air­time seront coupés à la moitié de leur durée à chaque dif­fu­sion. On peut alors installer la bonne ver­sion de silan, puis utilis­er air­time-re-silan, un petit script que j’ai écrit pour cor­riger les durées des titres déjà importés dans air­time…

À suivre…

Vous l’aurez sans doute com­pris en lisant ce bil­let, avec une paire de potes on se lance dans la créa­tion d’une webra­dio, pour ne pas tomber dans la dépres­sion post Radio Cam­pus. Affaire à suiv­re, donc !