Librería de música

Introducción

Antes usabamos cintas, discos y normalmente estamos acostumbrados a los discos. Los tiempos cambian. Aquí voy a presentar qué es lo que quiero, plantear diferentes alternativas y elegir la solución.

El objetivo es escuchar música de forma sencilla.

Requerimientos

1. Las canciones deberán reproducirse sin fallos.
2. Las canciones deberán ser fácilmente accesibles.
3. El sistema deberá ser silencioso.
4. El sistema debería ser eficiente energéticamente.
5. Las canciones deberían ser fácilmente accesibles desde cualquier lugar.
6. El sistema deberá tendrá una fiabilidad alta.

Alternativas.

Cumplir "1".

Para tener una reproducción sin fallos, parece fundamental tener la música digitalizada. Ello implica digitalizar la música desde CD, cinta o toca discos (el procedimiento para hacer esto de forma adecuada se tratará en otros artículos -se referenciarán posteriormente-).

La música digitalizada se puede almacenar en diferentes soportes: cd, hd, ssd, sd, online, … A tener en cuenta: fiabilidad, el número de lecturas, rendimiento requerido, …

Descataría el CD por su sensibilidad al estado de la superficie de los CDs.
http://www.simmtester.com/page/news/showpubnews.asp?title=Determine+Endurance+on+a+NAND+Flash+Chip&num=175
http://www.ustream.tv/channel/flash-destroyer

Cumplir "2"

Esto implica algún sistema de indexación de canciones. Hay aplicaciones como: itunes, amarok, … Otra alternativa sería mediante algún tipo de aplicación online a la que se acceda mediente un servicio web.

Cumplir "3"

La mayoría de los sistemas son bastantes silenciosos dados los niveles de escucha habituales. SSD y sd garantizan niveles de ruido nulos.

Cumplir "4"

Interesa tener pocas componentes. En ese sentido, la solución ideal sería un sistema totalmente integrado (el típico reproductor multimedia).

Cumplir "5"

Esto implica por ejemplo un servicio que proporcione streaming o un servidor de ficheros (NAS) que se pueda acceder desde internet.

Cumplir "6"

La fiabilidad puede ser intrínsica: RAID 1 o debida a procedimientos (backup) o por la propia fiabilidad del dispositivo.

Soluciones

Online

Una alternativa sería usar algún servicio online que permita almacenar la música. Tiene la ventaja de que asuntos como las copias de seguridad, servicio 24h 7 días a la semana en casi cualquier lugar. Poder hacer uso de la información por varios miembros de la familia.
Algunos ejemplos pueden ser:

Ventajas:

  • Facilidad del servicio
  • Son relativamente económicos y potencialmente el precio irá bajando con el tiempo.
  • No límite de espacio
  • Disponibilidad de los datos en cualquier sitio.
  • Algunos servicios no tienen límite de espacio. Podemos almacenar FLAC, MP3 según dónde vayamos a reproducir.
  • Interfaz web hace que sea un sistema multiplataforma.

Desventajas:

  • Dependencia de una conexión a internet.
  • El no tener nosotros la información… incomoda, aunque poco a poco estamos más acostumbrados a ello (servicios de correo online).
  • Otra cuota mensual.
  • Subir toda la información puede consumir MUCHO tiempo.
  • Muchos de estos sistemas están pensados para almacenar información en lugar de para streaming.

Offline

Disco duro

Con la tecnología actual, lo razonable parece almacenar los ficheros de audio en formato FLAC ó MP3/OGG. El almacenamiento se puede realizar en:

  • Disco duro tradicional (HD)
  • Disco duro de estado sólido (SSD): 256Gbytes approx 400€
  • En tarjetas de memoria (SDHC)

En términos de fiabilidad ninguno de los sistemas suponen un problema. En principio SSD/SDHC tienen más ventajas: admiten un cierto número de grabaciones (millones hoy en día), y dado que la música normalmente se escribe una vez y no se borra nunca, parecen la solución idónea desde ese punto de vista. El no tener partes móviles los hacen más robustos a golpes mientras funcionan. Consumen menos además.

El HD es ventajoso en cuanto a precio por mega. Me sentiría cómodo con un dísco duro de 2.5 pulgadas y 500Gbytes. Tanto en términos de ruido como de fiabilidad.

El sistema de ficheros es importante: FAT ahorra muchos dolores de cabeza pues es soportado por todos, pero en linux BTRFS es impresionante eliminando la necesidad de RAID por hardware o software o el uso de volúmenes de linux (lvm). Además permite crear backups de forma sencilla (snapshots). Esto significa que si nos quedamos cortos de espacio podemos añadir otro disco duro y se seguirá viendo como sólo uno. Obviamente, no será accesible desde windows. Por ejemplo, parece factible

El acceso a la información es también importante. Lo ideal sería el uso de un dispositivo que admita la conexión USB. Son baratos y consumen poco. Sin embargo, no he visto ninguna solución "ideal". La opción que siempre está ahí es el uso del ordenador: el problema siempre es que al ser la solución más flexible, también es la más compleja.

SDHC: dado el alto coste de los discos SSD, una alternativa barata temporal es el uso de memorias SDHC (buscar photofast CR-9000 o CR-9200) o el uso de pendrives junto a un hub usb. Un hub usb de 7 puertos cuesta unos 6 euros. Pendrives de 16Gb cuestan unos 20 euros. Eso significa que te puedes hacer un disco duro basado en 7 pendrives por unos: 150€ con unos 112Gbytes. Se necesitaría usar BTRFS ó LVM y un ordenador con LINUX para que todos se viesen como una única unidad.

