====== MPD y Clientes How-to ======
===== Situación =====
Queremos configurar un equipo para que reproduzca musica y se pueda controlar fácilmente desde diversos puntos.
{{ howto:music_player_daemon.png |Sistema de sonido con control remoto}}
==== Equipo ====
Se trata de un equipo con 1 tarjeta de sonido [[http://us.creative.com/products/product.asp?product=50&campid=20445|Sound Blaster Live!]] (con 4 canales), la cual funciona en [[http://www.kernel.org/|Linux]] con a través del módulo [[http://emu10k1.sf.net|emu10k1]]
El Sistema Operativo de la máquina es [[https://wiki.ubuntu.com/GutsyGibbon|Ubuntu Gutsy]]
==== Puntos de control ====
* Diversos clientes por software en varios equipos conectados a la red
* Botonera
* Tareas programadas
==== Musica ====
La música esta organizada en el servidor utilizando el árbol de directorios:
* /home/multimedia/musica/
* grupos
* Grupo1
* Disco1
* Cancion.mp3
* Cancion.ogg
* Disco2
* DiscoX
* Grupo2
* Disco1
* DiscoX
* GrupoX
* estilos
* estilo1
* Grupo3
* Grupo7
* estilo2
* Grupo7
* Grupo9
* estiloX
**TRUCO**
Para no duplicar el espacio, se han creado enlaces duros entre los grupos, lo cual evita ficheros duplicados, pero referencias en diversos directorios. Ejemplo: cp -rl grupos/"Paco de Lucia" estilos/flamenco/
===== MPD =====
Se trata de un servidor de reproducción, al cual se configuran diversos origenes para la música y gestiona la musica a través de los directorios, etiquetas ID3Tag, listas de reproducción y streams de audio sin consumir apenas recursos de la máquina, a diferecia de otros reproductores con interfaces de red para control remoto.
==== Instalación ====
Tan simple como:
usuario@maquina:~ $ sudo apt-get install mpd libmpeg3-1 libogg0
===== Configuración =====
Editamos el fichero de configuración: teniendo en cuenta:
music_directory
playlist_directory
audio_output { [...] }
mixer_type "software"
Quedando el fichero de configuración para nuestra situación así:
music_directory "/home/multimedia/musica"
playlist_directory "/home/multimedia/musica/playlist"
db_file "/var/lib/mpd/tag_cache"
log_file "/var/log/mpd/mpd.log"
error_file "/var/log/mpd/errors.log"
pid_file "/var/run/mpd/pid"
state_file "/var/lib/mpd/state"
user "mpd"
bind_to_address "0.0.0.0"
log_level "default"
audio_output {
type "alsa"
name "Sound BLaster"
device "hw:0,0" # optional
format "44100:16:2" # optional
}
mixer_type "software"
Se aconseja revisar el fichero de configuración para poder comprobar todas las capacidades tiene MPD.
===== Clientes =====
En el servidor multimedia se han configurado diversos clientes por software:
==== MPC ====
Cliente en modo comando para controlar al servidor de musica de una manera fácil.
=== Instalación ===
usuario@maquina:~ $ sudo apt-get install mpc
=== Uso ===
usuario@maquina:~ $ mpc help
Usage: mpc [command args]...
mpc version: 0.12.1
mpc Displays status
mpc add Add a song to the current playlist
mpc crop Remove all but the currently playing song
mpc del Remove a song from the current playlist
mpc play [] Start playing at (default: 1)
mpc next Play the next song in the current playlist
mpc prev Play the previous song in the current playlist
mpc pause Pauses the currently playing song
mpc toggle Toggles Play/Pause, plays if stopped
mpc stop Stop the currently playing playlists
mpc seek [+-][HH:MM:SS]|<0-100>% Seeks to the specified position
mpc clear Clear the current playlist
mpc outputs Show the current outputs
mpc enable
==== Sonata ====
Sonata es un cliente gráfico escrito en phyton que controla remotamente mpd.
=== Instalación ===
usuario@maquina:~ $ sudo apt-get install sonata
=== Uso ===
Lanzar sonata y por defecto se conectará contra localhost, si no es tan facil como abrirlo y poner en la configuación el host/ip donde esta corriendo el servidor MPD
{{ howto:sonata.png |Ventana principal de Sonanta}}
{{ howto:sonata-preferences.png |Preferencias de Sonata}}
==== MPC-SELECTOR ====
Se trata de un script escrito en [[http://galeria.locolandia.net|Locolandia]] para poder integrarlo fácilmente con el gestor de botones de metacity.
=== Instalación ===
Pues bien creas el script siguiente:
#!/bin/bash
#
# MPC Loading music styles or groups simple.
# Pablo Catalina
#
# use:
# mpc-selector style reggae
# mpc-selector group "Bob Marley"
# files must be order following that tree
# $ROOT_DIR/
# -> $STYLE_DIR
# -> reggae/..
# -> flamenco/..
# -> clasic/..
# -> ...
# -> $GROUP_DIR
# -> Bob Marley/...
# -> Camaron/...
# -> ...
#
# Pablo Catalina
#
#ROOT_DIR with end slash like root/ if there is no root dir leave blank
ROOT_DIR=""
STYLE_DIR="estilos/"
GROUP_DIR="grupos/"
if [ -z "$2" ]
then
echo "Use mpc-selector