Difference between revisions of "Music Player Daemon (Italiano)"

From ArchWiki
Jump to: navigation, search
(Controllare MPD in rete: http://www.archlinux.org/news/dropping-tcp_wrappers-support/)
(synchronized interlanguage links with the other wikis)
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{i18n|Music Player Daemon}}
+
[[Category:Player (Italiano)]]
 +
[[de:Music Player Daemon]]
 +
[[en:Music Player Daemon]]
 +
[[es:Music Player Daemon]]
 +
[[fr:MPD]]
 +
[[ja:Music Player Daemon]]
 +
[[nl:Music Player Daemon]]
 
[[pl:Music Player Daemon]]
 
[[pl:Music Player Daemon]]
 
+
[[ru:Music Player Daemon]]
 +
[[sr:Music Player Daemon]]
 +
[[tr:Music_Player_Daemon]]
 +
[[zh-CN:Music Player Daemon]]
 
'''MPD''' (music player daemon) è un player audio con struttura client-server. MPD lavora in background come demone, gestisce le playlist e il database della musica e utilizza pochissime risorse. Per interfacciarsi con il demone è necessario un client. Maggiori informazioni possono essere reperite [http://www.musicpd.org/ sul sito di MPD].
 
'''MPD''' (music player daemon) è un player audio con struttura client-server. MPD lavora in background come demone, gestisce le playlist e il database della musica e utilizza pochissime risorse. Per interfacciarsi con il demone è necessario un client. Maggiori informazioni possono essere reperite [http://www.musicpd.org/ sul sito di MPD].
  
Line 14: Line 23:
  
 
===Comportamento di MPD in una configurazione tipica===
 
===Comportamento di MPD in una configurazione tipica===
# MPD viene avviato al boot da {{Filename|/etc/rc.conf}}, includendolo nell'array {{Codeline|DAEMONS}}. (In alternativa può essere avviato manualmente lanciando  {{Codeline|/etc/rc.d/mpd start}} con privilegi di root).
+
# MPD viene avviato al boot da {{ic|/etc/rc.conf}}, includendolo nell'array {{ic|DAEMONS}}. (In alternativa può essere avviato manualmente lanciando  {{ic|/etc/rc.d/mpd start}} con privilegi di root).
# Essendo stato lanciato come root, MPD per prima cosa legge il file {{Filename|/etc/mpd.conf}}.
+
# Essendo stato lanciato come root, MPD per prima cosa legge il file {{ic|/etc/mpd.conf}}.
# MPD individua l'utente di esecuzione dal file {{Filename|/etc/mpd.conf}}, e cambia la proprietà del processo da root a questo utente.
+
# MPD individua l'utente di esecuzione dal file {{ic|/etc/mpd.conf}}, e cambia la proprietà del processo da root a questo utente.
# Una volta cambiata la proprietà, MPD analizza i contenuti di {{Filename|/etc/mpd.conf}} si configura di conseguenza.
+
# Una volta cambiata la proprietà, MPD analizza i contenuti di {{ic|/etc/mpd.conf}} si configura di conseguenza.
  
Si noti che MPD cambia l'utente attivo da root a quello menzionato in {{Filename|/etc/mpd.conf}}. In questo modo, l'uso di {{Codeline|~}} nel file di configurazione punta correttamente alla directory home dell'utente, e non a quella di root. Potrebbe valer la pena di sostituire tutte le occorrenze di {{Codeline|~}} con {{Codeline|/home/username}} per evitare ogni confusione con questo particolare comportamento di MPD.
+
Si noti che MPD cambia l'utente attivo da root a quello menzionato in {{ic|/etc/mpd.conf}}. In questo modo, l'uso di {{ic|~}} nel file di configurazione punta correttamente alla directory home dell'utente, e non a quella di root. Potrebbe valer la pena di sostituire tutte le occorrenze di {{ic|~}} con {{ic|/home/username}} per evitare ogni confusione con questo particolare comportamento di MPD.
  
 
===File di configurazione minimo===
 
===File di configurazione minimo===
* Come root, verificare se il file {{Filename|/etc/mpd.conf}} esiste e, nel caso, eliminarlo. Questo è sicuro e consigliato.
+
* Come root, verificare se il file {{ic|/etc/mpd.conf}} esiste e, nel caso, eliminarlo. Questo è sicuro e consigliato.
  
MPD crea un file di configurazione di esempio, situato in {{Filename|/usr/share/doc/mpd/mpd.conf.example}}. Questo file contiene moltissime informazioni sulla configurazione di MPD, oltre ad alcuni valori del mixer di default che possono semplicemente essere commentati.
+
MPD crea un file di configurazione di esempio, situato in {{ic|/usr/share/doc/mpd/mpd.conf.example}}. Questo file contiene moltissime informazioni sulla configurazione di MPD, oltre ad alcuni valori del mixer di default che possono semplicemente essere commentati.
  
* Come root, copiare questo file di esempio in {{Filename|/etc/mpd.conf}}.
+
* Come root, copiare questo file di esempio in {{ic|/etc/mpd.conf}}.
 
  # cp /usr/share/mpd/mpd.conf.example /etc/mpd.conf
 
  # cp /usr/share/mpd/mpd.conf.example /etc/mpd.conf
({{Filename|/usr/share/doc/mpd/mpd.conf.example}} è un ottimo punto di partenza per una orientata al singolo utente)
+
({{ic|/usr/share/doc/mpd/mpd.conf.example}} è un ottimo punto di partenza per una orientata al singolo utente)
  
Mai mettere questo file nella home dell'utente come suggerito in altri tutorial. Questo complicherrebe le cose e molte volte è anche inutile (notare come si stia leggendo una guida per l'installazione veloce). Se è stato precedentemente creato un file {{Filename|.mpdconf}} nella propria home, cancellarlo adesso. Questo è importante per evitare conflitti di configurazione. Copiandolo in {{Filename|/etc}}, come fatto in questa guida, MPD sarà in grado di operare come demone all'avvio. Altrimenti sarebbe necessario uno script per lanciare MPD ''dopo'' il login dell'utente (ad esempio in kdm o {{Filename|~/.fluxbox/startup}}) oppure un avviamento manuale. Per una singola collezione musicale, il metodo qui descritto è semplicemente migliore, anche se la collezione è condivisa con più utenti. Inoltre, non bisogna preoccuparsi dei privilegi di root: anche quando MPD opera come demone, non opererà mai completamente come root in quanto automaticamente scarica i suoi privilegi di root dopo l'esecuzione.
+
Mai mettere questo file nella home dell'utente come suggerito in altri tutorial. Questo complicherrebe le cose e molte volte è anche inutile (notare come si stia leggendo una guida per l'installazione veloce). Se è stato precedentemente creato un file {{ic|.mpdconf}} nella propria home, cancellarlo adesso. Questo è importante per evitare conflitti di configurazione. Copiandolo in {{ic|/etc}}, come fatto in questa guida, MPD sarà in grado di operare come demone all'avvio. Altrimenti sarebbe necessario uno script per lanciare MPD ''dopo'' il login dell'utente (ad esempio in kdm o {{ic|~/.fluxbox/startup}}) oppure un avviamento manuale. Per una singola collezione musicale, il metodo qui descritto è semplicemente migliore, anche se la collezione è condivisa con più utenti. Inoltre, non bisogna preoccuparsi dei privilegi di root: anche quando MPD opera come demone, non opererà mai completamente come root in quanto automaticamente scarica i suoi privilegi di root dopo l'esecuzione.
  
 
===Configurare correttamente il suono===
 
===Configurare correttamente il suono===
Per far funzionare l'audio assicurarsi di aver correttamente configurato la scheda audio e il mixer. Visitare [[ALSA_(Italiano)]]. Non dimenticarsi di rimuovere il muto dai canali necessari in alsamixer, alzare il volume e salvare i cambiamenti con alsactl store. Visitare {{Filename|~/.mpd/error}} se ancora l'audio non funziona.
+
Per far funzionare l'audio assicurarsi di aver correttamente configurato la scheda audio e il mixer. Visitare [[ALSA_(Italiano)]]. Non dimenticarsi di rimuovere il muto dai canali necessari in alsamixer, alzare il volume e salvare i cambiamenti con alsactl store. Visitare {{ic|~/.mpd/error}} se ancora l'audio non funziona.
  
 
Assicurarsi che la propria scheda audio possa effettuare il mixing hardware (molte di esse possono, incluse quelle integrate). In caso contrario questo potrebbe causare problemi con le riproduzioni multiple. Per esempio, impedirebbe ad Mplayer di riprodurre il suono mentre il demone MPD è attivo, restituendo un messaggio di errore audio comunicante che il dispositivo è occupato.
 
Assicurarsi che la propria scheda audio possa effettuare il mixing hardware (molte di esse possono, incluse quelle integrate). In caso contrario questo potrebbe causare problemi con le riproduzioni multiple. Per esempio, impedirebbe ad Mplayer di riprodurre il suono mentre il demone MPD è attivo, restituendo un messaggio di errore audio comunicante che il dispositivo è occupato.
Line 40: Line 49:
 
Per cambiare il volume dell'audio di MPD indipendentemente da altri programmi, decommentare o aggiungere in mpd.conf:
 
Per cambiare il volume dell'audio di MPD indipendentemente da altri programmi, decommentare o aggiungere in mpd.conf:
  
{{File|name=/etc/mpd.conf|content=
+
{{hc|/etc/mpd.conf|
 
mixer_type "software"
 
mixer_type "software"
 
}}
 
}}
  
===Modifica di {{Filename|mpd.conf}}===
+
===Modifica di {{ic|mpd.conf}}===
  
 
'''Si mantiene la configurazione in /var e si utilizza "mpd" come utente predefinito invece di ingombrare ~/. Il pacchetto Arch è configurato in questo modo.'''
 
'''Si mantiene la configurazione in /var e si utilizza "mpd" come utente predefinito invece di ingombrare ~/. Il pacchetto Arch è configurato in questo modo.'''
  
Modificare {{Filename|/etc/mpd.conf}} nel seguente modo.
+
Modificare {{ic|/etc/mpd.conf}} nel seguente modo.
  
