Streaming de Música
Cómo montar una solución completa de Streaming de Música con GNU/Linux
Si te gusta escuchar música y usas aplicaciones como Spotify, Tidal, Apple Music, Amazon Music, Qobuz, Deezer o incluso Youtube y no quieres arruinarte con estas soluciones, que sepas que dispones de otras opciones de Streaming que te puedes montar tu mismo para escuchar tu música desde cualquier sitio.
Te propongo una solución auto-alojada, una serie de aplicaciones y herramientas para realizarlo de una forma fácil.
Componentes para montar nuestro servidor de Streaming
- PC o equipo que realice las funciones de servidor (con conexión a Internet)
- Tener instalado Docker (puedes leer el artículo sobre cómo instalar docker)
- Aplicación Navidrome que instalaremos como imagen Docker
Navidrome
Navidrome es un aplicación web Open Source, con la que puedes compartir tu colección de música mediante streaming, en un formato estandar.
Puedes conectar multiples usuarios y dispositivos a Navidrome para escuchar la música tanto en directo, como off-line para los momentos en los que no dispongas de conexion.
Además cada usuario de Navidrome puede crear sus propias playlist para organizar sus sesiones de música a su gusto.
Instalación de Navidrome
La forma más sencilla de probar e instalar Navidrome es mediante el uso de contenedores Docker.
Tienes que tener dos carpetas:
- Una donde se almacenarán los ficheros que va a usar navidrome para almacenar los usuarios y su claves, las playlist que se van generando, etc.
- La carpeta en donde tienes toda tu música. La aplicación no realiza cambios sobre la música.
Navidrome con docker directamente desde linea de comando:
docker run -d \
--name navidrome \
--restart=unless-stopped \
--user $(id -u):$(id -g) \
-v /ruta/carpeta/musica:/music:ro \
-v /ruta/carpeta/navidrome/datos:/data \
-p 4533:4533 \
-e ND_LOGLEVEL=info deluan/navidrome:latest
Navidrome con docker compose
Crea un fichero con nombre docker-compose.yml e incluye las siguiente lineas:
version: "3"
services:
navidrome:
image: deluan/navidrome:latest
user: 1000:1000 # Pon el ID y GID del propietario de las carpetas
ports:
- "4533:4533"
restart: unless-stopped
environment:
# Opcional: Pon tus opciones personales de configuracion aqui
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: ""
volumes:
- "/ruta/carpeta/navidrome/datos:/data"
- "/ruta/carpeta/musica:/music:ro"
Una vez creado, desde la misma ruta del fichero puedes iniciarlo con el comando:
docker compose up -d
Una vez iniciado, ya sea mediante docker ó docker compose, accede mediante tu navegador a tu PC o a tu servidor al puerto 4533.
NOTA: Navidrome es un servidor de streaming, no es un gestor de música.
Si quieres instalarlo en un servidor de forma tradicional, sin usar docker, puedes leer el documento sobre Instalar Navidrome en Linux (Ubuntu/Debian)
Gestionar la música para Streaming
Como te he comentado antes, Navidrome es únicamente un servidor de streaming, no es un gestor de música
Para publicar música, álbumes o grupos de canciones simplemente tienes que dejar esa música en la carpeta de música a la que tiene acceso Navidrome.
Navidrome muestra de forma automática la música organizada mediante los metadatos que extrae de la música que has dejado en la carpeta de música
Para mi, la mejor manera de dejar la música en organizarla por carpetas, antes de subir la música a la ruta de Navidrome, reviso los 'tags' o metadatos ID3 de los ficheros de música que voy a poner en streaming.
Dos de las aplicaciones más sencillas para editar metadatos de música son: EasyTag y MusicBrainz Picard.
MusicBrainz Picard
MusicBrainz Picard
Gestor de etiquetas de musica ID3 (metadatos)
Para mi la aplicación más sencilla de usar es picard, ya que me permite incluir de forma muy sencilla nuevas etiquetas/tags en bloque a un grupo de ficheros o incluso de asignar una nueva carátula a un album de una forma muy rápida.
Puedes instalar la aplicación MusicBrainz Picard simplemente escribe:
apt-get -y install picard
Usar el streaming desde el teléfono movil
Una de las ventajas de Navidrome es que usa una API estandar compatible con Subsonic.
Una aplicación totalmente gratuita y sin publicidad para conectar con tu servidor de streaming es Substreamer. Dispone de versión para IOS y Android.
Pueden leer la lista completa de clientes compatibles con Navidrome.
Substreamer
Substreamer
App movil para conectar a tu servidor de streaming
Es una aplicación muy sencilla para conectar a tu servidor de streaming, te permite incluso llevarte música en modo off-line para no usar datos si no tienes conectividad, crear tus propias playlist independientes de los otros usuarios a los que hayas dado acceso a tu servidor de streaming, o incluso compartir playlist con otras personas.