SOLUCIÓN: Yo iría a por un par de disco duros de 500Gbytes usb de 2.5in. Alternativa barata. Uno lo sincronizaría con el otro cada cierto tiempo y los tendría en lugares diferentes de la casa. Uno siempre apagado excepto durante la sincronización.

Acceso a los ficheros

Hay dos posibilidades para acceder a los ficheros:

  • Directamente mediante un dispositivo que acepte USB
    • Un ordenador
    • Un reproductor multimedia
  • Mediante un esquema cliente/servidor:
    • Servidor: típicamente un servidor NAS. Quizá algún sistema preparado para hacer streaming. Puede tener sentido si somos varios en casa escuchando música a la vez en distintas habitaciones, o tenemos ya un NAS con otros propósitos.
    • Cliente: un ordenador ligero o un reproductor multimedia con acceso a red (wifi o ethernet).

Reproductor

Quizá aquí esté la clave. Las opciones se reducen prácticamente a dos:

  • Ordenador
  • Reproductor multimedia

Ordenador

Ventajas

  • Es más versátil: podemos hacer más cosas. Filtrados digitales, más variedad de programas que controlan la reproducción, elimina las limitaciones en cuanto a formatos de música, formatos de sistemas de archivos, … Puede conectarse a internet para obtener información adicional (letras de canciones) ….
  • Podemos instalar distintas tarjetas de sonido (mayor control sobre la calidad deseada).

Desventajas

  • Es más caro.
  • Consume más.
  • Potencialmente puede producir ruido.
  • El tiempo de arranque puede ser lento.
  • El equipo es más voluminoso y requiere un monitor.

Ejemplos

Reproductor multimedia

Ventajas

  • Normalmente fácil de usar/instalar
  • La calidad de sonido es la que es. Riesgo de comprar y que la calidad sea decepcionante.
  • Normalmente más pequeño.

Desventajas

  • Menor versatilidad
  • Podemos chocarnos con el formato de la información en el disco duro.
  • Si queremos nueva funcionalidad, aunque el software sea actualizable, terminaremos comprando un nuevo aparato.
  • Los actuales suelen ir pensados para música/fotos/video, por lo que suelen requerir una pantalla.
  • El criterio de diseño suele ser ser barato (que suele ir contra la buena calidad). DESCONFIANZA.

Ejemplos

Los hay muy pequeños y baratos:

Software

Si la solución es el uso de un ordenador, es interesante tener en cuenta las distintas posibilidades:

  • Windows
    • Windows Media Center
    • Foobar tiene la posibilidad de usar filtros digitales para distintos canales
    • Las tarjetas de sonido están mejor soportadas.
  • Linux
    • Muchos softwares con la posibilidad de ser usados
      • MythTV
      • Amarok
      • Rhythmbox
    • Filtrado digital
      • BruteFIR
    • Distintas servidores de sonido
      • Jack
      • Pulseaudio
    • Soporte para múltiples formatos

HMI (Human Machine Interface)

En la elección será clave el HMI. Se puede usar un monitor y un ratón/teclado inalámbricos. También se podría usar una pantalla táctil (desconozco qué aplicaciones están preparadas para soportar esto).

Un camino que me parece tentador es el uso de dispositivos móviles (e.g. iphone). Los nuevos smartphones tienen una interfaz limpia y depurada. Evita el tener que levantarnos del sofá. En ese sentido, sería deseable poder acceder a una lista de canciones remotamente.

Un esquema podría ser:

Básico

1. iphone (o equivalente como control remoto para reproducir música y para controlar el volumen)
2. Software de reproducción que tiene una interfaz con el iphone.
3. El software reproduce la canción que va directamente a la tarjeta de sonido.
4. De la tarjeta de sonido al ampli y a los altavoces.

Avanzado

1. iphone <-> wifi <-> ordenador
2. Software muestra la música almacenada en el disco duro.
3. jack/brutefir -> tarjeta de sonido multicanal
4. Varios amplificadores
5. Altavoces multivía

Solución

En una máquina linux se ejecuta MPD (Music Player Daemon). En el iphone se instala MPoD.

(Esto es aplicable también a video con MythTV/Remote Remote GH/MyMote/MythTV for iPhone ó también: XBMC/XBMC remote).

Prueba de concepto: Reproducir música contenida en el ordenador por medio del iphone.

Links

MPD

http://www.xitijpatel.com/2008/12/15/howto-install-mpd-ncmpc-and-scrobby-on-gentoo/

Instalación en Gentoo

# USE="aac flac jack lame libsamplerate vorbis ogg pulseaudio" emerge media-sound/mpd

 * If you will be starting mpd via /etc/init.d/mpd, please make
 * sure that MPD's pid_file is set to /var/run/mpd/mpd.pid.

Configuración

/etc/mpd.conf

Seleccionar el directorio de trabajo (por defecto: /var/lib/mpd/music)

  • Para evitar que sólo escuche llamadas locales:
#bind_to_address     "localhost"
  • Para evitar que cree un socket en lugar de conectarse usando network:
#bind_to_address     "/var/lib/mpd/socket"

Arrancar el servicio

Crear base de datos

cd /var/lib/mpd
/usr/bin/mpd --create-db

Comprobamos que funciona:

/etc/init.d/mpd start

[[/code]]
rc-update /etc/init.d/mpd default

Autotagging

emerge picard

Salvo que se diga otra cosa, el contenido de esta obra está bajo la licencia: Creative Commons Reconocimiento NoComercial CompartirIgual 2.5 España.