Com Puc Connectar MPD al Meu Reproductor DLNA per Gaudir de la Música a Tota la Xarxa?
Descobreix les millors estratègies per enviar l'àudio del teu servidor MPD a qualsevol reproductor DLNA de casa teva.
Enviar l'àudio des del teu servidor de música MPD (Music Player Daemon) a un reproductor DLNA (Digital Living Network Alliance) pot semblar complex, ja que MPD no està dissenyat nadiuament per actuar com un transmissor directe cap a dispositius DLNA. No obstant això, amb les eines i configuracions adequades, és perfectament possible integrar aquests dos mons i gaudir de la teva biblioteca musical gestionada per MPD en els teus reproductors compatibles amb DLNA. Aquesta guia et mostrarà els mètodes més efectius i recomanats.
Punts Clau per Entendre la Connexió MPD-DLNA
- Necessitat d'un Pont: MPD no envia directament àudio a reproductors DLNA. Cal utilitzar programari intermediari ("ponts") que tradueixin la sortida d'àudio de MPD a un format que els reproductors DLNA puguin entendre i rebre per la xarxa.
- `upmpdcli` és la Solució Preferida: Aquesta eina transforma la teva instància MPD en un "renderitzador" UPnP/DLNA, fent-la visible i controlable per aplicacions DLNA estàndard, oferint una integració robusta i funcions avançades com la reproducció sense interrupcions (gapless).
- Alternatives Flexibles: Mètodes com utilitzar PulseAudio amb `pulseaudio-dlna` o la transmissió HTTP directa des de MPD són opcions viables, cadascuna amb els seus propis avantatges i limitacions de compatibilitat.
Per Què MPD Necessita Ajuda per Parlar amb DLNA?
MPD és un potent servidor de música que funciona en segon pla, gestiona biblioteques musicals i reprodueix àudio a través de sortides locals (com targetes de so directament connectades via ALSA) o sistemes de so com PulseAudio. Per altra banda, DLNA/UPnP és un conjunt de protocols dissenyats per facilitar la compartició de contingut multimèdia entre dispositius dins d'una xarxa domèstica. Els rols principals dins de DLNA són:
- Servidor de Mitjans (DMS): Emmagatzema i comparteix contingut (música, vídeos, fotos).
- Reproductor/Renderitzador de Mitjans (DMR): Rep i reprodueix contingut enviat per la xarxa.
- Controlador de Mitjans (DMC): Troba contingut en un DMS i li diu a un DMR que el reprodueixi.
El teu objectiu és que MPD (que actua com a font de so) enviï aquest so a un DMR (el teu reproductor DLNA). Com que MPD no implementa el protocol per "empènyer" activament l'àudio a un DMR, necessitem eines que facin d'intermediari.
Solucions Detallades per Enviar So de MPD a DLNA
Solució 1: `upmpdcli` - Convertint MPD en un Reproductor DLNA Controlable (Recomanat)
upmpdcli és l'eina més recomanada per a aquesta tasca. Actua com una capa addicional sobre MPD, exposant la teva instància MPD a la xarxa com si fos un reproductor (renderitzador) UPnP/DLNA natiu i compatible amb OpenHome. Això permet que aplicacions de control DLNA (com BubbleUPnP, Linn Kazoo, etc.) detectin el teu MPD i li enviïn ordres de reproducció.
Com funciona `upmpdcli`?
Quan utilitzes una app de control DLNA, selecciones el "reproductor" `upmpdcli` (que representa el teu MPD). L'app pot enviar-li música des d'un servidor DLNA a la teva xarxa, o en alguns casos, instruir MPD perquè reprodueixi la seva pròpia cua de reproducció local. `upmpdcli` tradueix aquestes ordres UPnP/DLNA en ordres que MPD entén. L'àudio finalment surt per la sortida configurada a MPD (targeta de so, DAC USB, etc.).
Passos d'Instal·lació i Configuració (Exemple Debian/Ubuntu):
-
Instal·lar MPD i `upmpdcli`:
sudo apt update sudo apt install mpd upmpdcli - Configurar MPD: Assegura't que el teu fitxer `/etc/mpd.conf` està correctament configurat amb la teva biblioteca musical i una sortida d'àudio funcional (per exemple, ALSA o PulseAudio). No cal una configuració especial a `mpd.conf` per a `upmpdcli`, només que MPD funcioni correctament.
- Configurar `upmpdcli`: Edita el fitxer `/etc/upmpdcli.conf`. Normalment, la configuració per defecte funciona si MPD s'executa localment al port estàndard (6600). Pots personalitzar el nom que apareixerà a la xarxa DLNA (`upnpfriendlyname`).
-
Reiniciar els Serveis:
sudo systemctl restart mpd sudo systemctl restart upmpdcli - Ús: Obre la teva aplicació de control DLNA preferida al teu telèfon o ordinador. Hauries de veure un nou reproductor amb el nom que has configurat a `upmpdcli.conf`. Selecciona'l com a reproductor i comença a enviar-li música.
Visualització de l'Arquitectura amb `upmpdcli`
El següent diagrama il·lustra com s'integren els components quan s'utilitza `upmpdcli`:
Nota Important: Amb `upmpdcli`, el so es reprodueix a través de la sortida d'àudio connectada a la màquina on s'executa MPD. `upmpdcli` fa que aquesta màquina sigui controlable via DLNA, no reenvia el so a un *altre* reproductor DLNA remot.
Solució 2: PulseAudio + `pulseaudio-dlna` - Exposant Reproductors DLNA com a Sortides d'Àudio
Aquest mètode és útil si vols que l'àudio generat per MPD (o qualsevol altra aplicació que utilitzi PulseAudio) s'enviï directament a un reproductor DLNA remot a la teva xarxa (com un altaveu intel·ligent, TV o receptor AV).
Com funciona `pulseaudio-dlna`?
`pulseaudio-dlna` s'executa en segon pla, descobreix els reproductors DLNA/UPnP i dispositius compatibles amb Chromecast a la teva xarxa, i els fa aparèixer com a "sinks" (dispositius de sortida) virtuals dins del sistema de so PulseAudio. Llavors, pots configurar MPD perquè utilitzi un d'aquests sinks virtuals com a sortida d'àudio.
Passos d'Instal·lació i Configuració (Exemple Debian/Ubuntu):
-
Instal·lar PulseAudio i `pulseaudio-dlna`:
Pot ser necessari instal·lar dependències addicionals segons la teva distribució.sudo apt update sudo apt install pulseaudio pulseaudio-dlna -
Configurar MPD per utilitzar PulseAudio: Edita `/etc/mpd.conf` i afegeix o modifica la secció `audio_output` per utilitzar PulseAudio:
audio_output { type "pulse" name "PulseAudio Output" # server "127.0.0.1" # Opcional, si PulseAudio s'executa localment # sink "nom_del_sink_dlna" # Pots especificar-ho aquí o canviar-ho dinàmicament } -
Executar `pulseaudio-dlna`: Obre una terminal i executa:
Aquest comandament escanejarà la xarxa i afegirà els dispositius trobats com a sinks a PulseAudio. Pots executar-lo en segon pla o com a servei.pulseaudio-dlna - Seleccionar la Sortida: Un cop `pulseaudio-dlna` hagi detectat els teus reproductors, pots utilitzar eines de gestió de PulseAudio (com `pavucontrol`) per veure els nous sinks disponibles i redirigir la sortida de MPD cap al sink corresponent al teu reproductor DLNA desitjat. També pots reiniciar MPD perquè recarregui les sortides disponibles si has modificat `mpd.conf`.
Aquest mètode és més genèric i permet enviar l'àudio de qualsevol aplicació PulseAudio, no només MPD, als teus reproductors DLNA.
Solució 3: Streaming HTTP de MPD - Simple però Limitat
MPD pot configurar-se per transmetre la seva sortida d'àudio com un flux HTTP. Alguns reproductors DLNA o aplicacions poden ser capaços de reproduir directament aquest flux URL.
Com funciona?
Configures una sortida de tipus `httpd` a MPD. Això crea un servidor web simple que serveix l'àudio que MPD està reproduint en un format específic (com MP3 o FLAC). Després, has d'introduir manualment l'URL d'aquest flux (p. ex., `http://[IP_DE_MPD]:8000`) al teu reproductor DLNA, si aquest té l'opció d'obrir URLs de xarxa.
Configuració a `mpd.conf`:
audio_output {
type "httpd"
name "MPD HTTP Stream"
encoder "mp3" # O "flac", "opus", etc., segons el suport del reproductor
port "8000" # Port d'escolta
bitrate "192" # Per a MP3, qualitat en kbps
format "44100:16:2" # Format d'àudio
always_on "yes" # Manté el flux actiu encara que no hi hagi client
tags "yes" # Intenta enviar metadades (suport limitat)
}
Limitacions: Aquest mètode no ofereix la integració i el control típics de DLNA. No podràs navegar per la biblioteca de MPD des del reproductor DLNA ni utilitzar funcions avançades. A més, no tots els reproductors DLNA poden obrir fluxos HTTP directament.
Comparativa Visual de les Solucions
Per ajudar-te a triar el millor mètode per al teu cas, aquí tens una comparativa visual basada en diversos factors clau. Les puntuacions són subjectives (escala de 1 a 10, on 10 és millor) i pretenen donar una idea general.
Com pots veure, `upmpdcli` destaca en funcions de control DLNA i estabilitat per integrar MPD, mentre que `pulseaudio-dlna` ofereix més flexibilitat per enviar so des de qualsevol aplicació PulseAudio a una àmplia gamma de reproductors. L'streaming HTTP és el més simple però també el més limitat.
Taula Resum de Mètodes i Configuracions
Aquesta taula resumeix els aspectes clau de cada mètode:
| Mètode | Eina Principal | Configuració MPD Clau | Com Funciona | Avantatges Principals | Inconvenients Principals |
|---|---|---|---|---|---|
| upmpdcli | upmpdcli |
Sortida d'àudio estàndard (ALSA, PulseAudio). No cal config. específica per a `upmpdcli`. | Fa que MPD aparegui com un renderer DLNA/UPnP controlable. | Integració robusta amb l'ecosistema DLNA, control fi (gapless), estabilitat. | El so surt per la màquina MPD, no reenvia a altres reproductors. Requereix app de control DLNA. |
| pulseaudio-dlna | pulseaudio-dlna |
audio_output { type "pulse"; ... } |
Exposa reproductors DLNA/Chromecast com a sinks de PulseAudio. MPD envia so a un d'aquests sinks. | Envia so a reproductors DLNA remots. Funciona per a qualsevol app PulseAudio. Alta compatibilitat de reproductors. | Pot ser menys estable o tenir més latència. Depèn de PulseAudio. Configuració pot ser més complexa. |
| Streaming HTTP | MPD (integrat) | audio_output { type "httpd"; ... } |
MPD serveix l'àudio com un flux HTTP a una URL específica. | Simple de configurar a MPD. No requereix programari addicional. | Requereix que el reproductor DLNA pugui obrir URLs HTTP. Sense control DLNA estàndard. Funcions limitades. |
Exemple Pràctic en Acció
Tot i que cada configuració pot variar, el següent vídeo (en anglès) mostra un exemple d'interacció entre sistemes de música en xarxa que involucren conceptes similars a MPD i DLNA en un dispositiu específic (SOtM sMS-200 amb Eunhasu). Pot donar-te una idea visual de com aquests sistemes es connecten i configuren en un entorn real, encara que els passos exactes per a la teva configuració puguin diferir.
Vídeo mostrant la configuració de biblioteca i sortida en un sistema que integra MPD/DLNA (SOtM sMS-200).
Consideracions Addicionals
Qualitat del So i Formats
Assegura't que el mètode escollit i la configuració (especialment l'encoder en el cas de HTTP streaming o la configuració de PulseAudio) siguin compatibles amb els formats d'àudio que vols reproduir i que el teu reproductor DLNA suporta. Per a la màxima qualitat, intenta utilitzar formats sense pèrdues com FLAC si és possible.
Xarxa i Estabilitat
Una xarxa domèstica estable (preferiblement cablejada per als components clau com el servidor MPD i el reproductor DLNA) és crucial per a una experiència d'streaming sense interrupcions, especialment amb àudio d'alta resolució.
Tallafocs
Verifica que cap tallafoc al teu servidor MPD o a la teva xarxa estigui bloquejant els ports necessaris per a MPD (port 6600), `upmpdcli`, `pulseaudio-dlna` (descobriment UPnP/SSDP, normalment port UDP 1900) o el streaming HTTP (port 8000 per defecte).
Exemple d'un reproductor d'àudio en xarxa compatible amb DLNA.
Un altre exemple de reproductor de música en xarxa amb capacitats DLNA.
Preguntes Freqüents (FAQ)
Per què no puc simplement seleccionar el meu reproductor DLNA com a sortida a MPD?
MPD està dissenyat principalment per gestionar música i enviar-la a sortides d'àudio locals o sistemes com PulseAudio. No implementa de forma nativa els protocols complexos de descobriment i transmissió de DLNA/UPnP per actuar com un controlador que "envia" activament so a un reproductor remot (Renderer). Per això es necessiten eines intermediàries com `upmpdcli` o `pulseaudio-dlna`.
Quina és la diferència entre `upmpdcli` i `pulseaudio-dlna`?
upmpdcli fa que la teva instància de MPD sigui vista com un reproductor DLNA a la xarxa, permetent que apps de control DLNA li enviïn música o ordres. El so surt per la sortida física de la màquina MPD.
pulseaudio-dlna fa el contrari: fa que reproductors DLNA remots apareguin com a sortides d'àudio locals (sinks de PulseAudio) a la màquina on s'executa. Llavors, pots dir a MPD (o a qualsevol aplicació PulseAudio) que enviï el seu so a un d'aquests reproductors remots.
Tria `upmpdcli` si vols controlar MPD amb una app DLNA. Tria `pulseaudio-dlna` si vols enviar el so de MPD (o altres apps) a un altaveu/receptor DLNA remot.
Necessito també un servidor DLNA (DMS) a la meva xarxa?
Depèn del mètode i de com vulguis accedir a la música:
- Amb `upmpdcli`: Sovint s'utilitza una app de control DLNA (DMC) per seleccionar música d'un servidor DLNA (DMS) i enviar-la al reproductor `upmpdcli`/MPD (DMR). En aquest cas, sí, necessitaries un DMS (que podria ser un NAS, un altre ordinador amb programari com MiniDLNA, etc.). Tanmateix, algunes configuracions d'`upmpdcli` o apps de control poden permetre reproduir directament la cua de MPD.
- Amb `pulseaudio-dlna`: No necessàriament. MPD accedeix a la seva pròpia biblioteca local (configurada a `mpd.conf`) i envia l'àudio resultant al sink de PulseAudio que representa el teu reproductor DLNA remot. En aquest cas, MPD actua com a font de la música.
- Amb Streaming HTTP: No. MPD reprodueix la seva biblioteca local i la transmet via HTTP.
Puc controlar el volum des de l'app DLNA?
Sí, normalment tant `upmpdcli` com `pulseaudio-dlna` permeten el control de volum remot a través del protocol UPnP AV. L'app de control DLNA hauria de mostrar un control de volum que s'ajustarà al nivell corresponent a MPD (si té control de volum per software habilitat) o al sistema PulseAudio.
Referències
- upmpdcli: An UPnP Audio Media Renderer based on MPD - Les bons comptes
- mpd to remote dlna - Unix & Linux Stack Exchange
- pulseaudio-dlna GitHub Repository
-
MPD User's Manual - Music Player Daemon
- Sonicorbiter - DLNA/MPD Output Mode - Audiophile Style Forums
- MPD as client to an UPnP/DLNA Media Server - Les bons comptes
Consultes Recomanades
Last updated April 18, 2025