jueves, 19 de enero de 2006

Radio por internet (XMMS/ICECAST)

Vale chicos aqui esta este documento para que podais montaros una radio por internet a traves del xmms y el icecast. Tambien se puede con el shoutcast, pero como es codigo cerrado, he preferido usar icecast y asi tenemos todo con codigo abierto, ademas que con icecast puedes emitir en ogg y oggflac. jejejejej

Bien pongamonos a ello...

1º. Descargas el icecast y el oddcastv2_xmms desde aqui

http://www.icecast.org/download.php
http://www.oddsock.org/tools/oddcastv2_xmms

El oddcastv2_xmms es el plugin del xmms para conectar con el servidor icecast. Desde hace tiempo se ha portado a oddcastv3-jack, pero es super lioso y engorroso y nada vistoso para emitir. Si bien el port que hay de ese plugin para windows si que lo ha hecho bien, como plugin de winamp que al configurar el plugin, se muestra una ventana como esta.



Es el plugin hecho para windows, en fin que podemos hacer, pues esperar a ver si implementa el plugin para xmms o xmms2, y asi se pueda ver como esta ventana.
He podido configurar y hacer funcionar la version oddcastv3-jack, pero prefiero usar la version antigua.



Bien seguimos, estos 2 paquetes en sus respectivas paginas tienes paquetes precompilados, pero yo prefiero compilarlos yo mismo y crearme mis paquetes.

2º. Pasamos a descomprimir, compilar e instalar los paquetes

No es necesario ningun parametro especial en el configure, osea "./configure && make... etc..."
¡Ah! ¡Importante!, si vais a usar el oddcastv2, necesitais las wxGTK compiladas con GTK1

3º. Ahora habra que configurar el icecast

Vamos a /usr/etc, /usr/local/etc o /etc segun donde se os haya instalado. Alli encontraremos un archivo tal que icecast.xml
Editamos el archivo y lo primero de todo es ir al final del archivo y buscar estas lineas

< changeowner >
< user > nobody < / user >
< group > nogroup < / group >
< / changeowner >

En el lugar de nobody pondremos el usuario que lanzara el servidor y en nogroup el grupo al que pertenece el usuario. A mi me funciona sin cambiarlo, simplemente creo los directorios de log, con permisos para el usuario que lanza el servidor y ya me dejó.

Luego habra que cambiar las rutas a los archivos log,web y admin... puesto que no los crea bien.. o al menos a mi nome lo hizo
al 75% del archivo encontrareis esta lineas...

< basedir > /usr/local/share/icecast < / basedir >
< logdir > /usr/local/var/log/icecast < / logdir >
< webroot > /usr/local/share/icecast/web < / webroot >
< adminroot > /usr/local/share/icecast/admin < / adminroot >

Cambiarlas segun donde tengais instalado el icecast
< basedir > es la ruta donde se haya instalado el icecast
< logdir > es donde se vayan a crear los log, el directorio tiene que tener permisos de escritura puesto que se crearan unos archivos. Yo tengo como ruta /tmp
< webroot > normalmente o es /usr/local/share.... o /usr/share...
< adminroot > normalmente o es /usr/local/share.... o /usr/share...

Tambien en este archivo vereis muchas otras opciones a configurar, a gusto de todos, lo que os teneis que quedar o si quereis la cambiais es la contraseña... por defecto es "hackme". Esa contraseña es la que tendreis que poner en el plugin oddcast

4º. Ahora arrancamos el servidor

Se puede arrancar asi: icecast -b -c /usr/etc/icecast.xml

Como veis la ruta al icecast.xml ya la sabeis de antes, asi que si es distinta cambiar segun sea en vuestros equipos.
La opcion "-b" es para que se ejecute en background, si quereis la podeis quitar la primera vez, para ver si da un error al arrancar el servidor..
Sino muestra ningun error, Enhorabuena! ya teneis el servidor montado, y ya esta la cosa casi casi para que funcione...

5º. Ahora arrancar el xmms y configurar el plugin oddcastv2_xmms

Pues eso arrancais el XMMS y os vais a las preferencias alli en la pestaña plugins de efectos habilitais el plugin oddcast v2 .... y os aparecera una ventana que tendran 3 botones. Ahora de lo que se trata es de configurar el plugin para que conecte con el servidor y decirle con que calidad se va a emitir por internet...
Ya que tenemos icecast lo aconsejable seria en ogg ya que se puede emitir con la mitad de kb's que un mp3 con la misca calidad que un mp3 del doble de calidad que el mp3
Luego en la pestaña server del plugin le poneis que el servidor es de tipo icecast2 y la contraseña del encoder es la que habeis visto en el archivo de configuracion del icecast.. o si la habeis cambiado pues la que habeis puesto.
Por ultimo tendreis que poner un mountpoint
si usais ogg. Por ejemplo /radio.ogg <- esto no significa que vaya a crear ese archivo, pero es lo que luego se pondra en la ruta para conectarse a la radio por internet. Aceptais la configuracion y le dais al boton de conectar.
Si el server icecast se arranco bien deberia conectar...
Con esto si le dais a añadir URL en un winamp o un xmms en cualquier sitio de internet o en una lan... tendriais que añadir como url esto
http://IP:8000/radio.ogg y os deberia funcionar

¡¡¡A distrutarlo todos!!!

4 comentarios:

xhiena dijo...

interesante xD
yo he puesto un reproductor Mp3 en mi blog de bitacoras xD

Mad-Soft dijo...

Interesante lo del flash, es curioso, ademas puedes pooner la cancion que quieras....
Pero sinceramente no soy partidario del flash en las paginas web...

Mad-Soft dijo...

Otra forma, con icecast, darkice y xmms
http://mad-soft.blogspot.com/2006/10/radio-por-internet-xmmsicecast.html

Mad-Soft dijo...

A ver si actualizo un día y explico como usar, icecast + ices para emitir por internet.