$ Last revision: 01/04/2004 $


Éste tutorial explica cómo instalar Icecast2 como servidor de streaming y ICES2 como "source" para poder con todo ello emitir desde nuestro ordenador.
La emisión se realizará en OGG, por tratarse de un formato de archivo libre y abierto, además de por sus excelentes ratios de compresión y escasa pérdida de calidad. Por todo ello le hace ser el formato ideal para emitir música principalmente.


1. Instalamos unas herramientas que luego nos serán necesarias.


$ apt-get install libxml2 libxslt1.1 curl

2. Si estuvieramos en Woody, nos tendremos que pasar temporalmente a Sarge para poder disfrutar de Icecast2, para lo cual editamos el archivo /etc/apt/sources.list y tras comentar las líneas de Woody, descomentamos las de Sarge.
Tras hacer ésto, ejecutamos:


$ apt-get update
$ apt-get install icecast2 ices2

Lo que nos resolverá las dependencias que nos falten, e instalará todo lo necesario. No olvides después devolver la normalidad a tu /etc/apt/sources.list
Ya sé que ésta no es una forma muy limpia de jugar con Debian, pero es lo más sencillo para instalar Icecast2 sin tocar demasiadas cosas y archivos.
Haz otro "apt-get update" cuando hayas restaurado el estado!


3. Ahora configuraremos un poco el servidor. Para ello edita /etc/icecast2/icecast.xml y cambia lo que creas oportuno. Como ejemplo, éste es mi icecast.xml
Lo fundamental que tienes que cambiar es:


# Número de usuarios máximos conectados
<clients>5</clients>
# Número máximo de fuentes conectas al server
<sources>1</sources>

# Toda la sección <authentication>
# Cambia los passwords

# El nombre de tu máquina, o tu IP pública
<hostname>kalendas.net</hostname>

# Por seguridad, pon esto a 0
<fileserve>0</fileserve>

# Yo personalmente hago chroot, modifica:
<security>
 <chroot>1</chroot>
 <changeowner>
  <user>icecast2</user>
  <group>icecast</group>
 </changeowner>
</security>

# Y los paths correspondientes en <paths>
# Por ejemplo:
<basedir>/usr/share/icecast2</basedir>
<logdir>/log</logdir>
<webroot>/web</webroot>
<adminroot>/admin</adminroot>

4. Ahora tenemos que editar el archivo /etc/default/icecast2 y cambiamos lo siguiente:


USERID=icecast2
GROUPID=icecast
ENABLE=true

Con lo que el servidor quedará listo para arrancar, lo que se consigue con:


$ /etc/init.d/icecast2 start

5. Ya casi hemos acabado. Nos queda configurar la fuente de audio que enviará los datos al servidor, para que éste a su vez los retransmita a los usuarios conectados. Nosotros utilizamos ICES2.
Nos copiamos el archivo ices.xml y lo ponemos en /etc/icecast2/, editando lo que consideremos oportuno, como:


# Cambiamos la sección <metadata>
# y ponemos los datos de nuestra radio.

# Donde tenemos nuestra playlist?
<param name="file">/etc/icecast2/playlist.txt</param>

<hostname>localhost</hostname>
<port>8000</port>
# El password es el que pusimos antes
<password>paquito</password>
<mount>/stream.ogg</mount>

Tenemos que crear una playlist, que no es más que una lista de archivos OGG (ruta completa). Uno en cada línea.
Esta playlist la leerá ices2 e irá reproduciendo uno a uno los ogg ahí especificados. Si además hemos puesto en la configuración del ices2 <param name="once"<0</param> la playlist comenzará de nuevo al llegar al último archivo.
NOTA: Deberás incluir en esa playlist al menos 2 ogg diferentes, o Icecast2 te dará un error!


6. Y para terminar, lanzamos ICES2, pasandole como argumento ese XML que hemos creado. Lanza ICES2 después de haber arrancado el servidor Icecast.


$ ices2 /etc/icecast2/ices.xml

Si todo ha ido bien, nuestra radio estará emitiendo, y puedes conectar a ella introduciendo en tu XMMS o Winamp (pulsa control+L): http://dominio.com:8000/stream.ogg


Es importante que re-encodees tus ogg (o si no tienes ogg, pasa tus mp3 a ogg) a la calidad que desees y no permitir que ICES2 haga esta recompresión "on the fly", puesto que penalizará el rendimiento de tu máquina, consumiendo más recursos.


Scripts que he hecho:
+ radio-start: arranca Icecast + ICES2
+ radio-stop: para Icecast (y por consiguiente ICES2)


Puedes utilizar esos scripts en un par de tareas Cron como yo he hecho, para que a cierta hora se encienda la radio, y a otra hora se apague, despreocupándote por completo.


Programas útiles (windows):
+ CDex: pasa tus mp3 a ogg. Pon el Quality Setting a -1.00 para obtener 45kbps nominales.
+ WinVorbis: El CDex no pone bien las etiquetas, pero este programa es perfecto para ello.