¡Un millón de gracias a los dos! Ya lo estoy probando. En cuanto lo tenga funcionando subo una mini guía de cómo lo he hecho.
Aquí, la mini guía:
Music Player Daemon (mpd) es un módulo servidor reproductor de música. Está incluido en la distribución OpenWRT y, como veremos, se puede instalar en nuestros routers hg556a. Se controla desde un modulo cliente que puede estar alojado en el propio router o en un dispositivo externo, como puede ser tu teléfono móvil. Bien entendido que la música se reproduce en el router y el teléfono móvil vendría a ser el mando a distancia.
Para que suene la música hay que pincharle al router una tarjeta de sonido USB.
Evidentemente, todo esto no me lo he inventado yo. Lo he ido sacando de un lado y de otro. Mi fuente principal de inspiración es la página de Jeff, en la que propone construir una radio wifi a partir de un router Asus WL-520GU.
http://mightyohm.com/blog/2008/10/building-a-wifi-radio-part-1-introduction/Vamos al grano...
He partido de un firmware especialmente compilado por Noltari que incluye el paquete kmod-usb-audio. Para ver el post:
https://foro.seguridadwireless.net/openwrt/openwrt-en-huaweig-hg556a/msg247410/#msg247410Para descargar el firm:
https://dl.dropbox.com/u/4708147/openwrt/hw556/openwrt-HW556-squashfs-cfe_r32689_mac80211_audio.binSi prefieres utilizar una versión distinta, asegúrate de que tiene soporte USB y audio:
opkg update
opkg install kmod-usb2 kmod-usb-core kmod-usb-ohci
opkg install kmod-usb-audio
Si prefieres utilizar el firm Noltari, empieza aquí.
INSTALACIÓN DE LA TARJETA DE SONIDO USB.
Como ya he dicho, al router hay que instalarle una tarjeta de sonido USB. En las pruebas que he hecho, sólo me reconoce la tarjeta en el conector lateral y en de la parte inferior trasera. Por algún extraño motivo no la reconoce en el conector destinado al pincho 3G.
Una vez insertada la tarjeta, puedes verificar su correcta instalación escribiendo en la consola:
root@OpenWrt:~# ls /dev/a*
Si la reconoce, deberías ver el mensaje
/dev/audio
INSTALACIÓN DE LOS MÓDULOS SERVIDOR Y CLIENTE "MUSIC PLAYER"
El módulo servidor está en el paquete mpd-full y el cliente en mpc. Instálalos:
opkg update
opkg install mpd-full mpc
CREACIÓN DE CARPETAS NECESARIAS PARA MPD
Antes de poder usar mpd hay que hacer algunos ajustes:
root@OpenWrt:~# cd ~
root@OpenWrt:~# mkdir .mpd
root@OpenWrt:~# mkdir music
root@OpenWrt:~# mkdir .mpd/playlists
CONFIGURACIÓN DEL MÓDULO SERVIDOR
Edita el fichero /etc/mpd.conf. Busca la sección "audio_output"
Ahora tienes que eliminar algunas marcas de comentario (#) y cambiar la referencia "device" para que apunte al dispositivo de sonido USB. Te tiene que quedar algo como esto:
# An example of an OSS output:
#
audio_output {
type "oss"
name "My OSS Device"
device "/dev/audio"
format "44100:16:2"
}
No olvides guardar los cambios antes de salir del editor.
EJECUCIÓN DEL MÓDULO SERVIDOR
Nada más sencillo:
root@OpenWrt:~# mpd
Sí, ya lo sé. Da un error, pero funciona:
listen: bind to '0.0.0.0:6600' failed: Address already in use (continuing anyway, because binding to '[::]:6600' succeeded)
¡NO SOPORTO LOS MENSAJES DE ERROR!
Ya te digo que funciona a pesar de ese feo mensaje. De todos modos, si lo quieres evitar, edita de el fichero /etc/mpd.conf y cambia la línea en la que pone:
#bind_to_address "~/.mpd/socket"
por esta otra:
bind_to_address "127.0.0.1"
No olvides guardar los cambios.
Antes de lanzar de nuevo el módulo servidor, hay que eliminarlo de la memoria:
root@OpenWrt:~# killall -9 mpd
Ya lo puedes volver a ejecutar sin que te salga el mensaje de error:
root@OpenWrt:~# mpd
PARADA DEL MÓDULO SERVIDOR
La única forma de para el mpd es matar el proceso:
killall -9 mpd
EJECUCIÓN DEL MÓDULO CLIENTE
También es sencillo:
root@OpenWrt:~# mpc
Si todo ha ido bien debe aparecer en la consola un mensaje semejante a éste:
volume: 0% repeat: off random: off single: off consume: off
Todavía no suena nada y es normal, porque no le hemos indicado el qué.
AÑADIENDO FUENTES DE SONIDO
Hasta ahora me he centrado únicamente en reproducir sonido procedente de emisoras shoutcast.
Vamos con un poco de música celta:
root@OpenWrt:~# mpc add
http://173.192.225.172:9908LLEGÓ EL MOMENTO DE LA VERDAD
Aquí tengo que recomendar muchísima precaución con los auriculares. EL VOLUMEN ESTÁ AL 100%. Es preferible usar uno de esos que incorporan atenuador de volumen.
Para hacer sonar la emisora:
root@OpenWrt:~# mpc play
Empieza a sonar la música y aparece información tanto de la emisora (nombre, título de la canción, autor) como del propio mpd (volumen...)
Y hasta aquí puedo contar. Quiero seguir investigando, ya que hay comados del mpc que no me han funcionado. Por ejemplo, no consigo controlar el volumen ("mpc volume 40" debería establecer el volumen al 40%, pero no). Sé que se puede hacer sonar música de un pendrive, definir listas de reproducción y controlar el Music Player desde el teléfono móvil, pero todavía no sé cómo.
Posiblemente un buen punto de partida sea el foro
http://mightyohm.com/forum/viewforum.php?f=2 (in English, of course), donde mucha gente ha planteado sus dudas y otras han aportado sus soluciones.
La lectura del fichero /etc/mpd.conf también da algunas pistas.
Disculpadme por la parrafada, no me imaginaba que fuera a salir tan larga. Y sobre todo disculpadme porque tal vez no sea éste el sitio adecuado donde postearla.