Hilo musical con Openwrt

radio

Objetivo: Poner hilo musical con Openwrt accediendo a servidores de streaming de Internet. (BORRADOR)

Paso 1. Instalación de paquetes necesarios.

Accedemos con una terminal al router por ssh e instalamos paquetes necesarios para reconocer USB, Drivers de Tarjeta Sonido usb, MPD (Music Player Daemon), MPC (Music Player Client) y editor nano:

opkg update
opkg install kmod-usb2 kmod-usb-core kmod-usb-ohci kmod-usb-audio mpd-full mpc nano

Paso 2. Configurar Mpd.

En la terminal seguimos la siguiente secuencia de comandos:

cd ~
mkdir .mpd
mkdir music
mkdir .mpd/playlists

Editamos el fichero de configuración:

nano /etc/mpd.conf

Introducimos esto:

# dirección y puerto para MPD
 bind_to_address "127.0.0.1"
 port "6600"
 # ubicación de directorios y archivos
 music_directory "/root/music"
 playlist_directory "/root/.mpd/playlists"
 db_file "/root/.mpd/mpd.db"
 # archivo opcional que registra la actividad de MPD (depuración de errores)
 log_file "/root/.mpd/mpd.log"
 # archivos opcionales para guardar el estado y el ID de proceso de MPD
 state_file "/root/.mpd/mpd.state"
 pid_file  "/root/.mpd/mpd.pid"
 # salida de audio
 audio_output {
 type "alsa"
 name "My ALSA Device"
 device "hw:0,0"
 format "44100:16:2"
 mixer_type "software"
 }

Paso 3. Arrancar servicio Mpd.

Arrancamos el servicio mpd

mpd

Al iniciar da error ya que falta la base de datos y otros ficheros. No debemos preocuparnos ya que ese error no lo dará más.

Paso 4. Añadir emisoras de radio para nuestro hilo musical.

Encontraremos emisoras de radio en http://www.internet-radio.com

Otra forma es realizarlo

Con el siguiente script (ejecutable desde linux no desde openwrt) obtendremos más de 11.000 enlaces a emisoras diferentes. Lo hacemos desde Linux ya que el archivo xml que se descarga tiene cerca de 4,5 Mb pudiendo saturar el espacio disponible de almacenamiento en Openwrt.

En una consola de nuestro linux hacemos:

nano parsexml.sh

A continuación copiamos el script siguiente:

#!/bin/bash
wget http://dir.xiph.org/yp.xml
urls=($(cat ./yp.xml | grep -oP '(?<=listen_url>)[^<]+'))

for i in ${!urls[*]}
do
 echo "${urls[$i]}"
done

guardamos el archivo y hacemos lo siguiente para declararlo como ejecutable

 chmod +x parsexml.sh

Para ejecutarlo haremos:

./parsexml.sh > lista.txt

En el archivo lista.txt obtendremos más de 11.000 enlaces. Ahora sólo toca elegir cuales nos gustan más.

Ya solo queda añadir al router las emisoras elegidas. Por ejemplo:

mpc add http://radio.mercuryradio.ru:8000/listen
mpc play  #para que comience

Un comentario en “Hilo musical con Openwrt

  1. ¿Pero un punto de acceso “normal” tiene tarjeta de sonido donde enchufar un altavoz??
    ¿Qué modelo sería recomendable usar en este caso?
    Gracias!

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

96 − 91 =