{{File|name=/etc/mpd.conf|content=
+
{{hc|/etc/mpd.conf|
 
music_directory      "/home/user/music"        # La directory della collezione musicale.
 
music_directory      "/home/user/music"        # La directory della collezione musicale.
 
playlist_directory    "/var/lib/mpd/playlists"
 
playlist_directory    "/var/lib/mpd/playlists"
Line 66: Line 75:
 
Leggere i passaggi seguenti con attenzione, i permessi devono essere impostati correttamente.
 
Leggere i passaggi seguenti con attenzione, i permessi devono essere impostati correttamente.
  
* Come utente creare i file specificati in {{Filename|/etc/mpd.conf}}, se le directory non esistono, crearle. Ciò non è richiesto se si usa la configurazione predefinita del pacchetto Arch.
+
* Come utente creare i file specificati in {{ic|/etc/mpd.conf}}, se le directory non esistono, crearle. Ciò non è richiesto se si usa la configurazione predefinita del pacchetto Arch.
* Se la collezione musicale è contenuta in diverse directory, è possibile creare dei link simbolici in {{Filename|/var/lib/mpd}} e impostare 'music_dir' in {{Filename|mpd.conf}} alla directory contenente i link. Ricordare di impostare i permessi in accordo sulle directory linkate.
+
* Se la collezione musicale è contenuta in diverse directory, è possibile creare dei link simbolici in {{ic|/var/lib/mpd}} e impostare 'music_dir' in {{ic|mpd.conf}} alla directory contenente i link. Ricordare di impostare i permessi in accordo sulle directory linkate.
 
* La creazione del database musicale si ottiene con la funzione "update" del client, ad esempio se si utilizza ncmpcpp è sufficiente premere 'u'.
 
* La creazione del database musicale si ottiene con la funzione "update" del client, ad esempio se si utilizza ncmpcpp è sufficiente premere 'u'.
 
** La funzione di creazione del database MPD da root (# mpd --create-db), è deprecata.
 
** La funzione di creazione del database MPD da root (# mpd --create-db), è deprecata.
  
 
==Configurazione alternativa==
 
==Configurazione alternativa==
MPD non ha bisogno di avviarsi con i permessi di root. L'unica ragione per cui MPD ha bisogno di essere avviato da root (venendo chiamato da {{Filename|/etc/rc.conf}}) è perché i file e le cartelle contenute nella configurazione di default puntano a directory di proprietà dell'utente root (la directory {{Filename|/var}}).Un approccio meno comune, ma forse più raffinato, è far lavorare MPD con file e directory di proprietà dell'utente normale. Avviare MPD come utente normale ha diversi vantaggi:
+
MPD non ha bisogno di avviarsi con i permessi di root. L'unica ragione per cui MPD ha bisogno di essere avviato da root (venendo chiamato da {{ic|/etc/rc.conf}}) è perché i file e le cartelle contenute nella configurazione di default puntano a directory di proprietà dell'utente root (la directory {{ic|/var}}).Un approccio meno comune, ma forse più raffinato, è far lavorare MPD con file e directory di proprietà dell'utente normale. Avviare MPD come utente normale ha diversi vantaggi:
# Si può facilmente avere una singola directory {{Filename|~/.mpd}} (o una qualsiasi altra directory sotto {{Filename|/home/username}}) per tutti i file di configurazione di MPD
+
# Si può facilmente avere una singola directory {{ic|~/.mpd}} (o una qualsiasi altra directory sotto {{ic|/home/username}}) per tutti i file di configurazione di MPD
 
# Nessun errore causato da permessi di lettura/scrittura
 
# Nessun errore causato da permessi di lettura/scrittura
# Chiamate ad MPD più flessibili usando {{Filename|~/.xinitrc}} invece di includere 'mpd' nell'array DAEMONS di {{Filename|/etc/rc.conf}}.
+
# Chiamate ad MPD più flessibili usando {{ic|~/.xinitrc}} invece di includere 'mpd' nell'array DAEMONS di {{ic|/etc/rc.conf}}.
  
 
I seguenti passaggi illustrano come avviare MPD come utente normale. '''Attenzione''': questo metodo non funzionerà se si desidera che più utenti possano accedere ad MPD.
 
I seguenti passaggi illustrano come avviare MPD come utente normale. '''Attenzione''': questo metodo non funzionerà se si desidera che più utenti possano accedere ad MPD.
  
* Copiare i contenuti della configurazione di default di MPD da {{Filename|/etc/mpd.conf.example}} alla propria home. Una buona posizione potrebbe essere {{Filename|"/home/user/.mpd/mpd.conf"}}.
+
* Copiare i contenuti della configurazione di default di MPD da {{ic|/etc/mpd.conf.example}} alla propria home. Una buona posizione potrebbe essere {{ic|"/home/user/.mpd/mpd.conf"}}.
* Seguire le istruzioni di configurazione più sopra, ignorando la prima parte riguardante la copia della configurazione in {{Filename|/etc/mpd.conf}}.  
+
* Seguire le istruzioni di configurazione più sopra, ignorando la prima parte riguardante la copia della configurazione in {{ic|/etc/mpd.conf}}.  
* Creare tutti i file necessari in {{filename|"/home/user/.mpd/"}}:
+
* Creare tutti i file necessari in {{ic|"/home/user/.mpd/"}}:
 
  "~/.mpd/playlists"
 
  "~/.mpd/playlists"
 
  "~/.mpd/db"
 
  "~/.mpd/db"
Line 88: Line 97:
 
  "~/.mpd/mpd.pid"
 
  "~/.mpd/mpd.pid"
 
  "~/.mpd/mpdstate"
 
  "~/.mpd/mpdstate"
* Avviare MPD al boot chiamandolo dal proprio {{Filename|~/.xinitrc}} come segue:
+
* Avviare MPD al boot chiamandolo dal proprio {{ic|~/.xinitrc}} come segue:
 
  # questo avvia MPD come utente normale
 
  # questo avvia MPD come utente normale
 
  mpd /home/username/.mpd/mpd.conf
 
  mpd /home/username/.mpd/mpd.conf
 
{{Nota| non c'è la necessita di inserire un "&" alla fine della riga precedente, in quanto MPD automaticamente si avvia come demone.}}
 
{{Nota| non c'è la necessita di inserire un "&" alla fine della riga precedente, in quanto MPD automaticamente si avvia come demone.}}
  
Infine, cancellare la voce 'mpd' dall'array DAEMONS in {{Filename|/etc/rc.conf}}, visto che non viene più avviato come root.
+
Infine, cancellare la voce 'mpd' dall'array DAEMONS in {{ic|/etc/rc.conf}}, visto che non viene più avviato come root.
  
 
===Configurazione veloce===
 
===Configurazione veloce===
Line 101: Line 110:
 
  $ mkdir -p ~/.mpd/playlists && touch ~/.mpd/database && cp /usr/share/doc/mpd/mpdconf.example ~/.mpd/mpd.conf
 
  $ mkdir -p ~/.mpd/playlists && touch ~/.mpd/database && cp /usr/share/doc/mpd/mpdconf.example ~/.mpd/mpd.conf
  
E successivamente modificare {{Filename|mpd.conf}} con i propri collegamenti. Attenzione che è necessario decommentare la voce db_file se è stato modificato {{Filename|mpd.conf}}.
+
E successivamente modificare {{ic|mpd.conf}} con i propri collegamenti. Attenzione che è necessario decommentare la voce db_file se è stato modificato {{ic|mpd.conf}}.
  
 
Infine, avviare MPD:
 
Infine, avviare MPD:
Line 109: Line 118:
 
===Configurazione multi-demone===
 
===Configurazione multi-demone===
 
'''Utile se si desidera avviare, ad esempio, un server icecast.'''
 
'''Utile se si desidera avviare, ad esempio, un server icecast.'''
Se si vuole un secondo demone MPD (ad esempio, con un output icecast per condividere la musica nella rete) che utilizzi la stessa musica e la stessa playlist di quello configurato come sopra, semplicemente copiare il file di configurazione qui sopra creato in un nuovo file (ad esempio, {{Filename|/home/username/.mpd/config-icecast}}), e modificare solo le voci log_file, error_file, pid_file, e state_file (ad esempio, {{Filename|mpd-icecast.log}}, {{Filename|mpd-icecast.error}}, e via di seguito); usare le stesse directory per la musica e le playlist assicura che questo secondo demone MPD utilizzerà la stessa collezione musicale del primo demone (quindi, creare e modificare una playlist dal primo demone influenzerà anche il secondo demone, così non sarà necessario creare la stessa playlist anche per il secondo demone). A questo punto, chiamare il secondo demone allo stesso modo del primo dal proprio {{Filename|~/.xinitrc}}. (Solo assicurarsi di utilizzare una porta differente, in modo da non causare conflitti con il primo demone).
+
Se si vuole un secondo demone MPD (ad esempio, con un output icecast per condividere la musica nella rete) che utilizzi la stessa musica e la stessa playlist di quello configurato come sopra, semplicemente copiare il file di configurazione qui sopra creato in un nuovo file (ad esempio, {{ic|/home/username/.mpd/config-icecast}}), e modificare solo le voci log_file, error_file, pid_file, e state_file (ad esempio, {{ic|mpd-icecast.log}}, {{ic|mpd-icecast.error}}, e via di seguito); usare le stesse directory per la musica e le playlist assicura che questo secondo demone MPD utilizzerà la stessa collezione musicale del primo demone (quindi, creare e modificare una playlist dal primo demone influenzerà anche il secondo demone, così non sarà necessario creare la stessa playlist anche per il secondo demone). A questo punto, chiamare il secondo demone allo stesso modo del primo dal proprio {{ic|~/.xinitrc}}. (Solo assicurarsi di utilizzare una porta differente, in modo da non causare conflitti con il primo demone).
  
 
==Installazione del client==
 
==Installazione del client==
Line 120: Line 129:
 
* '''ncmpcpp''' – Clone di ncmpc con funzioni aggiuntive scritto in C++ [http://unkart.ovh.org/ncmpcpp/ Sito ufficiale di ncmpcpp]
 
* '''ncmpcpp''' – Clone di ncmpc con funzioni aggiuntive scritto in C++ [http://unkart.ovh.org/ncmpcpp/ Sito ufficiale di ncmpcpp]
 
  # pacman -S ncmpcpp
 
  # pacman -S ncmpcpp
* '''dmpc''' – Client MPC basato su DMenu con gestore di playlist e memorizzazione dello stato al cambio della playlist [http://aur.archlinux.org/packages.php?ID=33380 Pacchetto AUR di dmpc]
+
* '''dmpc''' – Client MPC basato su DMenu con gestore di playlist e memorizzazione dello stato al cambio della playlist [https://aur.archlinux.org/packages.php?ID=33380 Pacchetto AUR di dmpc]
  Installare [http://aur.archlinux.org/packages.php?ID=33380 dmpc] da [[AUR_(Italiano)|AUR]].
+
  Installare {{AUR|dmpc}} da [[AUR_(Italiano)|AUR]].
 
* '''pms''' – Client NCurses altamente configurabile e di facile utilizzo [http://pms.sourceforge.net/ Sito ufficiale di pms]
 
* '''pms''' – Client NCurses altamente configurabile e di facile utilizzo [http://pms.sourceforge.net/ Sito ufficiale di pms]
  Installare [http://aur.archlinux.org/packages.php?ID=24378 pmus] da [[AUR_(Italiano)|AUR]].
+
  Installare {{AUR|pmus}} da [[AUR_(Italiano)|AUR]].
 
* '''ario''' – Client GTK+ con browser della libreria simile a Rhythmbox [http://ario-player.sourceforge.net Sito ufficiale di Ario]
 
* '''ario''' – Client GTK+ con browser della libreria simile a Rhythmbox [http://ario-player.sourceforge.net Sito ufficiale di Ario]
 
  # pacman -S ario
 
  # pacman -S ario
Line 138: Line 147:
  
 
====mpdscribble====
 
====mpdscribble====
mpdscribble è un'altro demone, ma è solo disponibile in [http://aur.archlinux.org/packages.php?ID=22274 AUR]. Questa è probabilmente la migliore delle alternative, in quanto è lo scrobbler semi-ufficiale di MPD e utilizza la nuova funzione "idle" di MPD per uno scrobbling più accurato. Inoltre, non c'è bisogno dell'accesso root per configurarlo, perché non richiede nessuna modifica a <tt>/etc</tt>. Visitare [http://mpd.wikia.com/wiki/Client:Mpdscribble il sito ufficiale] per maggiori informazioni.
+
mpdscribble è un'altro demone, ma è solo disponibile in [https://aur.archlinux.org/packages.php?ID=22274 AUR]. Questa è probabilmente la migliore delle alternative, in quanto è lo scrobbler semi-ufficiale di MPD e utilizza la nuova funzione "idle" di MPD per uno scrobbling più accurato. Inoltre, non c'è bisogno dell'accesso root per configurarlo, perché non richiede nessuna modifica a {{ic|/etc}}. Visitare [http://mpd.wikia.com/wiki/Client:Mpdscribble il sito ufficiale] per maggiori informazioni.
  
 
Per ottenere mpdscribble, è sufficente installarlo dall'AUR ed eseguire i seguenti passaggi (non come root):
 
Per ottenere mpdscribble, è sufficente installarlo dall'AUR ed eseguire i seguenti passaggi (non come root):
  
* {{Codeline|$ mkdir ~/.mpdscribble}}
+
* {{ic|$ mkdir ~/.mpdscribble}}
* Creare il file {{Filename|~/.mpdscribble/mpdscribble.conf}} e configurarlo come segue:
+
* Creare il file {{ic|~/.mpdscribble/mpdscribble.conf}} e configurarlo come segue:
<pre>
+
{{bc|<nowiki>
 
  [mpdscribble]  
 
  [mpdscribble]  
 
  host = <host di mpd>
 
  host = <host di mpd>
Line 166: Line 175:
 
  username = <username libre.fm>
 
  username = <username libre.fm>
 
  password = <password libre.fm>
 
  password = <password libre.fm>
</pre>
+
</nowiki>}}
* Aggiungere {{Codeline|mpdscribble}} al proprio {{Filename|~/.xinitrc}}:
+
* Aggiungere {{ic|mpdscribble}} al proprio {{ic|~/.xinitrc}}:
 
  pidof mpdscribble >& /dev/null
 
  pidof mpdscribble >& /dev/null
 
  if [ $? -ne 0 ]; then
 
  if [ $? -ne 0 ]; then
Line 173: Line 182:
 
  fi
 
  fi
  
Per chi non esegue il login direttamente da X, è possibile aggiungere mpdscribble all'array DAEMONS di {{Filename|/etc/rc.conf}}. Tuttavia in alcuni casi ciò non è sufficiente a garantire che mpdscribble venga eseguito all'avvio di sistema. Si può ovviare a questo inconveniente aggiungendo  
+
Per chi non esegue il login direttamente da X, è possibile aggiungere mpdscribble all'array DAEMONS di {{ic|/etc/rc.conf}}. Tuttavia in alcuni casi ciò non è sufficiente a garantire che mpdscribble venga eseguito all'avvio di sistema. Si può ovviare a questo inconveniente aggiungendo  
 
  mpdscribble &
 
  mpdscribble &
a {{Filename|/etc/rc.local}}.
+
a {{ic|/etc/rc.local}}.
  
 
====Sonata & Ario====
 
====Sonata & Ario====
Line 181: Line 190:
  
 
====lastfmsubmitd====
 
====lastfmsubmitd====
lastfmsubmitd è un demone disponibile nel repository "community". Dopo averlo installato, per prima cosa modificare {{Filename|/etc/lastfmsubmitd.conf}} e aggiungere sia {{Codeline|lastfmsubmitd}} che {{Codeline|lastmp}} all'array {{Codeline|DAEMONS}} in {{Filename|/etc/rc.conf}}.
+
lastfmsubmitd è un demone disponibile nel repository "community". Dopo averlo installato, per prima cosa modificare {{ic|/etc/lastfmsubmitd.conf}} e aggiungere sia {{ic|lastfmsubmitd}} che {{ic|lastmp}} all'array {{ic|DAEMONS}} in {{ic|/etc/rc.conf}}.
  
 
===Riproduzione da Last.fm con lastfmproxy===
 
===Riproduzione da Last.fm con lastfmproxy===
lastfmproxy è uno script python  che riproduce uno stream last.fm su un altro media player. Per configurarlo, installare [http://aur.archlinux.org/packages.php?ID=14214 lastfmproxy] dall'[[AUR_(Italiano)|AUR]] e modificare {{Filename|/usr/share/lastfmproxy/config.py}}. Se si vuole riprodurre sono da MPD sullo stesso host, è sufficiente modificare le informazioni di login.
+
lastfmproxy è uno script python  che riproduce uno stream last.fm su un altro media player. Per configurarlo, installare {{AUR|lastfmproxy}} dall'[[AUR_(Italiano)|AUR]] e modificare {{ic|/usr/share/lastfmproxy/config.py}}. Se si vuole riprodurre sono da MPD sullo stesso host, è sufficiente modificare le informazioni di login.
  
{{Nota | Visto che viene installato in una directory di sola lettura ma richiede permessi di lettura/scrittura per funzioni quali la memorizzazione delle stazioni precedentemente ascoltate, sarebbe saggio copiare {{Filename|/usr/share/lastfmproxy}} nella propria home.}}
+
{{Nota | Visto che viene installato in una directory di sola lettura ma richiede permessi di lettura/scrittura per funzioni quali la memorizzazione delle stazioni precedentemente ascoltate, sarebbe saggio copiare {{ic|/usr/share/lastfmproxy}} nella propria home.}}
  
Avviare lastfmproxy con {{Codeline|lastfmproxy}} e visitare http://localhost:1881/ nel proprio browser.  Per aggiungere una stazione last.fm station navigare in http://localhost:1881/ seguito da lastfm:// url.  Esempio: http://localhost:1881/lastfm://globaltags/punk .  Tornare in http://localhost:1881/ e scaricare il file m3u selezionando il link ''Start Listening''. Semplicemente aggiungere questo file alle playlist.
+
Avviare lastfmproxy con {{ic|lastfmproxy}} e visitare http://localhost:1881/ nel proprio browser.  Per aggiungere una stazione last.fm station navigare in http://localhost:1881/ seguito da lastfm:// url.  Esempio: http://localhost:1881/lastfm://globaltags/punk .  Tornare in http://localhost:1881/ e scaricare il file m3u selezionando il link ''Start Listening''. Semplicemente aggiungere questo file alle playlist.
  
 
===Non riprodurre all'avvio===
 
===Non riprodurre all'avvio===
 
====Metodo 1====
 
====Metodo 1====
Se non si desidera che MPD riproduca la playlist all'avvio del demone, ma si desidera preservare le altre informazioni di stato, aggiungere le righe seguenti al file {{Filename|/etc/rc.d/mpd}}:
+
Se non si desidera che MPD riproduca la playlist all'avvio del demone, ma si desidera preservare le altre informazioni di stato, aggiungere le righe seguenti al file {{ic|/etc/rc.d/mpd}}:
 
  ''  ...''
 
  ''  ...''
 
  ''  stat_busy "Avvio di Music Player Daemon"''
 
  ''  stat_busy "Avvio di Music Player Daemon"''
Line 214: Line 223:
 
  ''  ...''
 
  ''  ...''
  
Questo imposterà il lettore in "pausa", se è stato fermato durante la riproduzione. Successivamente, se si vuole che questo file sia preservato, in modo che gli aggiornamenti di MPD non eliminino questa modifica, aggiungere o modificare la seguente linea in {{Filename|/etc/pacman.conf}}:
+
Questo imposterà il lettore in "pausa", se è stato fermato durante la riproduzione. Successivamente, se si vuole che questo file sia preservato, in modo che gli aggiornamenti di MPD non eliminino questa modifica, aggiungere o modificare la seguente linea in {{ic|/etc/pacman.conf}}:
 
  NoUpgrade = etc/rc.d/mpd
 
  NoUpgrade = etc/rc.d/mpd
  
 
====Metodo 2====
 
====Metodo 2====
  
Un metodo più semplice consiste nell'aggiungere mpd all'array DAEMONS di {{Filename|[[rc.conf]]}} e aggiungere {{Codeline|mpc stop}} oppure {{Codeline|mpc pause}} a {{Filename|/etc/rc.local.shutdown}} e a {{Filename|/etc/rc.local}}. (Ricordarsi che è necessario avere mpc installato per sfruttare questo metodo).
+
Un metodo più semplice consiste nell'aggiungere mpd all'array DAEMONS di {{ic|[[rc.conf]]}} e aggiungere {{ic|mpc stop}} oppure {{ic|mpc pause}} a {{ic|/etc/rc.local.shutdown}} e a {{ic|/etc/rc.local}}. (Ricordarsi che è necessario avere mpc installato per sfruttare questo metodo).
  
Aggiungere il comando al solo {{Filename|/etc/rc.local}} non assicura che mpd non riproduca assolutamente nulla, in quanto potrebbe esserci un ritardo prima che il comando di stop sia eseguito.  
+
Aggiungere il comando al solo {{ic|/etc/rc.local}} non assicura che mpd non riproduca assolutamente nulla, in quanto potrebbe esserci un ritardo prima che il comando di stop sia eseguito.  
D'altro canto, se si aggiunge il comando unicamente a {{Filename|/etc/rc.local.shutdown}}, ci si assicura che mpd non riproduca nulla, fintantoché si spenga il sistema in modo corretto.
+
D'altro canto, se si aggiunge il comando unicamente a {{ic|/etc/rc.local.shutdown}}, ci si assicura che mpd non riproduca nulla, fintantoché si spenga il sistema in modo corretto.
Anche se sono ridondanti, aggiungerli a {{Filename|/etc/rc.local}} potrebbe servire per quelle, presumibilmente, rare occasioni in cui il sistema non si spenga in modo appropriato.
+
Anche se sono ridondanti, aggiungerli a {{ic|/etc/rc.local}} potrebbe servire per quelle, presumibilmente, rare occasioni in cui il sistema non si spenga in modo appropriato.
  
 
====Metodo 3====
 
====Metodo 3====
  
L'idea di base di questo metodo è chiedere ad mpd di mettere in pausa la musica quando l'utente esegue il logout, così al prossimo avvio mpd si bloccherà nello stato di pausa. È possibile inviare questo comando usando [http://www.archlinux.org/packages/extra/x86_64/mpc/ mpc], l'interfaccia a linea di comando di mpd:
+
L'idea di base di questo metodo è chiedere ad mpd di mettere in pausa la musica quando l'utente esegue il logout, così al prossimo avvio mpd si bloccherà nello stato di pausa. È possibile inviare questo comando usando [https://www.archlinux.org/packages/extra/x86_64/mpc/ mpc], l'interfaccia a linea di comando di mpd:
 
  pacman -S mpc
 
  pacman -S mpc
  
Gli utenti di GDM possono aggiungere la riga seguente a {{Filename|/etc/gdm/PostSession/Default}} (assicurarsi di aggiungerla prima di "exit 0"):
+
Gli utenti di GDM possono aggiungere la riga seguente a {{ic|/etc/gdm/PostSession/Default}} (assicurarsi di aggiungerla prima di "exit 0"):
 
  /usr/bin/mpc pause
 
  /usr/bin/mpc pause
  
Line 236: Line 245:
  
 
===MPD & ALSA===
 
===MPD & ALSA===
A volte, quando si usano altri output audio, ad esempio alcune pagine web contenenti applet Flash, MPD non può riprodurre nulla fino al riavvio. L'errore, se si guarda {{Filename|/var/log/mpd/mpd.error}}, assomiglierà a:
+
A volte, quando si usano altri output audio, ad esempio alcune pagine web contenenti applet Flash, MPD non può riprodurre nulla fino al riavvio. L'errore, se si guarda {{ic|/var/log/mpd/mpd.error}}, assomiglierà a:
  
 
  Error opening alsa device "hw:0,0": Device or resource busy
 
  Error opening alsa device "hw:0,0": Device or resource busy
  
E qui c'è la soluzione (dmix salva nuovamente la vita). Applicare le righe seguenti al proprio {{Filename|/etc/mpd.conf}}:
+
E qui c'è la soluzione (dmix salva nuovamente la vita). Applicare le righe seguenti al proprio {{ic|/etc/mpd.conf}}:
  
<pre>
+
{{bc|1=
 
audio_output {
 
audio_output {
 
         type                    "alsa"
 
         type                    "alsa"
Line 249: Line 258:
 
         device                  "plug:dmix"
 
         device                  "plug:dmix"
 
}
 
}
</pre>
+
}}
  
E riavviare con {{Codeline|/etc/rc.d/mpd restart}}.
+
E riavviare con {{ic|/etc/rc.d/mpd restart}}.
  
 
Nel wiki di Gentoo si trovano alcune spiegazioni di tale inconveniente:
 
Nel wiki di Gentoo si trovano alcune spiegazioni di tale inconveniente:
Line 257: Line 266:
 
* Un'applicazione non è compatibile con ALSA nelle sue configurazioni di default
 
* Un'applicazione non è compatibile con ALSA nelle sue configurazioni di default
  
Per una descrizione dettagliata, si raccomanda di dare un'occhiata a [http://mpd.wikia.com/wiki/Alsa questo] link. Qui è possibile trovare un esempio di {{Filename|asound.conf}} su cui basarsi per una corretta configurazione di ALSA.
+
Per una descrizione dettagliata, si raccomanda di dare un'occhiata a [http://mpd.wikia.com/wiki/Alsa questo] link. Qui è possibile trovare un esempio di {{ic|asound.conf}} su cui basarsi per una corretta configurazione di ALSA.
  
 
====Elevato utilizzo della CPU con ALSA====
 
====Elevato utilizzo della CPU con ALSA====
 
Quando si utilizza MPD con ALSA, è possibile che MPD impieghi molta CPU (circa il 20-30%). Questo è causato dal fatto che molte schede audio supportano i 48kHz mentre la maggior parte della musica è a 44kHz, costringendo quindi MPD a ricodificare la traccia. Questa operazione impiega molti cicli di CPU e un elevato utilizzo della stessa.
 
Quando si utilizza MPD con ALSA, è possibile che MPD impieghi molta CPU (circa il 20-30%). Questo è causato dal fatto che molte schede audio supportano i 48kHz mentre la maggior parte della musica è a 44kHz, costringendo quindi MPD a ricodificare la traccia. Questa operazione impiega molti cicli di CPU e un elevato utilizzo della stessa.
  
Per molti utenti il problema dovrebbe risolversi istruendo MPD a non ricodificare, aggiungendo {{Codeline|auto_resample "no"}} alla sezione audio_output di {{Filename|/etc/mpd.conf}}. Tuttavia, ciò peggiorerà leggermente la qualità di alcune tracce.
+
Per molti utenti il problema dovrebbe risolversi istruendo MPD a non ricodificare, aggiungendo {{ic|auto_resample "no"}} alla sezione audio_output di {{ic|/etc/mpd.conf}}. Tuttavia, ciò peggiorerà leggermente la qualità di alcune tracce.
  
Esempio da {{Filename|mpd.conf}}:
+
Esempio da {{ic|mpd.conf}}:
  
 
  audio_output {
 
  audio_output {
Line 289: Line 298:
 
Prima di tutto, configurare il telecomando come indicato nell'articolo '''[[Lirc]]'''.
 
Prima di tutto, configurare il telecomando come indicato nell'articolo '''[[Lirc]]'''.
  
Modificare il file di configurazione di lirc, usualmente situato in {{Filename|~/.lircrc}}, seguendo questa struttura base:
+
Modificare il file di configurazione di lirc, usualmente situato in {{ic|~/.lircrc}}, seguendo questa struttura base:
 
  begin
 
  begin
 
       prog = irexec
 
       prog = irexec
Line 373: Line 382:
 
  end
 
  end
  
mpc dispone di molte altre funzioni. {{Codeline|man mpc}} per maggiori informazioni.
+
mpc dispone di molte altre funzioni. {{ic|man mpc}} per maggiori informazioni.
  
 
===Controllare MPD tramite cellulare bluetooth===
 
===Controllare MPD tramite cellulare bluetooth===
 
È anche possibile controllare MPD (fino ad un certo punto) utilizzando un cellulare con bluetooth. È necessario eseguire le seguenti operazioni:
 
È anche possibile controllare MPD (fino ad un certo punto) utilizzando un cellulare con bluetooth. È necessario eseguire le seguenti operazioni:
  
* installare [http://remuco.sourceforge.net/index.php/Remuco remuco] -- un controller wireless per molti media player Linux ([http://aur.archlinux.org/packages.php?ID=25072 aur])
+
* installare [http://remuco.sourceforge.net/index.php/Remuco remuco] -- un controller wireless per molti media player Linux ([https://aur.archlinux.org/packages.php?ID=25072 aur])
* trasferire il client remuco (file jar/jad) da {{Filename|/usr/share/remuco/client/}} al proprio telefono e installarlo
+
* trasferire il client remuco (file jar/jad) da {{ic|/usr/share/remuco/client/}} al proprio telefono e installarlo
* avviare {{Codeline|remuco-mpd}} (come utente)
+
* avviare {{ic|remuco-mpd}} (come utente)
 
* avviare remuco sul proprio cellulare, definire una nuova connessione bluetooth per remuco (connettere il cellulare se non è stato fatto prima) ed esplorare le sue capacità
 
* avviare remuco sul proprio cellulare, definire una nuova connessione bluetooth per remuco (connettere il cellulare se non è stato fatto prima) ed esplorare le sue capacità
  
Line 387: Line 396:
 
===MPD & PulseAudio===
 
===MPD & PulseAudio===
  
Modificare {{Filename|/etc/mpd.conf}}, e decommentare la sezione audio_output per la tipologia "pulse". Il server e le relative righe dovrebbero essere commentate a meno che non si sappia quello che si sta facendo.
+
Modificare {{ic|/etc/mpd.conf}}, e decommentare la sezione audio_output per la tipologia "pulse". Il server e le relative righe dovrebbero essere commentate a meno che non si sappia quello che si sta facendo.
  
 
Successivamente, aggiungere l'utente mpd (e il proprio se non è già stato fatto) ai gruppi pulse richiesti. Il gruppo pulse-access dovrebbe essere sufficiente, ma se si desidera aggiungere anche pulse-rt. Il gruppo "pulse" non sembra essere necessario.
 
Successivamente, aggiungere l'utente mpd (e il proprio se non è già stato fatto) ai gruppi pulse richiesti. Il gruppo pulse-access dovrebbe essere sufficiente, ma se si desidera aggiungere anche pulse-rt. Il gruppo "pulse" non sembra essere necessario.
Line 393: Line 402:
 
  # gpasswd -a mpd pulse-rt
 
  # gpasswd -a mpd pulse-rt
  
Infine, potrebbe essere necessario copiare {{Filename|~/.pulse-cookie}} dalla propria directory di lavoro di pulse alla propria directory di mpd. È probabile che sia {{Filename|/var/lib/mpd}} se si è seguita la prima parte di questo wiki. Questo probabilmente consentirà solo all'utente attuale di ascoltare MPD su pulse. Si dovrebbe considerare di lanciare pulse per tutti gli utenti se ciò non dovesse rivelarsi sufficiente.
+
Infine, potrebbe essere necessario copiare {{ic|~/.pulse-cookie}} dalla propria directory di lavoro di pulse alla propria directory di mpd. È probabile che sia {{ic|/var/lib/mpd}} se si è seguita la prima parte di questo wiki. Questo probabilmente consentirà solo all'utente attuale di ascoltare MPD su pulse. Si dovrebbe considerare di lanciare pulse per tutti gli utenti se ciò non dovesse rivelarsi sufficiente.
  
 
==Risoluzione dei problemi==
 
==Risoluzione dei problemi==
 
===Autorilevamento fallito===
 
===Autorilevamento fallito===
All'avvio, MPD cerca di rilevare il sistema e di configurare l'outout e il volume in accordo. Anche se nella maggior parte dei casi questo avviene senza problemi, in alcuni sistemi non succede. Potrebbe aiutare comunicare ad MPD cosa utilizzare come output e come mixer. Se è stato copiato {{Filename|/etc/mpd.conf}} da {{Filename|/etc/mpd.conf.example}} come precedentemente menzionato, basta semplicemente decommentare
+
All'avvio, MPD cerca di rilevare il sistema e di configurare l'outout e il volume in accordo. Anche se nella maggior parte dei casi questo avviene senza problemi, in alcuni sistemi non succede. Potrebbe aiutare comunicare ad MPD cosa utilizzare come output e come mixer. Se è stato copiato {{ic|/etc/mpd.conf}} da {{ic|/etc/mpd.conf.example}} come precedentemente menzionato, basta semplicemente decommentare
  
 
per output su ALSA:
 
per output su ALSA:
Line 418: Line 427:
 
{{Attenzione|Questa azione non è sicura e potrebbe non essere necessaria.}}
 
{{Attenzione|Questa azione non è sicura e potrebbe non essere necessaria.}}
  
MPD ha bisogno dei permessi di esecuzione su '''TUTTE''' le directory della collezione musicale (ad esempio se essa si trova al di fuori della home di mpd {{Filename|/var/lib/mpd}}). Di default {{Codeline|useradd}} imposta i permessi della home come <tt>1700 drwx------</tt>. Potrebbe quindi esserci necessità di cambiare i permessi di {{Filename|/home/user}}. Ad esempio, se la collezione si trova in {{Filename|/home/user/music}}:  
+
MPD ha bisogno dei permessi di esecuzione su '''TUTTE''' le directory della collezione musicale (ad esempio se essa si trova al di fuori della home di mpd {{ic|/var/lib/mpd}}). Di default {{ic|useradd}} imposta i permessi della home come {{ic|1700 drwx------}}. Potrebbe quindi esserci necessità di cambiare i permessi di {{ic|/home/user}}. Ad esempio, se la collezione si trova in {{ic|/home/user/music}}:  
 
  # chmod a+x /home/$USER
 
  # chmod a+x /home/$USER
 
  # chmod -R a+X /home/$USER/music
 
  # chmod -R a+X /home/$USER/music
  
 
====Soluzione alternativa====
 
====Soluzione alternativa====
Una soluzione alternativa potrebbe essere quella di usare il gruppo dell'utente per condividere alcuni file, tra cui la collezione musicale. Per prima cosa rimuovere tutti i permessi per il gruppo e successivamente aggiungere al gruppo i permessi di lettura ed esecuzione di {{Filename|home}} e di {{Filename|music}}:
+
Una soluzione alternativa potrebbe essere quella di usare il gruppo dell'utente per condividere alcuni file, tra cui la collezione musicale. Per prima cosa rimuovere tutti i permessi per il gruppo e successivamente aggiungere al gruppo i permessi di lettura ed esecuzione di {{ic|home}} e di {{ic|music}}:
 
  # chmod -R g-rwx /home/$USER
 
  # chmod -R g-rwx /home/$USER
 
  # chmod g+rx /home/$USER
 
  # chmod g+rx /home/$USER
Line 429: Line 438:
  
 
====Altra soluzione alternativa====
 
====Altra soluzione alternativa====
Un'altra alternativa è montare la collezione all'interno di una directory accessibile a MPD. Questo è un rischio per la sicurezza minore di modificare i permessi della home di un utente:
+
Un'altra alternativa è montare la collezione all'interno di una directory accessibile a MPD. È meno rischioso per la sicurezza minore di modificare i permessi della home di un utente:
 
  # mkdir /var/lib/mpd/music
 
  # mkdir /var/lib/mpd/music
 
  # echo "/home/$USER/music /var/lib/mpd/music none bind" >> /etc/fstab
 
  # echo "/home/$USER/music /var/lib/mpd/music none bind" >> /etc/fstab
 
  # mount -a
 
  # mount -a
# /etc/rc.d/mpd restart
+
Infine riavviate il demone. Vedere anche [https://bbs.archlinux.org/viewtopic.php?id=86449 questo thread] del forum inglese.
E questo dovrebbe risolvere il problema. Vedere anche [https://bbs.archlinux.org/viewtopic.php?id=86449 questo thread] del forum inglese.
+
  
 
===Evitare i timeout===
 
===Evitare i timeout===
Per sbarazzarsi dei timeout (ad esempio, quando si mette in pausa per lungo tempo) in gpmc e altri client, decommentare ed incrementare l'opzione {{Codeline|connection_timeout}} in {{Filename|mpd.conf}}.
+
Per sbarazzarsi dei timeout (ad esempio, quando si mette in pausa per lungo tempo) in gpmc e altri client, decommentare ed incrementare l'opzione {{ic|connection_timeout}} in {{ic|mpd.conf}}.
  
 
===Impostare le codifiche===
 
===Impostare le codifiche===
Se i file o i titoli sono mostrati con una codifica non corretta, decommentare e modificare le opzioni {{Codeline|filesystem_charset}} e {{Codeline|id3v1_encoding}}.
+
Se i file o i titoli sono mostrati con una codifica non corretta, decommentare e modificare le opzioni {{ic|filesystem_charset}} e {{ic|id3v1_encoding}}.
 
{{Nota | Non è possibile impostare la codifica per i tag ID3 v2. Per risolvere questo inconveniente è possibile utilizzare [http://mpd.wikia.com/wiki/GenericDecoder#Generic_Tagreader lettori di tag esterni].}}
 
{{Nota | Non è possibile impostare la codifica per i tag ID3 v2. Per risolvere questo inconveniente è possibile utilizzare [http://mpd.wikia.com/wiki/GenericDecoder#Generic_Tagreader lettori di tag esterni].}}
 
  
 
===Controllare MPD in rete===
 
===Controllare MPD in rete===
 
{{out of date}}
 
{{out of date}}
Se si desidera controllare MPD tramite un altro computer in rete, l'opzione {{Codeline|bind_to_address}} in {{Filename|mpd.conf}} dovrà essere impostata all'indirizzo IP desiderato, oppure ad {{Codeline|any}} se l'IP cambia in continuamente. Ricordarsi di aggiungere mpd al file {{Filename|/etc/hosts.allow}} per permettere l'accesso esterno.
+
Se si desidera controllare MPD tramite un altro computer in rete, l'opzione {{ic|bind_to_address}} in {{ic|mpd.conf}} dovrà essere impostata all'indirizzo IP desiderato, oppure ad {{ic|any}} se l'IP cambia in continuamente. Ricordarsi di aggiungere mpd al file {{ic|/etc/hosts.allow}} per permettere l'accesso esterno.
  
 
===Streaming===
 
===Streaming===
 
Dalla versione 0.15 di MPD è disponibile lo streaming http.
 
Dalla versione 0.15 di MPD è disponibile lo streaming http.
  
Per attivare questa funzionalità, è necessario aggiungere un nuovo output di tipo httpd in {{Filename|mpd.conf}}:
+
Per attivare questa funzionalità, è necessario aggiungere un nuovo output di tipo httpd in {{ic|mpd.conf}}:
 
  audio_output {
 
  audio_output {
 
           type  "httpd"
 
           type  "httpd"
Line 489: Line 496:
  
 
===Cannot connect to mpd: host "localhost" not found: Temporary failure in name resolution===
 
===Cannot connect to mpd: host "localhost" not found: Temporary failure in name resolution===
Impossibile connettersi a MPD (con ncmpcpp), se non si è connessi alla rete. La soluzione è [[IPv6_-_Disabling_the_Module|disabilitare il modulo IPv6]] oppure aggiungere la seguente linea a {{Filename|/etc/hosts}}:
+
Impossibile connettersi a MPD (con ncmpcpp), se non si è connessi alla rete. La soluzione è [[IPv6_-_Disabling_the_Module|disabilitare il modulo IPv6]] oppure aggiungere la seguente linea a {{ic|/etc/hosts}}:
 
  ::1 localhost.localdomain localhost
 
  ::1 localhost.localdomain localhost
  
 
===Port 6600 already in use===
 
===Port 6600 already in use===
MPD ha bisogno di collegarsi alla porta 6600 e non può avviarsi se questa è già in uso. La ragione più comune per questo errore è che l'utente ha già avviato MPD e successivamente ha lanciato {{Codeline|mpd --create-db}}. Il nuovo comportamento di mpd è che l'opzione {{Codeline|--create-db}} tenta anche di avviare il demone; se questo è già stato avviato, l'operazione fallisce. Se questo è il caso, provare:
+
MPD ha bisogno di collegarsi alla porta 6600 e non può avviarsi se questa è già in uso. La ragione più comune per questo errore è che l'utente ha già avviato MPD e successivamente ha lanciato {{ic|mpd --create-db}}. Il nuovo comportamento di mpd è che l'opzione {{ic|--create-db}} tenta anche di avviare il demone; se questo è già stato avviato, l'operazione fallisce. Se questo è il caso, provare:
 
  $ mpd --kill
 
  $ mpd --kill
 
  $ mpd --create-db
 
  $ mpd --create-db
Line 503: Line 510:
 
{{Nota| Se tipicamente si lancia MPD come root, i comandi precedenti sono da eseguire come root..}}
 
{{Nota| Se tipicamente si lancia MPD come root, i comandi precedenti sono da eseguire come root..}}
  
Nella versione git di MPD, {{Codeline|mpd --create-db}} è completamente deprecata. Il database verrà creato automagicamente al primo avvio e successivamente si aggiornerà tramite il client (ad esempio {{Codeline|mpc update}}). Inoltre, il supporto a inotify fornisce un aggiornamento completamente automatico quando si aggiunge qualcosa alla propria collezione.
+
Nella versione git di MPD, {{ic|mpd --create-db}} è completamente deprecata. Il database verrà creato automagicamente al primo avvio e successivamente si aggiornerà tramite il client (ad esempio {{ic|mpc update}}). Inoltre, il supporto a inotify fornisce un aggiornamento completamente automatico quando si aggiunge qualcosa alla propria collezione.
  
 
Se la porta 6600 è bloccata per qualche ragione, si può usare il seguente comando per identificare il processo bloccante:
 
Se la porta 6600 è bloccata per qualche ragione, si può usare il seguente comando per identificare il processo bloccante:
  # netstat -tulpan | grep 6600
+
  # ss -tulpan | grep 6600
  
 
Questo mostrerà IP:Porta e nome del processo detenente la connessione (servono i privilegi di root per vedere tutti i processi).
 
Questo mostrerà IP:Porta e nome del processo detenente la connessione (servono i privilegi di root per vedere tutti i processi).
Line 513: Line 520:
 
Questo è solitamente un problema di velocità di riproduzione e si può risolvere decommentando e modificando la riga audio_output_format in:
 
Questo è solitamente un problema di velocità di riproduzione e si può risolvere decommentando e modificando la riga audio_output_format in:
  
{{File|name=/etc/mpd.conf|content=
+
{{hc|/etc/mpd.conf|
  audio_output_format "44100:16:2"}}
+
audio_output_format "44100:16:2"}}
  
 
Solitamente questi sono valori adatti per la maggior parte dei file mp3.
 
Solitamente questi sono valori adatti per la maggior parte dei file mp3.
  
===daemon: cannot setgid for user "mpd": Operation not permitted ===
+
=== daemon: cannot setgid for user "mpd": Operation not permitted ===
 
Questo errore afferma che l'utente che avvia il processo non ha il permesso di diventare l'altro utente (mpd) che la configurazione ha indicato come proprietario del processo.
 
Questo errore afferma che l'utente che avvia il processo non ha il permesso di diventare l'altro utente (mpd) che la configurazione ha indicato come proprietario del processo.
 
+
Per risolvere, semplicemente avviare mpd come root.
Per risolvere, semplicemente avviare mpd come root:
+
su -c "/etc/rc.d/mpd start"
+
oppure:
+
sudo /etc/rc.d/mpd start
+
  
 
==Riferimenti esterni==
 
==Riferimenti esterni==

Revision as of 16:20, 23 February 2014

MPD (music player daemon) è un player audio con struttura client-server. MPD lavora in background come demone, gestisce le playlist e il database della musica e utilizza pochissime risorse. Per interfacciarsi con il demone è necessario un client. Maggiori informazioni possono essere reperite sul sito di MPD.

Attenzione leggere anche la pagina ufficiale per l'installazione e la risoluzione dei problemi, lo sviluppatore principale ha indicato la nostra pagina wiki al suo stato attuale come piena di problemi ("full of symptom killers"), per cui la pagina ufficiale dovrebbe contenere informazioni più complete.

Installare il demone

Il demone è disponibile nel repository "extra", è quindi possibile installarlo con pacman:

# pacman -S mpd

Configurazione

Per maggiori informazioni sulla configurazione di MPD visitare http://mpd.wikia.com/wiki/Configuration.

Comportamento di MPD in una configurazione tipica

  1. MPD viene avviato al boot da /etc/rc.conf, includendolo nell'array DAEMONS. (In alternativa può essere avviato manualmente lanciando /etc/rc.d/mpd start con privilegi di root).
  2. Essendo stato lanciato come root, MPD per prima cosa legge il file /etc/mpd.conf.
  3. MPD individua l'utente di esecuzione dal file /etc/mpd.conf, e cambia la proprietà del processo da root a questo utente.
  4. Una volta cambiata la proprietà, MPD analizza i contenuti di /etc/mpd.conf si configura di conseguenza.

Si noti che MPD cambia l'utente attivo da root a quello menzionato in /etc/mpd.conf. In questo modo, l'uso di ~ nel file di configurazione punta correttamente alla directory home dell'utente, e non a quella di root. Potrebbe valer la pena di sostituire tutte le occorrenze di ~ con /home/username per evitare ogni confusione con questo particolare comportamento di MPD.

File di configurazione minimo

  • Come root, verificare se il file /etc/mpd.conf esiste e, nel caso, eliminarlo. Questo è sicuro e consigliato.

MPD crea un file di configurazione di esempio, situato in /usr/share/doc/mpd/mpd.conf.example. Questo file contiene moltissime informazioni sulla configurazione di MPD, oltre ad alcuni valori del mixer di default che possono semplicemente essere commentati.

  • Come root, copiare questo file di esempio in /etc/mpd.conf.
# cp /usr/share/mpd/mpd.conf.example /etc/mpd.conf

(/usr/share/doc/mpd/mpd.conf.example è un ottimo punto di partenza per una orientata al singolo utente)

Mai mettere questo file nella home dell'utente come suggerito in altri tutorial. Questo complicherrebe le cose e molte volte è anche inutile (notare come si stia leggendo una guida per l'installazione veloce). Se è stato precedentemente creato un file .mpdconf nella propria home, cancellarlo adesso. Questo è importante per evitare conflitti di configurazione. Copiandolo in /etc, come fatto in questa guida, MPD sarà in grado di operare come demone all'avvio. Altrimenti sarebbe necessario uno script per lanciare MPD dopo il login dell'utente (ad esempio in kdm o ~/.fluxbox/startup) oppure un avviamento manuale. Per una singola collezione musicale, il metodo qui descritto è semplicemente migliore, anche se la collezione è condivisa con più utenti. Inoltre, non bisogna preoccuparsi dei privilegi di root: anche quando MPD opera come demone, non opererà mai completamente come root in quanto automaticamente scarica i suoi privilegi di root dopo l'esecuzione.

Configurare correttamente il suono

Per far funzionare l'audio assicurarsi di aver correttamente configurato la scheda audio e il mixer. Visitare ALSA_(Italiano). Non dimenticarsi di rimuovere il muto dai canali necessari in alsamixer, alzare il volume e salvare i cambiamenti con alsactl store. Visitare ~/.mpd/error se ancora l'audio non funziona.

Assicurarsi che la propria scheda audio possa effettuare il mixing hardware (molte di esse possono, incluse quelle integrate). In caso contrario questo potrebbe causare problemi con le riproduzioni multiple. Per esempio, impedirebbe ad Mplayer di riprodurre il suono mentre il demone MPD è attivo, restituendo un messaggio di errore audio comunicante che il dispositivo è occupato.

Mixing software

Per cambiare il volume dell'audio di MPD indipendentemente da altri programmi, decommentare o aggiungere in mpd.conf:

/etc/mpd.conf
mixer_type			"software"

Modifica di mpd.conf

Si mantiene la configurazione in /var e si utilizza "mpd" come utente predefinito invece di ingombrare ~/. Il pacchetto Arch è configurato in questo modo.

Modificare /etc/mpd.conf nel seguente modo.

/etc/mpd.conf
music_directory       "/home/user/music"         # La directory della collezione musicale.
playlist_directory    "/var/lib/mpd/playlists"
db_file               "/var/lib/mpd/mpd.db"
log_file              "/var/log/mpd/mpd.log"
pid_file              "/var/run/mpd/mpd.pid"
state_file            "/var/lib/mpd/mpdstate"
user                  "mpd"
# bind_to_address e port causavano problemi in MPD-0.14.2
# meglio lasciare commentato
# bind_to_address       "127.0.0.1"
# port                  "6600"

Leggere i passaggi seguenti con attenzione, i permessi devono essere impostati correttamente.

  • Come utente creare i file specificati in /etc/mpd.conf, se le directory non esistono, crearle. Ciò non è richiesto se si usa la configurazione predefinita del pacchetto Arch.
  • Se la collezione musicale è contenuta in diverse directory, è possibile creare dei link simbolici in /var/lib/mpd e impostare 'music_dir' in mpd.conf alla directory contenente i link. Ricordare di impostare i permessi in accordo sulle directory linkate.
  • La creazione del database musicale si ottiene con la funzione "update" del client, ad esempio se si utilizza ncmpcpp è sufficiente premere 'u'.
    • La funzione di creazione del database MPD da root (# mpd --create-db), è deprecata.

Configurazione alternativa

MPD non ha bisogno di avviarsi con i permessi di root. L'unica ragione per cui MPD ha bisogno di essere avviato da root (venendo chiamato da /etc/rc.conf) è perché i file e le cartelle contenute nella configurazione di default puntano a directory di proprietà dell'utente root (la directory /var).Un approccio meno comune, ma forse più raffinato, è far lavorare MPD con file e directory di proprietà dell'utente normale. Avviare MPD come utente normale ha diversi vantaggi:

  1. Si può facilmente avere una singola directory ~/.mpd (o una qualsiasi altra directory sotto /home/username) per tutti i file di configurazione di MPD
  2. Nessun errore causato da permessi di lettura/scrittura
  3. Chiamate ad MPD più flessibili usando ~/.xinitrc invece di includere 'mpd' nell'array DAEMONS di /etc/rc.conf.

I seguenti passaggi illustrano come avviare MPD come utente normale. Attenzione: questo metodo non funzionerà se si desidera che più utenti possano accedere ad MPD.

  • Copiare i contenuti della configurazione di default di MPD da /etc/mpd.conf.example alla propria home. Una buona posizione potrebbe essere "/home/user/.mpd/mpd.conf".
  • Seguire le istruzioni di configurazione più sopra, ignorando la prima parte riguardante la copia della configurazione in /etc/mpd.conf.
  • Creare tutti i file necessari in "/home/user/.mpd/":
"~/.mpd/playlists"
"~/.mpd/db"
"~/.mpd/mpd.log"
"~/.mpd/mpd.error"
"~/.mpd/mpd.pid"
"~/.mpd/mpdstate"
  • Avviare MPD al boot chiamandolo dal proprio ~/.xinitrc come segue:
# questo avvia MPD come utente normale
mpd /home/username/.mpd/mpd.conf
Nota: non c'è la necessita di inserire un "&" alla fine della riga precedente, in quanto MPD automaticamente si avvia come demone.

Infine, cancellare la voce 'mpd' dall'array DAEMONS in /etc/rc.conf, visto che non viene più avviato come root.

Configurazione veloce

Il metodo più rapido per creare la struttura necessaria è eseguire il seguente comando:

$ mkdir -p ~/.mpd/playlists && touch ~/.mpd/database && cp /usr/share/doc/mpd/mpdconf.example ~/.mpd/mpd.conf

E successivamente modificare mpd.conf con i propri collegamenti. Attenzione che è necessario decommentare la voce db_file se è stato modificato mpd.conf.

Infine, avviare MPD:

$ mpd ~/.mpd/mpd.conf

Configurazione multi-demone

Utile se si desidera avviare, ad esempio, un server icecast. Se si vuole un secondo demone MPD (ad esempio, con un output icecast per condividere la musica nella rete) che utilizzi la stessa musica e la stessa playlist di quello configurato come sopra, semplicemente copiare il file di configurazione qui sopra creato in un nuovo file (ad esempio, /home/username/.mpd/config-icecast), e modificare solo le voci log_file, error_file, pid_file, e state_file (ad esempio, mpd-icecast.log, mpd-icecast.error, e via di seguito); usare le stesse directory per la musica e le playlist assicura che questo secondo demone MPD utilizzerà la stessa collezione musicale del primo demone (quindi, creare e modificare una playlist dal primo demone influenzerà anche il secondo demone, così non sarà necessario creare la stessa playlist anche per il secondo demone). A questo punto, chiamare il secondo demone allo stesso modo del primo dal proprio ~/.xinitrc. (Solo assicurarsi di utilizzare una porta differente, in modo da non causare conflitti con il primo demone).

Installazione del client

Installare un programma client per MPD. Alcuni client comuni sono:

  • mpc – Client da linea di comando (la sua installazione è consigliata in ogni caso)
# pacman -S mpc
# pacman -S ncmpc
# pacman -S ncmpcpp
  • dmpc – Client MPC basato su DMenu con gestore di playlist e memorizzazione dello stato al cambio della playlist Pacchetto AUR di dmpc
Installare dmpcAUR da AUR.
Installare pmusAUR da AUR.
# pacman -S ario
# pacman -S sonata
# pacman -S gmpc
# pacman -S qmpdclient

Funzionalità Extra

Scrobbling su Last.fm

Per eseguire lo scrobbling delle tracce su Last.fm utilizzando MPD ci sono svariate alternative.

mpdscribble

mpdscribble è un'altro demone, ma è solo disponibile in AUR. Questa è probabilmente la migliore delle alternative, in quanto è lo scrobbler semi-ufficiale di MPD e utilizza la nuova funzione "idle" di MPD per uno scrobbling più accurato. Inoltre, non c'è bisogno dell'accesso root per configurarlo, perché non richiede nessuna modifica a /etc. Visitare il sito ufficiale per maggiori informazioni.

Per ottenere mpdscribble, è sufficente installarlo dall'AUR ed eseguire i seguenti passaggi (non come root):

  • $ mkdir ~/.mpdscribble
  • Creare il file ~/.mpdscribble/mpdscribble.conf e configurarlo come segue:
 [mpdscribble] 
 host = <host di mpd>
 port = <porta di mpd>
 log = ~/.mpdscribble/mpdscribble.log
 journal = ~/.mpdscribble/mpdscribble.cache
 verbose = 2
 sleep = 1
 musicdir = <directory della collezione>
 proxy = <il proxy> # opzionale, ad esempio http://uo.proxy:8080, di default vuoto

 [last.fm]
 # sezione last.fm, commentare se non si usa last.fm
 url = http://post.audioscrobbler.com # opzionale
 username = <username last>
 password = <password last.fm> # md5sum in alternativa: echo -n PASSWORD | md5sum | cut -f 1 -d " "

 [libre.fm]
 # sezione libre.fm, commentare se non si usa libre.fm
 url = http://turtle.libre.fm/
 username = <username libre.fm>
 password = <password libre.fm>
  • Aggiungere mpdscribble al proprio ~/.xinitrc:
pidof mpdscribble >& /dev/null
if [ $? -ne 0 ]; then
  mpdscribble &
fi

Per chi non esegue il login direttamente da X, è possibile aggiungere mpdscribble all'array DAEMONS di /etc/rc.conf. Tuttavia in alcuni casi ciò non è sufficiente a garantire che mpdscribble venga eseguito all'avvio di sistema. Si può ovviare a questo inconveniente aggiungendo

mpdscribble &

a /etc/rc.local.

Sonata & Ario

La via più facile, se non è importante avere una finestra aperta tutto il tempo, è usare Sonata o Ario che sono frontend grafici a MPD. Hanno un supporto integrato per lo scrobbling su Last.fm nelle loro preferenze. Una nota negativa è che Sonata non salva una cache delle tracce se per qualche ragione non è disponibile una connessione internet durante la riproduzione.

lastfmsubmitd

lastfmsubmitd è un demone disponibile nel repository "community". Dopo averlo installato, per prima cosa modificare /etc/lastfmsubmitd.conf e aggiungere sia lastfmsubmitd che lastmp all'array DAEMONS in /etc/rc.conf.

Riproduzione da Last.fm con lastfmproxy

lastfmproxy è uno script python che riproduce uno stream last.fm su un altro media player. Per configurarlo, installare lastfmproxyAUR dall'AUR e modificare /usr/share/lastfmproxy/config.py. Se si vuole riprodurre sono da MPD sullo stesso host, è sufficiente modificare le informazioni di login.

Nota: Visto che viene installato in una directory di sola lettura ma richiede permessi di lettura/scrittura per funzioni quali la memorizzazione delle stazioni precedentemente ascoltate, sarebbe saggio copiare /usr/share/lastfmproxy nella propria home.

Avviare lastfmproxy con lastfmproxy e visitare http://localhost:1881/ nel proprio browser. Per aggiungere una stazione last.fm station navigare in http://localhost:1881/ seguito da lastfm:// url. Esempio: http://localhost:1881/lastfm://globaltags/punk . Tornare in http://localhost:1881/ e scaricare il file m3u selezionando il link Start Listening. Semplicemente aggiungere questo file alle playlist.

Non riprodurre all'avvio

Metodo 1

Se non si desidera che MPD riproduca la playlist all'avvio del demone, ma si desidera preservare le altre informazioni di stato, aggiungere le righe seguenti al file /etc/rc.d/mpd:

   ...
   stat_busy "Avvio di Music Player Daemon"
   # avviare sempre in pausa
   awk '/^state_file[ \t]+"[^"]+"$/ {
       match($0, "\".+\"")
       sfile = substr($0, RSTART + 1, RLENGTH - 2)
   } /^user[ \t]+"[^"]+"$/ {
       match($0, "\".+\"")
       user = substr($0, RSTART + 1, RLENGTH - 2)
   } END {
       if (sfile == "")
               exit;
       if (user != "")
               sub(/^~/, "/home/" user, sfile)
       system("sed -i \x27s|^\\(state:[ \\t]\\{1,\\}\\)play$|\\1pause|\x27 \x27" sfile "\x27")
   }' /etc/mpd.conf
   /usr/bin/mpd /etc/mpd.conf &> /dev/null
   ...

Questo imposterà il lettore in "pausa", se è stato fermato durante la riproduzione. Successivamente, se si vuole che questo file sia preservato, in modo che gli aggiornamenti di MPD non eliminino questa modifica, aggiungere o modificare la seguente linea in /etc/pacman.conf:

NoUpgrade = etc/rc.d/mpd

Metodo 2

Un metodo più semplice consiste nell'aggiungere mpd all'array DAEMONS di rc.conf e aggiungere mpc stop oppure mpc pause a /etc/rc.local.shutdown e a /etc/rc.local. (Ricordarsi che è necessario avere mpc installato per sfruttare questo metodo).

Aggiungere il comando al solo /etc/rc.local non assicura che mpd non riproduca assolutamente nulla, in quanto potrebbe esserci un ritardo prima che il comando di stop sia eseguito. D'altro canto, se si aggiunge il comando unicamente a /etc/rc.local.shutdown, ci si assicura che mpd non riproduca nulla, fintantoché si spenga il sistema in modo corretto. Anche se sono ridondanti, aggiungerli a /etc/rc.local potrebbe servire per quelle, presumibilmente, rare occasioni in cui il sistema non si spenga in modo appropriato.

Metodo 3

L'idea di base di questo metodo è chiedere ad mpd di mettere in pausa la musica quando l'utente esegue il logout, così al prossimo avvio mpd si bloccherà nello stato di pausa. È possibile inviare questo comando usando mpc, l'interfaccia a linea di comando di mpd:

pacman -S mpc

Gli utenti di GDM possono aggiungere la riga seguente a /etc/gdm/PostSession/Default (assicurarsi di aggiungerla prima di "exit 0"):

/usr/bin/mpc pause

Gli altri utenti possono similmente utilizzare il loro login manager per lanciare il comando al logout.

MPD & ALSA

A volte, quando si usano altri output audio, ad esempio alcune pagine web contenenti applet Flash, MPD non può riprodurre nulla fino al riavvio. L'errore, se si guarda /var/log/mpd/mpd.error, assomiglierà a:

Error opening alsa device "hw:0,0": Device or resource busy

E qui c'è la soluzione (dmix salva nuovamente la vita). Applicare le righe seguenti al proprio /etc/mpd.conf:

audio_output {
        type                    "alsa"
        name                    "Sound Card"
        options                 "dev=dmixer"
        device                  "plug:dmix"
}

E riavviare con /etc/rc.d/mpd restart.

Nel wiki di Gentoo si trovano alcune spiegazioni di tale inconveniente:

  • La scheda audio non supporta il mixing hardware (utilizza il plugin dmix)
  • Un'applicazione non è compatibile con ALSA nelle sue configurazioni di default

Per una descrizione dettagliata, si raccomanda di dare un'occhiata a questo link. Qui è possibile trovare un esempio di asound.conf su cui basarsi per una corretta configurazione di ALSA.

Elevato utilizzo della CPU con ALSA

Quando si utilizza MPD con ALSA, è possibile che MPD impieghi molta CPU (circa il 20-30%). Questo è causato dal fatto che molte schede audio supportano i 48kHz mentre la maggior parte della musica è a 44kHz, costringendo quindi MPD a ricodificare la traccia. Questa operazione impiega molti cicli di CPU e un elevato utilizzo della stessa.

Per molti utenti il problema dovrebbe risolversi istruendo MPD a non ricodificare, aggiungendo auto_resample "no" alla sezione audio_output di /etc/mpd.conf. Tuttavia, ciò peggiorerà leggermente la qualità di alcune tracce.

Esempio da mpd.conf:

audio_output {
   type			"alsa"
   name			"My ALSA Device"
   auto_resample		"no"
}

Anche se non in modo drastico, abilitare mmap può accelerare le cose:

audio_output {
   type			"alsa"
   name			"My ALSA Device"
   use_mmap		"yes"
}

Alcuni utenti potrebbero anche voler comunicare a dmix di utilizzare i 44kHz. Maggiori informazioni su come migliorare le performance di MPD si possono trovare nel wiki di MPD

Controllare MPD con lirc

Esistono già alcuni client realizzati per interfacciare lircd e MPD, tuttavia, all'utilizzo pratico non sono molto utili in quanto le loro funzionalità sono estremamente limitate.

Si raccomanda di usare mpc con irexec. mpc è un player da linea di comando che invia un'istruzione a MPD ed esce immediatamente, il che è perfetto per irexec, il parser di comandi incluso in lirc. Ciò che irexec fa è lanciare uno specifico comando una volta ricevuto un controllo dal telecomando.

Prima di tutto, configurare il telecomando come indicato nell'articolo Lirc.

Modificare il file di configurazione di lirc, usualmente situato in ~/.lircrc, seguendo questa struttura base:

begin
     prog = irexec
     button = <button_name>
     config = <command_to_run>
     repeat = <0 or 1>
end

Un utile esempio:

## irexec
begin
     prog = irexec
     button = play_pause
     config = mpc toggle
     repeat = 0
end

begin
     prog = irexec
     button = stop
     config = mpc stop
     repeat = 0
end
begin
     prog = irexec
     button = previous
     config = mpc prev
     repeat = 0
end
begin
     prog = irexec
     button = next
     config = mpc next
     repeat = 0
end
begin
     prog = irexec
     button = volup
     config = mpc volume +2
     repeat = 1
end
begin
     prog = irexec
     button = voldown
     config = mpc volume -2
     repeat = 1
end
begin
     prog = irexec
     button = pbc
     config = mpc random
     repeat = 0
end
begin
     prog = irexec
     button = pdvd
     config = mpc update
     repeat = 0
end
begin
     prog = irexec
     button = right
     config = mpc seek +00:00:05
     repeat = 0
end
begin
     prog = irexec
     button = left
     config = mpc seek -00:00:05
     repeat = 0
end
begin
     prog = irexec
     button = up
     config = mpc seek +1%
     repeat = 0
end
begin
     prog = irexec
     button = down
     config = mpc seek -1%
     repeat = 0
end

mpc dispone di molte altre funzioni. man mpc per maggiori informazioni.

Controllare MPD tramite cellulare bluetooth

È anche possibile controllare MPD (fino ad un certo punto) utilizzando un cellulare con bluetooth. È necessario eseguire le seguenti operazioni:

  • installare remuco -- un controller wireless per molti media player Linux (aur)
  • trasferire il client remuco (file jar/jad) da /usr/share/remuco/client/ al proprio telefono e installarlo
  • avviare remuco-mpd (come utente)
  • avviare remuco sul proprio cellulare, definire una nuova connessione bluetooth per remuco (connettere il cellulare se non è stato fatto prima) ed esplorare le sue capacità

Maggiori informazioni su remuco inclusa la risoluzione dei problemi si trovano nella sua homepage

MPD & PulseAudio

Modificare /etc/mpd.conf, e decommentare la sezione audio_output per la tipologia "pulse". Il server e le relative righe dovrebbero essere commentate a meno che non si sappia quello che si sta facendo.

Successivamente, aggiungere l'utente mpd (e il proprio se non è già stato fatto) ai gruppi pulse richiesti. Il gruppo pulse-access dovrebbe essere sufficiente, ma se si desidera aggiungere anche pulse-rt. Il gruppo "pulse" non sembra essere necessario.

# gpasswd -a mpd pulse-access
# gpasswd -a mpd pulse-rt

Infine, potrebbe essere necessario copiare ~/.pulse-cookie dalla propria directory di lavoro di pulse alla propria directory di mpd. È probabile che sia /var/lib/mpd se si è seguita la prima parte di questo wiki. Questo probabilmente consentirà solo all'utente attuale di ascoltare MPD su pulse. Si dovrebbe considerare di lanciare pulse per tutti gli utenti se ciò non dovesse rivelarsi sufficiente.

Risoluzione dei problemi

Autorilevamento fallito

All'avvio, MPD cerca di rilevare il sistema e di configurare l'outout e il volume in accordo. Anche se nella maggior parte dei casi questo avviene senza problemi, in alcuni sistemi non succede. Potrebbe aiutare comunicare ad MPD cosa utilizzare come output e come mixer. Se è stato copiato /etc/mpd.conf da /etc/mpd.conf.example come precedentemente menzionato, basta semplicemente decommentare

per output su ALSA:

audio_output {
	type			"alsa"
	name			"My ALSA Device"
	device			"hw:0,0"	# optional
	format			"44100:16:2"	# optional
}

per mixer alsa:

mixer_type			"alsa"
mixer_device			"default"
mixer_control			"PCM"

Nota: in caso di problemi di permessi utilizzando ESD con MPD, lanciare questo come root:

# chsh -s /bin/true mpd

Permessi di esecuzione

Attenzione: Questa azione non è sicura e potrebbe non essere necessaria.

MPD ha bisogno dei permessi di esecuzione su TUTTE le directory della collezione musicale (ad esempio se essa si trova al di fuori della home di mpd /var/lib/mpd). Di default useradd imposta i permessi della home come 1700 drwx------. Potrebbe quindi esserci necessità di cambiare i permessi di /home/user. Ad esempio, se la collezione si trova in /home/user/music:

# chmod a+x /home/$USER
# chmod -R a+X /home/$USER/music

Soluzione alternativa

Una soluzione alternativa potrebbe essere quella di usare il gruppo dell'utente per condividere alcuni file, tra cui la collezione musicale. Per prima cosa rimuovere tutti i permessi per il gruppo e successivamente aggiungere al gruppo i permessi di lettura ed esecuzione di home e di music:

# chmod -R g-rwx /home/$USER
# chmod g+rx /home/$USER
# chmod -R g+rX /home/$USER/music

Altra soluzione alternativa

Un'altra alternativa è montare la collezione all'interno di una directory accessibile a MPD. È meno rischioso per la sicurezza minore di modificare i permessi della home di un utente:

# mkdir /var/lib/mpd/music
# echo "/home/$USER/music /var/lib/mpd/music none bind" >> /etc/fstab
# mount -a

Infine riavviate il demone. Vedere anche questo thread del forum inglese.

Evitare i timeout

Per sbarazzarsi dei timeout (ad esempio, quando si mette in pausa per lungo tempo) in gpmc e altri client, decommentare ed incrementare l'opzione connection_timeout in mpd.conf.

Impostare le codifiche

Se i file o i titoli sono mostrati con una codifica non corretta, decommentare e modificare le opzioni filesystem_charset e id3v1_encoding.

Nota: Non è possibile impostare la codifica per i tag ID3 v2. Per risolvere questo inconveniente è possibile utilizzare lettori di tag esterni.

Controllare MPD in rete

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:Music Player Daemon (Italiano)#)

Se si desidera controllare MPD tramite un altro computer in rete, l'opzione bind_to_address in mpd.conf dovrà essere impostata all'indirizzo IP desiderato, oppure ad any se l'IP cambia in continuamente. Ricordarsi di aggiungere mpd al file /etc/hosts.allow per permettere l'accesso esterno.

Streaming

Dalla versione 0.15 di MPD è disponibile lo streaming http.

Per attivare questa funzionalità, è necessario aggiungere un nuovo output di tipo httpd in mpd.conf:

audio_output {
          type   "httpd"
          name   "What you want"
          encoder "lame"     # supportati vorbis o lame
          port    "8000"
          bitrate  "128"
          format   "44100:16:2"  # impostare a 2 per MONO
  }
     

Riavviare il demone MPD e, da un altro computer, semplicemente caricare lo stream come qualsiasi altro URL:

$ mplayer http://<IP DEL SERVER>:8000
Nota: Bisogna aprire la porta sul router/firewall perché ci si possa connettere allo stream da un altro computer.

Molti lettori, come vlc o xmms2, dovrebbero essere in grado di aprire lo stream da un opzione del menu come "add url...".

Questo è un metodo semplice e pulito per rimpiazzare un setup di icecast con qualcosa di nativamente supportato da MPD.

mpd --create-db si blocca

Questo è un errore comune causato da tag mp3 corrotti. Di seguito un metodo sperimentale per risolvere questo problema. Necessari:

  • kid3
  • easytag

Questo metodo è estremamente tedioso, specialmente con un grande database. Giusto come riferimento, sono necessario 2 ore e mezza per sistemare un database da 16Gb.

Easy Tag

Lo funzione di easytag è individuare l'errore nel tag, ma come MPD si blocca e termina. Il trucco è che easytag indica il file che causa il problema nella barra di stato. Prima di avviare easytag ci si assicuri di avere un terminale a portata di mano per killare easytag in modo da evitare che si blocchi. Una volta pronti, nella vista ad albero selezionare le directory contenenti la libreria. Easytag comincerà a nelle sottodirectory i file mp3. Appena si nota che easytag si ferma, prendere nota del file e killare il processo.

KID3

Con kid3 spostarsi al file in questione e riscrivere uno dei tag, poi salvare il file. Questo costringe kid3 a riscrivere tutto il tag risolvendo il problema del blocco con MPD e easytag.

Ripetere la procedura fino alla riparazione di tutti i file corrotti.

Cannot connect to mpd: host "localhost" not found: Temporary failure in name resolution

Impossibile connettersi a MPD (con ncmpcpp), se non si è connessi alla rete. La soluzione è disabilitare il modulo IPv6 oppure aggiungere la seguente linea a /etc/hosts:

::1 localhost.localdomain localhost

Port 6600 already in use

MPD ha bisogno di collegarsi alla porta 6600 e non può avviarsi se questa è già in uso. La ragione più comune per questo errore è che l'utente ha già avviato MPD e successivamente ha lanciato mpd --create-db. Il nuovo comportamento di mpd è che l'opzione --create-db tenta anche di avviare il demone; se questo è già stato avviato, l'operazione fallisce. Se questo è il caso, provare:

$ mpd --kill
$ mpd --create-db

Un approccio più brutale:

$ killall mpd
$ mpd --create-db
Nota: Se tipicamente si lancia MPD come root, i comandi precedenti sono da eseguire come root..

Nella versione git di MPD, mpd --create-db è completamente deprecata. Il database verrà creato automagicamente al primo avvio e successivamente si aggiornerà tramite il client (ad esempio mpc update). Inoltre, il supporto a inotify fornisce un aggiornamento completamente automatico quando si aggiunge qualcosa alla propria collezione.

Se la porta 6600 è bloccata per qualche ragione, si può usare il seguente comando per identificare il processo bloccante:

# ss -tulpan | grep 6600

Questo mostrerà IP:Porta e nome del processo detenente la connessione (servono i privilegi di root per vedere tutti i processi).

Crepitii con alcuni file audio

Questo è solitamente un problema di velocità di riproduzione e si può risolvere decommentando e modificando la riga audio_output_format in:

/etc/mpd.conf
audio_output_format "44100:16:2"

Solitamente questi sono valori adatti per la maggior parte dei file mp3.

daemon: cannot setgid for user "mpd": Operation not permitted

Questo errore afferma che l'utente che avvia il processo non ha il permesso di diventare l'altro utente (mpd) che la configurazione ha indicato come proprietario del processo. Per risolvere, semplicemente avviare mpd come root.

Riferimenti esterni