Instalación de un server de streaming para MP3 y OGG en Ubuntu Dapper
Paso 1: Requisitos
1) Icecast
2) MuSE Streamer
Paso 2: Instalación
Instalamos el Icecast v1, mas que nada porque el v2 hay que compilarlo para que tenga soporte mp3 (y de paso que no he conseguido echarlo a andar correctamente con muse).
Podemos instalarlo gráficamente desde Sistema–>Administración–>Gestor de paquetes synaptic. Pulsamos sobre el boton buscar y escribimos «icecast-server». Botón derecho del ratón, «marcar para instalar» y luego pulsamos en el botón «aplicar».
O bien desde consola con:
sudo apt-get install icecast-server
Para el MuSE-Streamer tendremos mas cachondeo porque viene con soporte solo para OGG. Si queremos que tenga soporte para MP3 tendremos que bajarlo y compilarlo (¿porque no viene ya compilado con soporte mp3? Pues por esa porquería llamada patentes) , por suerte no es demasiado dificil. A continuación detallo los pasos.
Primero descargamos el programa, la web es http://muse.dyne.org/ . En la sección download podeis encontrar binarios, ojo que no tienen soporte mp3, y tambien los «sources» o codigo fuente. Para ir mas rápido os dejo la descarga del que buscamos aquí.
Ahora que ya lo hemos descargado tendremos que descomprimirlo. Podemos hacerlo graficamente con un simple doble-click en el archivo tar.gz y pulsando el boton extraer (ojo fijaos donde lo extrae!). O bien podemos hacerlo desde consola asi:
Primero me dirijo hacia donde esta el archivo tar.gz , en mi caso en el Escritorio.
cd /home/neil/Desktop
Despues descomprimo.
tar zxvf MuSE-0.9.2.tar.gz
Bien, una vez descomprimido tocará usar consola por narices, osea que ahora no hay opción gráfica (no le tengais miedo que no es para tanto).
Abrimos una consola si no lo habiamos hecho ya y nos vamos donde tengamos el directorio con lo que hemos descomprimido.
cd /home/neil/Desktop/MuSE-0.9.2
Ahora que ya estamos dentro tenemos que preparar el codigo fuente para ser compilado, la siguiente orden se ocupa de comprobar que tengamos todo lo necesario para compilarlo. Para ahorrar faena os dejo una lista de paquetes que serán necesarios (instaladlos con apt-get o desde Synaptic como antes):
build-essential vorbis-tools lame liblame-dev gettext xlibs-dev libgtk2.0-dev libx11-dev libvorbis-dev checkinstall makepasswd
No todos los paquetes listados son necesarios para esto , pero hay algunos que nos haran falta luego.
Bueno, desde consola seria (esto es mas que nada para los que haceis copy-paste):
sudo apt-get install build-essential vorbis-tools lame liblame-dev gettext xlibs-dev libgtk2.0-dev libx11-dev libvorbis-dev checkinstall makepasswd
Bien, ahora que tenemos (creo..) todo lo necesario vamos a preparar el codigo para ser compilado.
./configure
Si, es asi de simple un punto, una barra y el configure. Si al final os sale algun error es que probablemente falte algun paquete, instaladlo y listos. Puede serviros de ayuda la web packages.ubuntu.com que os permite buscar archivos incluso dentro de los paquetes para saber
cual neceistais.
Si no hemos tenido ningun problema más , pasamos a compilar:
make
Y cuando termine el «make» , si no ha habido errores, crearemos un paquete «deb».
sudo checkinstall
El checkinstall creará un paquete deb con el programa para que luego podais eliminarlo más facilmente. Contestad a las preguntas con la opcion por defecto o con un simple enter, ya que no nos vamos a dedicar a distribuir este paquete si no que es para uso personal.
Listo, checkinstall nos dejara hecho el deb y además ya nos lo habrá instalado.
Ale, ya tenemos el MuSE listo.
Paso 3: Configuración
Hemos de editar el archivo de configuración del icecast para que responda a nuestras necesidades. Esto lo haremos pulsando las teclas alt+F2 y escribiendo :
gksudo gedit /etc/icecast/icecast.conf.dist
O bien desde consola con:
sudo gedit /etc/icecast/icecast.conf.dist
El archivo en sí se explica muy bien (aunque en ingles). Pero por si acaso voy a dejar aqui los cambios que le he hecho yo , y que para lo que yo quiero me bastan.
Localizamos:
max_clients 900
max_clients_per_source 900
max_sources 10
max_admins 5
throttle 10.0
Y lo cambiamos por:
max_clients 10
max_clients_per_source 10
max_sources 2
max_admins 1
throttle 10.0
Localizamos:
encoder_password YAtutg4TIWqEA #hackme
admin_password YAtutg4TIWqEA #hackme
oper_password YAtutg4TIWqEA #hackme
Aqui tenemos que hacer algo a parte, abrimos una consola y ejecutamos:
echo password > mypassfile
Donde password es la contraseña que querais tener.
y acto seguido..
makepasswd –crypt –clearfrom=mypassfile
Esto os dará un resultado tal que..
password dn42HBlgeACDU
Bien, pues «password» (o lo que hayais puesto) será vuestra contraseña a usar en MuSE, y lo otro dn42HBlgeACDU que es la misma palabra pero encriptada es lo que tenemos que poner en «encoder_password..» etc..
Quedando así.
encoder_password dn42HBlgeACDU
admin_password dn42HBlgeACDU
oper_password dn42HBlgeACDU
Ahora localizamos:
hostname 192.168.1.1
port 8000
port 8001
Lo de «192.168.1.1» no tiene porque coincidir..
Y metemos una almohadilla «#» delante de «hostname..» para que icecast acepte peticiones en todas las interfaces de red.
#hostname 192.168.1.1
port 8000
port 8001
Seguimos, localizamos:
alias radiofri http://195.7.65.207:6903
Y lo dejamos así:
#alias radiofri http://195.7.65.207:6903
Esta opcion la desactivamos porque no estamos haciendo de «repetidor» de nadie, si no que somos nosotros mismos los que emitimos.
Guardamos el archivo como «icecast.conf» (recordad que al abrirlo se llamaba icecast.conf.dist) y cerramos todo lo que tengamos abierto.
4) Puesta en marcha:
Para ponerlo todo en marcha abrimos consola y escribimos:
sudo /etc/init.d/icecast-server start
Eso arrancará el servidor icecast, ahora arrancamos el MuSE que es desde donde le vamos a dar la musica.
muse &
Y cerramos la consola.
En el MuSE pincharemos el boton del enchufe, el primero y rellenaremos con los siguentes datos la parte de abajo:
Servidor: localhost
Puerto: 8000
Punto de montaje: /live
Descripción: lo que querais
Tipo de ingreso: icecast1
Contraseña: laquehayaispuesto cuando hemos hecho el makepasswd (la que se entiende xD)
Pulsais el boton «Conectar» y no estaria mal que guardarais esta configuracion pulsando en «perfil» –>»guardar».
Cerramos esta ventana y volvemos a la principal de MuSE. Veremos que hay una serie de botones que parecen de un reproductor de audio. Justo debajo en el espacio blanco que hay pulsamos boton derecho del raton y veremos que podemos añadir ficheros. Pues ale, a añadir ficheros mp3 como locos, pulsad el play y ya estareis streameando.
Podeis escucharos desde otro ordenador de vuestra red local yendo con el firefox a http://vuestraip:8000/live o en el mismo ordenador http://localhost:8000/live.
Espero que no haya habido ningun problema y la cosa esté funcionando 😉
Espero vuestros comentarios!
Nota: Es posible que tengamos que matar el esd para que todo funcione. Esto se haria desde una consola con «killall esd» y cuando terminemos de trabajar con icecast y MuSE podemos volver a ejecutarlo con «esd &».