Servidor de Straming ICECAST en Ubntu
-
Upload
ferney-vasquez -
Category
Documents
-
view
235 -
download
0
Transcript of Servidor de Straming ICECAST en Ubntu
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
1/12
SERVIDOR DE STRAMING
El repositurios con el quese configurar streaming ser icast
Introduccin
Icecast2Es un servidor media streaming que soporta los formatos ogg y mp3. Es accesible desde unnavegador web por lo que cualquier usuario se puede conectar a nuestro PC y escuchar loscontenidos que emitamos en tiempo real, es decir que podemos tener nuestra propia radio porinternet.
Icecast2 necesita lo que se denomina un cliente streaming que le entregue contenidos para quefuncione. Estos contenidos pueden ser archivos ubicados en una carpeta en el PC, un reproductorde CD, un micrfono conectado a la tarjeta de sonido.El cliente oficial de Icecast2 es Ices2, aunque existen otros como por ejemplo Muse. Existen dosversiones, una le suministra archivos en formato mp3, la otra versin le suministra archivos en
formato ogg.
PASOS A SEGUIR
1.- INSTALACIN DE icecast2 , ices2
2.- CONFIGURACIN DE icecast2
3.- HABILITAR EL SERVICIO
4.- CONFIGURACIN DEL CLIENTE ices2 PARA icecast2
5.- CONFIGURACIN DEL ARCHIVO DE CANCIONES A REPRODUCIR
6.- ARRANCAR EL CLIENTE ices2
7.- DETENER icecast2 , ices2
8.- INICIAR icecast2 , ices2 AL INICIAR UBUNTU
1.- INSTALACIN DE icecast2Instalamos icecast2, ices2 y herramientas vorbis para manejo de formatos de audio libres (ogg).Nos vamos a una terminal y tecleamos
apt-get install icecast2 ices2 vorbis-tools
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
2/12
2.- CONFIGURACIN DE icecast2Icecast2 viene con los archivos de configuracin ubicados en /etc/icecast2. Debemos configurarlos password para las fuentes y para el administrador, as como el nombre del servidor, editandoel archivo /etc/icecast2/icecast.xml
sudo gedit /etc/icecast2/icecast.xml
Buscamos la seccin y configuramos los siguientes parmetros
PASSWORD_FUENTES , PASSWORD_RELAY , ADMINISTRADOR, PASSWORD_ADMINISTRADOR
PASSWORD_FUENTESPASSWORD_RELAYADMINISTRADORPASSWORD_ADMINISTRADOR
Buscamos la seccin Indicamos el nombre del servidor que vamos a utilizar. Siemitimos desde nuestro equipo en local ponemos localhost
www.miservidor.com
Buscamos la seccin Indicamos el puerto desde el que emitimos. Si emitimosdesde nuestro equipo en local podemos dejar el 8000
8000
3.- HABILITAR EL SERVICIO.
Nos vamos a una terminal y editamos el archivo /etc/default/icecast2 poniendo la
variable ENABLE a true que por defecto viene inhabilitada.
sudo gedit /etc/default/icecast2
# Edit /etc/icecast2/icecast.xml and change at least the passwords.# Change this to true when done to enable the init.d scriptENABLE=true
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
3/12
icecast2 viene con un servicio montado en /etc/init.d/icecast2 (el cual acabamos de habilitar),ahora lo activamos
sudo /etc/init.d/icecast2 start
En consola nos mostrar
Starting icecast2:
Si ahora nos vamos a la barra de direcciones del navegador web y tecleamoshttp://localhost:8000 , si todo fue correcto veremos la pgina de icecast , desde la cual tenemos
acceso a administracin, listas de reproduccin, conexiones clientes
Como vemos an no tenemos ningnActive Mountpoints, lo cual conseguiremos tras instalar elcliente ices2 y establezcamos las "lista de canciones"
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
4/12
4.- CONFIGURACIN DEL CLIENTE ices2 PARA icecast2
Ices2 no viene con archivos de configuracin por defecto. Lo que si traeen /usr/share/doc/ices2/examples son archivos de ejemplo para configuraciones de alsa (ices-alsa.xml), oss (ices-oss.xml) y playlist (ices-playlist.xml).
Vamos a utilizar esta ltima: creamos una carpeta en /etc llamada ices2 ,copiamos all el archivo y
le otorgamos permisos
sudo mkdir /etc/ices2
sudo cp /usr/share/doc/ices2/examples/ices-playlist.xml /etc/ices2/
sudo chmod +x /etc/ices2/ices-playlist.xml
A continuacin editamos el archivo y lo configuramos
sudo gedit /etc/ices2/ices-playlist.xml
Es muy sencillo, vamos a ir vindolo por secciones:
http://lavidaestux.files.wordpress.com/2011/12/icecast-streaming-media-server-3.png -
7/31/2019 Servidor de Straming ICECAST en Ubntu
5/12
En la seccin cambiamos el 0 por 1, de esta forma evitaremos que se mantenga laterminal abierta hasta que lo cerremos.
1
En la seccin configuramos:
NOMBRE ESTACIONGENERO ESTACIONDESCRIPCION ESTACION
En la seccin configuramos:
/miruta/playlist.txt10
Establecemos la ruta al archivo que contiene la lista de canciones:/miruta/playlist.txt
Random: indicamos si queremos que la reproduccin de los archivos sea secuencial (0) o aleatoria(1).
Once: Indicamos si queremos que la emisora deje de emitir al terminar la lista de reproduccin (1)o que contine emitiendo sin interrupcin (0).
En la seccin configuramos:
localhost8000PASSWORD_FUENTES/lista_de_reproduccion.ogg
La direccin del servidor: localhost (porque lo tengo en local, si lo instalsemos en un hostingpondramos la direccin)El puerto: por defecto trae 8000 (lo dejamos tal cual)El password de las fuentes: PASSWORD_FUENTES (es el mismo password que hemos puesto en/etc/icecast2/icecast.xml)
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
6/12
En debemos escojer el mount point que queramos para emitir. Podemosponer algo descriptivo (sin espacios y acabado en .ogg), por ejemplolista_de_reproduccion.ogg
Y aqu est el archivo completo:
1/var/log/icesices.log4
0
Radio La Vida es TUXLinux Ubuntu RadioMsica para relajarse
playlistbasic/home/greiscool/musicaradio/playlist.txt100
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
7/12
localhost8000PASSWORD_FUENTES/lista_de_reproduccion.ogg
25
80
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
8/12
-->
64000441002
Creamos la carpeta para el archivo log para ices
sudo mkdir /var/log/ices
y le damos permisos, si no lo hacemos al arrancar ices2 nos lanzar un ERROR
sudo chmod 777 /var/log/ices
5.- CONFIGURACIN DEL ARCHIVO DE CANCIONES A REPRODUCIR
Para ello tenemos dos opciones:
Opcin a) Creamos la ruta hacia un archivo con la lista de canciones con el comando siguiente
sudo find /RUTA_DONDE_ESTAN_LAS_CANCIONES -iname "*.ogg" >/RUTA_DONDE_TENGO_EL_ARCHIVO_LISTA/LISTA.TXT
Opcin b) Editamos el archivo y tecleamos la ruta completa para cada cancin
sudo gedit /RUTA_DONDE_TENGO_EL_ARCHIVO_LISTA/LISTA.TXT
/RUTA_DONDE_ESTAN_LAS_CANCIONES/nombre_cancion1.ogg
/RUTA_DONDE_ESTAN_LAS_CANCIONES/nombre_cancion2.ogg..
6.- ARRANCAR ices2
Tecleando en consola
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
9/12
sudo ices2 /etc/ices2/ices-playlist.xml &
Si ahora nos vamos a la pgina (en este caso http://localhost:8000 veremos que aparece elenlace http://localhost:8000/lista_de_reproduccion.ogg , con el que podemos conectarnos a laradio.
7.- DETENER icecast2 , ices2
Si deseamos detener icecast2 tecleamos en una terminal
sudo /etc/init.d/icecast2 stop
nos responder
http://lavidaestux.files.wordpress.com/2011/12/icecast-streaming-media-server-4.png -
7/31/2019 Servidor de Straming ICECAST en Ubntu
10/12
Stopping icecast2: icecast2.
Si deseamos detener ices2 tecleamos en una terminal
ps ax | grep ices2
nos responder dandonos el pid del proceso, algo como lo siguiente
23242 pts/0 S+ 0:00 grepcolor=auto ices2
(23242 es el pid que me ha dado, debemos comprobarlo en el momento que deseemos)
Este nmero nos permitir detener el ices2 (la emisin) cuando deseemos, tecleando en consola
sudo kill -9 23242
8.- INICIAR icecast2 , ices2 al iniciar Ubuntu
Creamos un archivo icecast2 y lo colocamos en /etc/init.d , tecleando en consola
sudo gedit /etc/init.d/icecast2
con las siguientes lneas de cdigo (aunque tiene una cabecera que identifica al autor original, hasido modificado posteriormente en varias ocasiones, incluso yo mismo lo he modificado) esfuncional si se han seguido los pasos anteriores.
#!/bin/sh###BEGIN INIT INFO# Provides: icecast2
# Required-Start: $remote_fs $network# Required-Stop: $remote_fs# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: Starts the icecast audio streaming server daemon### END INIT INFO## icecast2
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
11/12
## Written by Miquel van Smoorenburg .# Modified for Debian# by Ian Murdock .## Further modified by Keegan Quinn # for use with Icecast 2#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binDAEMON=/usr/bin/icecast2NAME=icecast2DESC=icecast2ICES=/usr/bin/ices2ICES_CONFIGFILE=/etc/ices2/ices-playlist.xml
test -x $DAEMON || exit 0
# DefaultsCONFIGFILE="/etc/icecast2/icecast.xml"CONFIGDEFAULTFILE="/etc/default/icecast2"USERID=icecast2GROUPID=icecastENABLE="false"
# Reads config file (will override defaults above)[ -r "$CONFIGDEFAULTFILE" ] && . $CONFIGDEFAULTFILE
if [ "$ENABLE" != "true" ]; thenecho "$NAME daemon disabled - read $CONFIGDEFAULTFILE."exit 0
fi
set -e
case "$1" instart)
echo -n "Starting $DESC: "start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \
--exec $DAEMON -- -b -c $CONFIGFILE
sleep 3start-stop-daemon --start --quiet --exec $ICES $ICES_CONFIGFILEecho "$NAME.";;
stop)echo -n "Stopping $DESC: "start-stop-daemon --stop --oknodo --quiet --exec $ICES
-
7/31/2019 Servidor de Straming ICECAST en Ubntu
12/12
start-stop-daemon --stop --oknodo --quiet --exec $DAEMONecho "$NAME.";;
reload|force-reload)echo "Reloading $DESC configuration files."start-stop-daemon --stop --oknodo --quiet --exec $ICESstart-stop-daemon --stop --signal 1 --quiet --exec $DAEMONsleep 3start-stop-daemon --start --quiet --exec $ICES $ICES_CONFIGFILE;;
restart)echo -n "Restarting $DESC: "start-stop-daemon --stop --oknodo --quiet --exec $ICES
start-stop-daemon --stop --oknodo --quiet --exec $DAEMONsleep 3start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \
--exec $DAEMON -- -b -c $CONFIGFILEsleep 3start-stop-daemon --start --quiet --exec $ICES $ICES_CONFIGFILEecho "$NAME.";;
*)echo "Usage: $0 {start|stop|restart|reload|force-reload}" >&2exit 1;;
esac
exit 0
Una vez creado el archivo hacemos que se agregue como servicio y as ser iniciado durante elarranque de Ubuntu.
sudo update-rc.d icecast2 defaults
Listo cada vez que arranquemos Ubuntu ya tendremos el icecast2 y su cliente ices2 operativos.