Después de instalar icecast en nuestro servidor (la instalación y la configuración las hice en un CentOS 5.x pero debe ser igual para fedora y redhat), tenemos que configurar algunos archivos:
Primero editamos el archivo icecast.xml (podemos crear diferentes archivos xml con diferentes nombres y cada uno, representará una transmisión distinta. Por ejemplo, podemos tener radio1.xml y radio2.xml y cada uno será una transmisión distinta):
# vi /usr/local/icecast/etc/icecast.xml
Este es un ejemplo de como puede quedar configurado (Comento con "#" lo que es obligatorio cambiar):
XML:
<icecast> | |
<limits> | |
<clients>100</clients> # NUMERO MÁXIMO DE USUARIOS CONCURRENTES | |
<sources>2</sources> | |
<threadpool>5</threadpool> | |
<queue-size>524288</queue-size> | |
<client-timeout>30</client-timeout> | |
<header-timeout>15</header-timeout> | |
<source-timeout>10</source-timeout> | |
<burst-on-connect>1</burst-on-connect> | |
<burst-size>65535</burst-size> | |
</limits> | |
| |
<authentication> # CONTRASEÑAS QUE VAMOS A USAR PARA TRANSMITIR | |
<source-password>escribir_aqui_contraseña</source-password> # CONTASEÑA DE LA FUENTE QUE VA A TRANSMITIR | |
<relay-password>escribir_aqui_contraseña</relay-password> | |
| |
<admin-user>admin</admin-user> # USUARIO DE ADMINISTRADOR PARA LA PÁGINA DE SHOUTCAST | |
<admin-password>escribir_aqui_contraseña</admin-password> # CONTRASEÑA PARA ADMINISTRADOR | |
</authentication> | |
| |
<hostname>localhost</hostname> # AQUI PODEMOS CAMBIAR LOCALHOST POR ALGUNA IP DEL SERVIDOR | |
| |
<listen-socket> | |
<port>8111</port> # PUERTO QUE SE USARÁ PARA LA TRANSMISION | |
</listen-socket> | |
| |
<fileserve>1</fileserve> | |
| |
<paths> # SE TIENE QUE CAMBIAR LAS SIGUIENTES RUTAS: | |
<basedir>/usr/local/icecast/share/icecast</basedir> | |
| |
<logdir>/usr/local/icecast/var/log/icecast</logdir> | |
<webroot>/usr/local/icecast/share/icecast/web</webroot> | |
<adminroot>/usr/local/icecast/share/icecast/admin</adminroot> | |
| |
<alias source=”/” dest=”/status.xsl”/> | |
</paths> | |
| |
<logging> | |
<accesslog>access.log</accesslog> | |
<errorlog>error.log</errorlog> | |
<loglevel>4</loglevel> | |
<logsize>10000</logsize> | |
</logging> | |
| |
<security> | |
<chroot>0</chroot> | |
# AQUI TENEMOS QUE QUITAR LAS ETIQUETAS <!−− Y −−> QUE ENCIERRAN LAS ETIQUETAS "CHANGEOWNER" | |
<changeowner> | |
<user>icecast</user> # USUARIO QUE MAS ADELANTE VAMOS A CREAR | |
<group>stream</group> # GRUPO QUE MAS ADELANTE VAMOS A CREAR | |
</changeowner> | |
</security> | |
</icecast> |
Ok, guardamos el archivo xml y ahora vamos a crear el usuario "icecast" y el grupo "stream":
# useradd icecast
# passwd icecast
# groupadd stream
# gpasswd -a icecast stream
Ahora tenemos que crear el directorio para los archivos logs y damos permisos:
# mkdir -p /usr/local/icecast/var/log/icecast
# chown icecast.stream /usr/local/icecast/var/log/icecast/
Modificamos los permisos:
# chmod 777 /usr/local/icecast/var/log/icecast/*
Listo, ya tenemos todo configurado. Ahora solo resta iniciar icecast para hacer pruebas de transmisión:
# /usr/local/icecast/bin/icecast -c /usr/local/icecast/etc/icecast.xml
Para iniciar a transmitir al servidor, es necesario alguna "fuente". Por ejemplo, podemos usar edcast (http://www.oddsock.org/tools/edcast/) y transmitir a nuestro servidor con winamp o con la tarjeta de audio. En este caso, la configuración de edcast, sería algo así:
Server Type: Icecast2
Server IP: (la ip de nuestro servidor)
Server Port: 8111
Encoder Password: escribir_aqui_contraseña
Mountpoint: /stream.ogg
Notas:
1.- Si tienes un cortafuego en el servidor, es necesario habilitar el puerto que se usara (en este ejemplo 8111)
2.- Para entrar a la página de la transmisión:
3.- Si queremos iniciar icecast en el servidor y recuperar la linea de comando, sin tener que parar icecast:
# /usr/local/icecast/bin/icecast -c /usr/local/icecast/etc/icecast.xml > /dev/null &
Comentarios recientes