Instalación rápida de streaming con IceCast2 y Ices2
Contents
En este tutorial se intenta explicar como configurar un streaming de audio lo mas rápido posible sin entrar en detalles, en este caso sobre Debian GNU/Linux.
Qué es Streaming?
Streaming es un término que se refiere a ver u oír un archivo directamente en una página web sin necesidad de descargarlo antes al ordenador. Se podría describir como hacer "clic y obtener". En términos más complejos podría decirse que describe una estrategia sobre demanda para la distribución de contenido multimedia a través de una red.
Ahhh, mira vos... y Icecast2?
Icecast es un proyecto para streaming de medios mantenido por la Fundación Xiph. Es muy versátil en que los nuevos formatos se pueden agregar relativamente fácil y soporta estándares abiertos para comunicación e interacción. Actualmente el servidor Icecast soporta en sus últimas versiones streams Ogg Vorbis, MP3, Ogg Speex, Ogg FLAC, Ogg Theora y AAC.
Instalar IceCast2
- Como mencionamos anteriormente esta guía esta basada en Debian ... por ende... vamos a utilizar APT para instalar nuestros paquetes:
apt-get install icecast2 ices2
Configurando el Servidor
* Una vez instalado icecast2 debemos editar el archivo de configuración con nuestro editor favorito:
vim /etc/icecast2/icecast.xml
* Aquí pueden modificar todo lo que crean necesario (puerto, hostname, contraseñas, logs, etc) en este caso vamos a modificar solamente dos cosas:
- Cantidad máxima de usuarios y de fuentes:
<icecast>
<limits>
<clients>5</clients> <------- Cantidad máxima de clientes
<sources>1</sources> <------- Cantidad máxima de fuentes- Contraseñas:
<authentication>
<!-- Sources log in with username 'source' -->
<source-password>hackme</source-password>
<!-- Relays log in username 'relay' -->
<relay-password>CAMBIARCONTRASEÑA</relay-password> <----------Cambiar aquí
<!-- Admin logs in with the username given below -->
<admin-user>admin</admin-user>
<admin-password>CAMBIARCONTRASEÑA</admin-password> <----------Cambiar aquí
</authentication>* Editamos el archivo /etc/default/icecast2 y modificamos la siguiente variable:
# Edit /etc/icecast2/icecast.xml and change at least the passwords. # Change this to true when done to enable the init.d script ENABLE=true <----------- Cambiamos "false" por "true"
* Listo, ya podemos reiniciar el servidor:
/etc/init.d/icecast2 restart
- Si todo esta correctamente configurado van a poder navegarlo:
http://nombredelservidor:8000
Transmisión de flujos
Icecast 2 es básicamente, un administrador de los flujos, pero no captura la salida de audio, por lo que requiere de algún complemento que realiza esta actividad. A pesar de poder usar diversas fuentes, nos enfocaremos a las más comunes, que son las pistas de audio codificadas en Ogg y MP3.
Convertir MP3 a OGG
Empezamos con OGG que en las pruebas realizadas se comporto mucho mejor.
Tenemos varios conversores de MP3 a OGG, vamos a utilizar MP32OGG debido a su simplicidad:
apt-get install mp32ogg
El comando es sencillo de usar:
Debian:# mp32ogg archivo.mp3 mp32ogg v0.11 (c) 2000-2002 Nathan Walp Released without warranty under the terms of the Artistic License Converting archivo.mp3 to OGG... archivo.ogg done!
Y listo!, ya tenemos nuestro archivo.ogg.
Esto también funciona si convertimos una carpeta que contenga mp3, va a crear un .ogg de todos los .mp3 que tengamos
mp3ogg /home/musica/mp3/Y
Ej:
|-- Yo Yo Ma (Bach) | `-- Cello Suites | |-- 14 - Cello Suites, disk 1 - 14.mp3 | `-- 14 - Cello Suites, disk 1 - 14.ogg |-- Yo-Yo Ma | |-- Bach_ 6 Suites for Unac. Cello | | |-- Cello Suite No.4, 6. Gigue.mp3 | | `-- Cello Suite No.4, 6. Gigue.ogg | `-- Great Cello Concertos - Disk 2 | |-- Elgar Cello Concerto in E Mino.mp3 | `-- Elgar Cello Concerto in E Mino.ogg |-- Yo-Yo Ma Edgar Meyer Mark O'Co | `-- Appalachian Journey | |-- 08 - Duet for Cello and Bass.mp3 | `-- 08 - Duet for Cello and Bass.ogg
Ices2 con OGG
Copiamos el archivo de ejemplo playlist de la documentación de ices2:
cp /usr/share/doc/ices2/examples/ices-playlist.xml /etc/icecast2/ices2-playlist.xml
Editamos información de nuestra radio:
<metadata>
<name>RADIO BALERA</name>
<genre>JAZZ FUSION</genre>
<description>Radio de Música Libre de Buenos Aires Libre</description>
</metadata>Ingresamos datos de nuestro servidor, estos datos deben coincidar con el archivo icecast2.xml que editamos en los pasos anteriores:
<hostname>localhost</hostname>
<port>8000</port>
<password>hackme</password> <--------------- Aquí va la contraseña que pusimos en el punto anterior
<mount>/example1.ogg</mount>Bueno, ya tenemos configurado icecast2, ices2 y pasamos nuestros mp3 al formato ogg, solo nos queda armar la lista de reproducción.
Para esto debemos crear el archivo playlist.txt en /etc/icecast2/ y detallar los temas que van a sonar en nuestro streaming :):
/home/pepito/musica/tema1.ogg /home/pepito/musica/tema2.ogg /home/pepito/musica/tema3.ogg /home/pepito/musica/tema4.ogg
Una manera de tomar nuestro ogg y pasarlos al txt sería:
Recomendaciones / Tips
- Puntos de vista 1 del autor, para crearlo de una forma adecuada.
- Puntos de vista 2, para realizarlo fácilmente.
Imágenes
- Fotografías de la construcción y/o del trabajo finalizado.
Véase también
Enlaze a otras páginas con información relativa a la Guía desarrollada.