Icecast
Intro
Icecast ens permet servir àudio en streaming, típicament per fer una estació de ràdio. És el que es sol conèixer per sistema de broadcast (ràdio/TV).
La arquitectura consta de, al menys, 3 punts:
- Servidor Icecast: és l'encarregat de retransmetre l'àudio als clients. La qüestió és... quin àudio?
- Client IceS: És un client especial, que en realitat determina la font del so. Les configuracions estàndard les podem trobar a /usr/share/doc/ices2/examples i son:
- ALSA : Sortida de sistema d'àudio
- OSS : ídem
- Playlist : Podem retransmetre àudio en format OGG/Vorbis (format lliure)
- ROAR : ...
- Clients listeners: són l'audiència de la ràdio. Hi ha molts programes que ho poden fer, nosaltres utilitzarem VLC.
Referències:
- Tutorial Ubuntu
- ...
Guia
- Instal·la Icecast i Ices en Ubuntu (provat en 14.04)
- Configura adequadament Icecast a
/etc/icecast2/icecast.xml
- Configura ICES per reproduir una playlist. Et caldrà agafar algun dels arxius de /usr/share/doc/ices2/examples i modificar-ho (particularment la password que hagis posat a Icecast perquè es pugui connectar).
- Copia l'arxiu /usr/share/doc/ices2/examples/ices-playlist.conf en el teu directori d'usuari
- Modifica els paràmetres necessaris:
- logpath : si deixeu el què hi ha (/var/log/ices) us obligarà a executar ices en mode root. És millor posar-ho a /tmp i així podem executar-ho amb qualsevol usuari no-privilegiat.
- consolelog : podem activar-ho (posar-ho a "1") i així no ens caldrà configurar el logpath anterior, ja que els resultats sortiran per la consola.
- hostname/port/password : tal i com ho haguem configurat a Icecast. Són els paràmetres per connectar-nos a ell.
- mount : la "carpeta" de sortida, o "canal de ràdio" on volem emetre
- Crea la carpeta /var/log/ices per poder emmagatzemar els logs
- Agafa arxius d'àudio (MP3, WAV, etc.) i transforma'ls a OGG/Vorbis que és el format compatible (pots utilitzar per exemple Audacity).
- Crea una playlist amb els noms dels arxius a reproduir. Mira a l'arxiu de configuració de Ices quin nom ha de tenir aquest arxiu.
- Es recomana per senzillesa posar tots els arxius en el mateix directori:
- ices-conf-playlist.xml
- arxius OGG de musica
- playlist.txt amb la llista d'arxius a reproduir
- Arrenca Ices. Assegura't que pots llegir els logfiles per seguir els errors.
$ ices2 ices-conf-playlist.xml
- Consulta la quantitat de clients (retransmissors) a
http://localhost:8000
- Connecta't amb el client VLC (o amb qualsevol altre). Hauràs de connectar-te al flux de xarxa (consulta el mountpoint al fitxer de conf o als logs):
http://<server_ip>:<port>/<mountpoint>
Per anar més enllà:
- Crea una pàgina web i busca algun plugin per incrustar la ràdio al document HTML.
- Prova una configuració diferent, per exemple amb OSS, ALSA o ROAR per fer una transmissió en directe de l'àudio.