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 &».
Te has dejado el último paso:
-poner a estrimear «marea» y pasarle el enlace a un pobre despistado.
cabrona 😛
Tenia que liar a algun pardillo… jeje
i no, efectivament no m’he llegit l’article aquest 😛
Y como puedo hacer para que me muestre la canción que se esta reproduccion?
Pedro,
En la ventana de la lista de reproducción se ve la cancion que se esta reproduciendo. De todas formas abriendo tu navegador y direccionandolo a http://localhost:8000/live deberias de escuchar la canción que está sonando.
Un saludo 😉
Gracias por tu respues, yo me referia a ver la cancií²n en el reproductor cliente, porque a mi me aparese el nombre de mi emisora.
Bueno por otra parte cuando elijo mis canciones me sale un mensaje:
«retrying to connect to localhost:8000/stream after 600 seconds»
y despues de ese tiempo empieza a transmitir, a que se debe y como puedo cambiar esto? el servidor que uso es icecast2 en ubuntu dapper 6.06 LTS
Muchas gracias por todo
Hola Pedro,
De momento creo que no es factible que salga el titulo de la cancion. Por lo de los 600 segundos imagino que es el tiempo que necesita para hacer el buffering, lo puedes ajustar en el archivo de configuracion del servidor 🙂
NeiL
Hola te cuento lo que me paso; hoy por la mañana desinstale gnome para que mi PC no estubiera tan lenta y ya no me sale el mensaje «retrying to connect to localhost:8000/stream after 600 seconds», pero se me cierra el muse como a los 10 min y en la consola me sale: «Fallo de segmentación»; qué sera?
Gracias por tu ayuda.
Un fallo de segmentación puede ser provocado por mil cosas diferentes, siento no poder ayudarte en esto. Quizá en el foro oficial del programa puedan darte alguna ayuda 😉
hola a todos, me parece muy bueno tu articulo, pero a pesar que he hecho todo al pie y extactamente cuando trato de conectar muse para que transmita por la red dice la coneccion a fallado, esto en la ventana de configuracion de la coneccion, a que se debe esto? agradezco pronta respuesta ya que quiero hacer una radio como unproyecto con unos amigos con contenido 100% sobre linux.
marcostux@gmail.com
Hey men AYUDA¡¡¡ cuando le doy para compilar osea le doy make… me marca error 1 y error 2… pork? k tengo k hacer o k me falta¡¡¡ ayuda¡¡
Supongo que el error no debe ser algo tan generico como «error 1». Da un poco mas de detalle..
yo segui el tutorial y me aparece un mensaje que dice «MuSe failed to find a jack audio server»
como soluciono el problema, soy nuevo en linux ubuntu
Para escucharlo desde afuera, haciendo NAT en el router bastaría?????
Lucas_grijander… el streaming es para eso precisamente para que desde fuera puedas escucharlo. Enruta el puerto que toque y listo.
hola pz porque no puedo guardar la cofiguracion de iceast ayuda me aparece error
Hola solo llegue hasta—– make——
me arroja :make: *** No se especificó ningún objetivo y no se encontró ningún makefile
que tengo que hacer