martedì 10 gennaio 2012

Installare e configurare Music Player Daemon

L'articolo odierno è nuovamente rivolto, dopo quelli su Pulseaudio e Music On Console, agli amanti della musica ed a coloro i quali sono alla perenne ricerca della miglior resa audio sui loro PC. Nello specifico, nelle righe che seguono, andremo a trattare di Music Player Daemon (MPD per gli amici), un'applicazione flessibile, ma potentissima, dedicata alla riproduzione musicale.

Perchè un possessore di netbook dovrebbe essere interessato ad MPD? Al di là delle indubitabili potenzialità dell'applicazione di per sè considerata, Music Player Daemon, come dice lo stesso nome, può agire come demone in background, senza necessità di appesantire il sistema con interfacce grafiche o di avere un player audio costantemente aperto ed in esecuzione.
L'applicazione, infatti, è pensata con una struttura server/clients, dove MPD, il server, interagisce con uno o più clients.
Attenzione però: ciò non significa che dovrete diventare dei guru del terminale: MPD può essere controllato attraverso un'infinità di modi, dal succitato terminale, alle semplici scorciatoie da tastiere, per arrivare fino alle vostre amate interfacce grafiche e perfino a dei client Web con il vostro browser preferito; tuttavia, il client, a differenza del demone, non dovrà rimanere costantemente in esecuzione e potrete limitarvi ad aprirlo, scegliere la vostra musica, impostare le vostre playlist, ecc. ed infine chiuderlo, lasciando il lavoro ad MPD!

Vi lascio immaginare da soli il vantaggio in termini di risorse utilizzate, sia a livello di CPU che di RAM, per la gioia dei vostri Atom e della durata della vostra batteria!

Prima di iniziare vi invito ad approfondire la breve infarinatura che vi ho fornito, documentandovi tramite l'ottimo Wiki di MPD, prestando particolare attenzione alle pagine che ci spiegano cos'è e cosa non è MPD (qui) e quali sono i principali clients (qui).
Ricco d'informazioni è come sempre anche il Wiki di Arch Linux

Quelle sopra linkate, assieme a questa discussione sul forum di Crunchbang Linux, sono anche le fonti principali alla base della presente guida.

Bene, passiamo alla sostanza!

Installazione

Per prima cosa, procuriamoci MPD ed uno strumento semplice ed essenziale per interfacciarci con il demone, ovvero il client a riga di comando Music Player Control, installandoli nel modo a noi più congeniale. Ad esempio, in Debian:
# aptitude install mpd mpc
Tutto qui, con pochi kb occupati l'essenziale è ora già nel nostro sistema.

Configurazione

Procediamo quindi alla configurazione, copiando il file d'esempio nella nostra home:
zcat /usr/share/doc/mpd/examples/mpd.conf.gz > ~/.mpdconf
creando una cartella per gli altri file dell'applicazione
mkdir ~/.mpd
ed infine modificando il file appena copiato con il nostro editor preferito
nano ~/.mpdconf
Avendo copiato il file d'esempio, non saremo abbandonati a noi stessi, ma bensì ci troveremo di fronte un documento opportunamente commentato, grazie al quale sapremo cosa stiamo modificando.

Cominciamo modificando il percorso del parametro music_directory da
music_directory  "/var/lib/mpd/music"
al percorso dove si trovano i nostri file musicali, ad esempio
music_directory  "~/Musica/Album/"
A seguire, modifichiamo anche tutti gli altri parametri della sezione Files and directories, in modo che tutto vada a confluire nella cartella ~/.mpd, precedentemente creata; dunque "/var/lib/mpd/tag_cache" diventerà "~/.mpd/tag_cache" e così di seguito tutti gli altri.
A voi la scelta di impostare anche una cartella per le playlist, se ne fate uso.

Procediamo, nella sezione "General music daemon options" commentando la voce "user" e decommentando (rimuovendo cioè il cancelletto "#") #auto_update "yes" e #auto_update_depth "3".
In questa sezione, personalmente, amo anche decommentare #gapless_mp3_playback "yes" per non avere pause tra una canzone e l'altra, ma lascio la scelta alle vostre preferenze.

Ora, una modifica che interesserà solo quanti di voi utilizzano pulseaudio: se non siete tra questi, ignoratela.
Scendete nella sezione "Audio Output", individuate le stringhe dedicate a pulseaudio ed assicuratevi di decommentare quelle necessarie in modo che il risultato finale sia questo:
# An example of a pulseaudio output (streaming to a remote pulseaudio server)
#
audio_output {
 type  "pulse"
 name  "My Pulse Output"
# server  "remote_server"  # optional
# sink  "remote_server_sink" # optional
}
In questo modo, oltre all'uscita ALSA, potremo ricorrere a pulseaudio: consiglio, per semplicità, di selezionare quest'uscita attraverso uno dei numerosi client che andremo ad analizzare più avanti; altrimenti, potreste anche decidere di commentare già da ora l'analoga parte relativa ad ALSA.

Bene! Se abbiamo fatto tutto correttamente, ora siamo pronti per avviare MPD ed ascoltare un po' di musica!
Proviamoci in un terminale con
mpd
e non preoccupiamoci dell'errore Failed to load database: Failed to open database file "/home/milo/.mpd/tag_cache": No such file or directory: riguarda il file che contiene l'elenco dei nostri album musicali ed MPD lo crea proprio al primo avvio; dalla volta successiva l'errore non comparirà più (non provate a killare mpd ed a rilanciarlo immediatamente, per testare la verità delle mie parole: soprattutto se avete molti album, la creazione del database di MPD potrebbe richiedere alcuni minuti, quindi meglio lasciarlo lavorare in santa pace).

Se qualcosa non vi dovesse tornare, ad ogni modo, vi lascio un link al mio file di configurazione che potrete consultare a mo' di esempio: mpd.conf

Ora che MPD è in esecuzione, possiamo verificare che tutto funzioni. Digitando nel terminale:
mpc play 
dovreste sentire una delle vostre canzoni! Per fermare la riproduzione
mpc stop
Congratulazioni! Avete appena installato e configurato Music Player Daemon sul vostro pc!

Ci troviamo ora di fronte ad una scelta, riguardante l'autoavvio del demone: MPD è impostato per partire automaticamente a livello root all'avvio del sistema.
Oltre a non amare molto questa scelta, diverse fonti in rete riportano che questo meccanismo può creare problemi ad MPD, bloccandone l'esecuzione con l'errore "problem opening log file "/root/.mpd/mpd.log" (config line 11) for writing",or "unable to bind port 6600: Address already in use" oppure impedendo la corretta rilevazione della cartella con la propria musica.
Per questi motivi, il mio consiglio è quello di disabilitare l'autoavvio a livello di sistema, aprendo il file /etc/default/mpd e modificando la stringa
START_MPD=true
in modo che diventi
START_MPD=false
Per fare le cose per bene, consiglio anche di togliere MPD dall'elenco dei servizi di sistema, tramite sysv-rc-conf, BUM od il gestore dei servizi del vostro Desktop Environment, ma attenzione: usate questi strumenti ed effettuate quest'ultimo passaggio solamente se siete pienamente consapevoli di quel che state facendo, altrimenti potreste danneggiare il vostro sistema.

Ora, la scelta sta alle vostre preferenze. MPD non partirà più in automatico e se lo vorrete usare lo dovrete lanciare manualmente, nel modo a voi più congeniale; altrimenti, potreste volerlo automaticamente attivo all'avvio (ma questa volta, a livello utente), nel qual caso lo dovrete aggiungere ai processi in autoavvio nel modo richiesto dal vostro DE/WM (ad esempio, aggiungendo " mpd & " al vostro file autostart se siete su Openbox): non avendo riscontrato rallentamenti all'avvio o significativi incrementi della memoria occupata, io ho scelto questa seconda strada, per avere MPD sempre pronto a gettarmi addosso del sano Heavy Metal.
Con quest'ultima scelta, abbiamo concluso anche la fase della configurazione!

Problemi Noti

  • Failed to bind to '127.0.0.1:6600': Address already in use: si tratta del classico errore che si riceve quando MPD è già in esecuzione, quindi non preoccupatevi. Se ne avete la necessità, uccidete MPD e riavviatelo, noterete che l'errore non si ripresenterà.
  • problem opening log file "/root/.mpd/mpd.log" (config line 11) for writing",or "unable to bind port 6600: Address already in use: di questo errore ne abbiamo già parlato poc'anzi e potrebbe verificarsi quando mpd viene lanciato da root; per risolvere, fate riferimento a quando scritto poco sopra.
  • MPD non funziona quando non si è connessi ad una rete: se state usando una versione un po' datata di MPD (la versione dei repos di Debian Squeeze ad esempio) potreste ritrovarvi nella curiosa condizione nella quale MPD funziona perfettamente quando siete connessi ad una rete, ma vi restituisce errore se provate a lanciarlo quando siete scollegati.
    Per risolvere questo problema, che mi ha fatto sudare un po' per identificarne la causa, dovrete disabilitare il protocollo ipv6, oppure, come suggerito nel Wiki di Arch Linux, dovrete aggiungere nel file /etc/hosts la seguente stringa:
    ::1 localhost.localdomain localhost

Clients

Dicevamo all'inizio: uno dei punti di forza di MPD è l'estrema versatilità con la quale può essere controllato. Passo dunque ad una veloce rassegna dei client che ritengo migliori, precisando che si tratta di una minuscola selezione personale e che il lettore potrà sbizzarrirsi nella ricerca di altre e forse migliori applicazioni.

Console Clients

Questa sezione è particolarmente indicata per tutti gli amanti della riga di comando e per coloro che cercano una valida alternativa a MOC (music on console).
  • mpc: (http://mpd.wikia.com/wiki/Client:Mpc) se avete seguito le indicazioni precedenti, dovreste aver già installato questo potente client a riga di comando. Con un semplice "man mpc" nel terminale potrete capire da soli le enormi potenzialità dell'applicazione. A noi tornerà di nuovo utile in fase di definizione delle scorciatoie da tastiera.

  • ncmpc: (href="http://mpd.wikia.com/wiki/Client:Ncmpc) si tratta di un eccellente client con interfaccia ncurses che non ha nulla da invidiare ai clients grafici, grazie anche ad alcuni plugins ed a tutta una serie di funzionalità extra: addirittura, se lo vorremo, potremo leggere le lyrics della canzone in esecuzione nel nostro terminale!


  • ncmpcpp: (http://mpd.wikia.com/wiki/Client:Ncmpcpp) questo client è un fork del precedente ncmpc, riscritto in C++, e fornisce le stesse funzionalità dell'originale, oltre ad una estensibilità e personalizzazione maggiore ed alcune caratteristiche che il primo non ha. La scelta tra i due rientra davvero nell'ambito delle scelte personali, ma non c'è dubbio che tra i due Ncmpcpp sia senz'altro il più completo.


Clients GTK

Passiamo ai clients basati sulle librerie GTK, ideali per ambienti Gnome, XFCE ed LXDE, ma pienamente utilizzabili anche su KDE.
  • GMPC: (http://gmpclient.org/) parto dal mio preferito! L'acronimo sta per Gnome Music Player Client, ma non lasciatevi trarre in inganno: da diversi anni infatti sono state abbandonate le dipendenze gnomesche ed il client è del tutto Desktop indipendente. Costantemente aggiornato ed in veloce sviluppo, questo client GTK assicura una quantità eccezionale di features, scaricamento testi, integrazione con LastFM, ricerca artisti simili, tre livelli di interfaccia (dalla più corposa alla più netbook-friendly), numerosi plugins. GMPC riesce inoltre ad unire questa ricchezza di funzioni con un'assoluta leggerezza.
    Solo un appunto, per gli utilizzatori di Debian Squeeze: la versione nei suoi repos è un po' datata e nettamente inferiore alla più aggiornata presente nei repos di Wheezy; avendo personalmente trovato ostica la realizzazione di un backport, forse potreste voler analizzare altri clients ed altre soluzioni.


  • Sonata: (http://sonata.berlios.de/) client molto diverso dal precedente, orientato al minimalismo assoluto, sia a livello di interfaccia, sia a livello di funzioni offerte, ma state ben attenti a non confondere essenzialità con lacunosità: c'è tutto quel che serve (anche una vista contestuale con i testi delle canzoni), semplicemente Sonata preferisce mettere al centro dell'attenzione quel che conta di più, cioè la musica. Menzione particolare per la scheda dedicata agli streams (eh sì, con MPD si possono agevolmente ascoltare anche le radio in streaming)
    Queste sue caratteristiche minimali lo rendono adatto ai netbook ed a coloro che usano solo un Window Manager, tuttavia tra i "contro" annoveriamo l'essere scritto in python (il che non lo rende una piuma per il sistema) ed il non venire più attivamente sviluppato dal 2009 (nonostante l'applicazione continui ad essere perfettamente funzionante).

    Sonata con interfaccia compressa

    Sonata con interfaccia estesa

  • Ario: (http://ario-player.sourceforge.net/) questo è un client che potrebbe rappresentare la soluzione ideale per gli utenti abituati al player audio di Gnome, Rhythmbox: la sua interfaccia, infatti, si prefigge lo scopo di assomigliare a quest'ultimo il più possibile, per offrire agli utenti Gnome una facile transizione a MPD. Rispetto ai precedenti due clients analizzati, Ario si può definire inoltre come una valida via di mezzo a livello di features, mentre, al di là delle apparenze, è in assoluto il client gtk con le minori richieste in termini di RAM che io abbia provato. Aggiungiamo una ristretta, ma buona, selezione di plugins ed un'ottima gestione delle Web Radio.


  • Xfmpc: (http://sonata.berlios.de/) con il client affiliato al desktop environment XFCE (ma pienamente utilizzabile anche all'infuori del DE del sorcio) andiamo proprio su un'altra categoria. Se Sonata è stato definito minimale, Xfmpc lo possiamo chiamare minimalissimo: niente artwork, niente testi, gestione delle playlist scarnissima, funzionalità ridotte all'osso. Se siete alla ricerca di uno strumento completo, lasciate perdere xfmpc: tuttavia, se non vi interessa nulla di funzioni extra e fronzoli vari, potreste trovare in questo client un compagno musicale super leggero e velocissimo. Io lo apprezzo proprio per queste caratteristiche e lo affianco nelle mie macchine ad altri client più completi, come strumento d'assalto per operazioni al volo.


Clients QT

Purtroppo in questo campo non posso portare un'esperienza diretta, ma dall'idea che mi sono fatto, documentandomi, il campo dei client QT è proprio quello dove MPD mostra il fianco, causa l'assenza di un client all'altezza di quelli GTK. Se la mia impressione è sbagliata, sentitevi liberi di smentirmi nei commenti e sarò felice di rettificare quanto sopra ed aggiornare la guida.
Detto questo, il migliore client QT pare essere QMPDClient (http://bitcheese.net/wiki/QMPDClient), ma per le ragioni anzidette, se siete utenti KDE, vi invito a proseguire nella lettura, in quanto potreste trovare uno strumento che fa al caso vostro.

Strumenti ed utilità

Oggetto di quest'ultima sezione saranno tutta una serie utilità varie che ci renderanno l'utilizzo di MPD molto più piacevole.
Ricordo tuttavia, ancora una volta, che quelli che seguono rappresentano solo una minima porzione del vastissimo elenco di estensioni che possiamo fornire al nostro Music Player Daemon.

Definizione delle scorciatoie da tastiera

Come anticipavo scrivendo di mpc, ricorreremo proprio a questo client per assegnare le nostre combinazioni da tastiera ai controlli di MPD. Ovviamente, ogni lettore saprà già come impostare delle scorciatoie personalizzate nel suo Desktop Environment, quindi mi limito a suggerirvi i comandi più comuni ai quali potreste voler assegnare una shortcut:
  • Avviare/alternare lo stato di riproduzione/pausa: mpc toggle
  • Fermare la riproduzione: mpc stop
  • Canzone precedente: mpc prev
  • Canzone successiva: mpc next
Sintassi molto intuitiva, come potete notare. Per ulteriori comandi, vi rinnovo l'invito a consultare il manuale di mpc.
Per tutti gli utilizzatori del Window Manager Openbox, inoltre, riporto un link ad un esempio di sezione di codice da inserire nel proprio file rc.xml per assegnare queste scorciatoie: rc.xml

Conky

Il nostro amato Conky non ci delude nemmeno questa volta e supporta l'integrazione con MPD nativamente. Potete trovare tutte le variabili qui: variabili conky.
Ecco un esempio di codice da inserire nel file di configurazione di conky per monitorare lo status di MPD:
${if_mpd_playing} 
N O W    P L A Y I N G
${hr}
Artist$alignr$mpd_artist
Album$alignr$mpd_album
Title$alignr${mpd_title 45}
$mpd_status$alignr$mpd_elapsed/$mpd_length
$alignc${mpd_bar 5,180}
Status$alignr Random: $mpd_random - Repeat: $mpd_repeat
$endif


xfce4-mpc-plugin

Questo è uno strumento che farà felici gli utenti XFCE, nonchè coloro i quali utilizzano xfce4-panel altrove.
Stiamo infatti parlando di un plugin per il pannello di XFCE, il quale ci metterà a disposizione 4 comodi tasti per il controllo di MPD, la consulatazione veloce della scaletta attuale e un collegamento veloce al nostro client preferito (potrebbe essere una buona idea quella di usarlo in accoppiata al già citato xfmpc).

Il sito ufficiale del progetto è questo e possiamo trovare il plugin nei repos di tutte le maggiori distribuzioni.


Scorciatoie personalizzate per pannello

Il plugin sopra descritto è davvero molto comodo, ma taglia fuori tutti coloro che non usano xfce4-panel. Tuttavia, possiamo cercare di replicarne il funzionamento, aggiungendo dei lanciatori, associati ad altrettanti comandi per MPD, al nostro pannello preferito.
Per vostra comodità vi lascio un link ai lanciatori che mi sono creato per il mio eeepc: MPD Helpers.
Scompattate il contenuto del pacchetto in ~/.local/applications/ e poi aggiungeteli al pannello.
Ecco un'anteprima del risultato con il pannelloTint2:


Pipe Menu

Questa è una chicca dedicata agli utenti openbox. È possibile infatti controllare MPD tramite un pipemenu; in rete se ne trovano diversi, ma sono riuscito a trovarne solamente uno veramente funzionante.
Dando per scontato che voi utenti OB già sappiate come si utilizza un pipemenu, lo potete reperire in questo modo:
wget http://zhar.net/projects/openbox/ob-mpd.py
Per il corretto funzionamento di questo pipemenu è necessaria l'installazione py-libmpdclient2, reperibile all'indirizzo http://incise.org/py-libmpdclient2.html ed installabile in Debian con:
# aptitude install python-mpdclient
Per godere appieno delle funzionalità offerte dal pipemenu, inoltre, è consigliabile installare uno tra ncmpc e ncmpcpp.


mpdcron

Se avete iniziato ad usare MPD, avrete sicuramente notato che a meno che non ci sia in esecuzione un client che implementa questa funzione, non ci saranno notifiche al cambio di canzone.
Se siete amanti di questo genere di cose, potrete ottenere le notifiche con mpdcron (http://alip.github.com/mpdcron/). Per prima cosa, installiamolo nei soliti modi, ad esempio in Debian, con:
# aptitude install mpdcron
ora procediamo alla configurazione. Creiamoci la sua cartella:
mkdir ~/.mpdcron
copiamo il file di configurazione nella nostra home:
cp /usr/share/doc/mpdcron/conf/mpdcron.conf ~/.mpdcron/mpdcron.conf
ed iniziamo a modificarlo secondo i nostri voleri:
nano ~/.mpdcron/mpdcron.conf
Per avere la notifica, sarà importante aggiungere, subito dopo killwait = 3 il modulo appropriato:
modules = notification;
ed in fondo al file la configurazione dello stesso:
[notification]
# Covers path, defaults to ~/.covers
#cover_path = ~/.covers
# Cover suffix, defaults to jpg
#cover_suffix =
# Notification timeout in milliseconds.
timeout = 50000
# Notification type
type = mpd
# Notification urgency, one of low, normal, critical
urgency = normal
# Notification hints in format TYPE:NAME:VALUE, specifies basic extra data
# to pass. Valid types are int, double, string and byte
#hints =
Come potete vedere, mpdcron dovrebbe supportare anche le copertine degli album. Tuttavia, nonostante ricerche in lungo in largo (le quali hanno anche ritardato la pubblicazione dell'articolo) non sono mai riuscito ad ottenere le covers.
In teoria, mpdcron cerca le copertine nella cartella specificata (di default ~/covers/) nel formato Artista - Album, tuttavia non riesco a farlo funzionare. Se qualche riconoscente lettore, nelle sue prove, dovesse riuscirci, gli sarei enormemente grato se mi istruisse nei commenti. A tal proposito, se per le vostre prove volete lanciare mpdcron in modalità debug, anzichè come demone, è necessaria l'opzione -n, così:
mpdcron -n
Ad ogni modo, copertine o meno, una volta lanciato con il comando
mpdcron
avremo una notifica ad ogni cambio di canzone, ottendo un effetto simile a questo:


Superfluo aggiungere che se vorremo sempre ricevere le notifiche automaticamente, basterà aggiungere il processo mpdcron in autoavvio.

Possibili problemi: se MPDCron non dovesse funzionare correttamente, restituendovi in modalità debug questo errore:
Failed to execute hook player: Failed to execute child \
process "hooks/player" (No such file or directory)
eseguite questi passaggi:
cp -r /usr/share/doc/mpdcron/conf/hooks ~/.mpdcron/
chmod +x ~/.mpdcron/hooks/*
cp -r /usr/share/doc/mpdcron/conf/modules ~/.mpdcron/
chmod +x ~/.mpdcron/hooks/*
Oltre alle notifiche, mpdcron è in grado di inviare le vostre informazioni a Last.fm, Libre.fm e di aggiornare un database. Per maggiori informazioni, vi rimando qui: http://alip.github.com/mpdcron/modules/

Mpdscribble

Questo strumento rappresenza a mio avviso il miglior modo per interfacciarsi con Last.FM e Libre.FM, in quanto con il modulo appropriato di mpdcron ho riscontrato qualche problema di connessione. Se fate uso di questi servizi, dunque, procediamo.
Installiamolo, prendendo sempre ad esempio Debian:
# aptitude install mpdscribble
creiamoci ora la sua cartella
mkdir ~/.mpdscribble
ed il file di configurazione:
nano ~/.mpdscribble/mpdscribble.conf
incollandoci le seguenti righe:
[mpdscribble]
verbose = 2
sleep = 1
log = /home/vostronomeutente/.mpdscribble/mpdscribble.log

[last.fm]
url = http://post.audioscrobbler.com/
username = my_username
password = my_password
journal = /home/vostronomeutente/.mpdscribble/lastfm.journal

#[libre.fm]
#url = http://turtle.libre.fm/
#username = my_username
#password = my_password
#journal = /home/vostronomeutente/.mpdscribble/librefm.journal

#[jamendo]
#url = http://postaudioscrobbler.jamendo.com/
#username = my_username
#password = my_password
#journal = /home/vostronomeutente/.mpdscribble/jamendo.journal
## mpdscribble - an audioscrobbler for the Music Player Daemon.
## http://mpd.wikia.com/wiki/Client:mpdscribble
A questo punto, commentiamo/decommentiamo i servizi che usiamo o meno, inseriamo i dati dei nostri account e modifichiamo i percorsi del file di log e dei journal in modo da salvarli nella nostra home.
Il file che vi ho proposto è ridotto all'essenziale, per configurazioni più specifiche fate riferimento al file /etc/mpdscribble.conf
Bene, ora non ci resta altro che lanciare mpdscribble con il comando, manco a dirlo, mpdscribble.
Anche in questo caso, ovviamente, se vorremo automatizzare le cose ci basterà inserire il processo in autoavvio.

Plasma Widgets

MPD non viene trascurato nemmeno dall'ambiente desktop KDE ed esiste una selezione di plasmodi ad esso dedicati: non avendoli provati in prima persona, lascio a voi il piacere di scoprirli, lasciandovi i link ai principali:


Direi che è tutto, siamo finalmente giunti al termine di questa lunga esperienza.
Ripeto ancora una volta che questi sono soltanto degli spunti e che l'estensibilità di MPD trova difficilmente dei limiti. Vi lascio dunque con l'invito a cercare altre e nuove possibilità spulciando i vostri repos o il wiki ufficiale!

44 commenti:

  1. Non ho parole... :o

    Complimenti, davvero un grande lavoro!!!

    RispondiElimina
  2. Complimenti! Appena ho due secondi approfondisco il discorso con KDE... ;)

    RispondiElimina
  3. ho fatto tutto, solo ho un piccolo problema, cioè non mi trova i file musicali. Questo perchè nella mia cartella musica sono presenti 2450 brani e l'organizzazione in sottocartelle di autori è stata necessaria. Come ovviare a questo problema? Devo elencare manualmente tutte le cartelle contenute nella mia cartella musica nel file mpdconf?

    RispondiElimina
  4. @Herr Affe Grazie Herr troppo buono! Se è un gran lavoro non lo so...di certo è un "lavoro grande", ma non troppo: l'universo che sta attorno a MDP è vastissimo.

    @AlfiereNero Grazie anche a te! Ottimo per KDE, aspetto le tue impressioni allora...eventualmente anche per arricchire le sezioni dedicate ai clients QT ed ai plasmoidi.

    @Alessandro il problema non è sicuramente dovuto nè al numero dei brani (io ne ho oltre 4500) nè all'organizzazione (ovviamente anche io ho organizzato in sottocartelle). In mpdconf va specificato solamente il percorso della cartella principale.
    Se sei sicuro di aver scritto correttamente questo percorso nel file, potresti essere un po' più preciso nel descrivere il problema? Lanciando mpd nel terminale ricevi qualche errore? Stai usando qualche client in particolare?
    Ogni informazione supplementare potrebbe essere utile.

    RispondiElimina
  5. Aggiornamento: migliorato il paragrafo dedicato al pipemenu per Openbox.

    RispondiElimina
  6. @Milozzy
    In che senso client in particolare? client di mpd o altri player? comunque mi da questo il terminale

    ale@hpcompaq:~$ mpd
    log: problem opening log file "/home/Ale/.mpd/mpd.log" (config line 37) for writing
    ale@hpcompaq:~$ mpc play
    error: Connection refused

    ho seguito alla lettera le istruzioni e ho mandato tutto nella cartella mpd della mia home

    RispondiElimina
  7. @Milozzy
    ok ho risolto il problema di cui sopra, avevo dato male il percorso della cartella .mpd XD solo che ora non esce alcun suono, mi dice che è in riproduzione ma non si sente nulla. Ho lasciato invariata la configurazione con l'uscita alsa di default (pulseaudio l'ho rimosso per grossi scazzi)... provo a commentare alsa e decommentare oss?

    RispondiElimina
  8. @Alessandro
    Felice che tu abbia risolto, con i percorsi è fondamentale prestare sempre massima attenzione.

    Con client intendevo uno dei tanti client per MPD, ovviamente.

    Per questo nuovo problema: possibile che ti si sia azzera il volume di MPD?
    Prova nel terminale:

    mpc volume 100

    così lo imposti al massimo e vediamo se il problema è questo.

    Se non cambia nulla, controlliamo gli output con:

    mpc outputs

    A me esce questo:
    ~$ mpc outputs
    Output 1 (My ALSA Device) is disabled
    Output 2 (My Pulse Output) is enabled

    Controlla qual'è la tua situazione ed eventualmente abilita un output con

    mpc enable "numero output"

    Sarà necessario poi un nuovo mpc play.

    Riguardo la tua domanda su OSS...non saprei. Come mai proprio OSS? Se sai di star usandolo sul tuo sistema, è probabile che ne sia necessaria l'abilitazione, altrimenti lo escluderei.

    RispondiElimina
  9. Mpc funziona perchè le radio si sentono solo che non mi trova i miei files musicali. Ho provato anche a creareuna cartella "~/Musica/Album/" per usare la tua config. ma niente da fare. Grazie

    RispondiElimina
  10. @rikkha

    Beh la cartella ~/Musica/Album è solo un esempio, è necessario invece specificare correttamente la cartella contenente la propria musica. Sei sicuro di aver specificato il percorso esatto?

    Come puoi leggere sopra, anche nel caso di Alessandro il problema era quello, è un attimo sbagliarsi.

    Anche nel tuo caso, ti chiedo se ricevi qualche errore particolare nel terminale

    RispondiElimina
  11. mi da sta roba qua

    ale@hpcompaq:~$ mpd
    ale@hpcompaq:~$ mpc play
    Pearl Jam - Given to Fly
    [paused] #2/2 0:00/4:01 (0%)
    volume:100% repeat: off random: off single: off consume: off
    ERROR: problems opening audio device
    ale@hpcompaq:~$ mpc volume 100
    Pearl Jam - Given to Fly
    [paused] #2/2 0:00/4:01 (0%)
    volume:100% repeat: off random: off single: off consume: off
    ERROR: problems opening audio device
    ale@hpcompaq:~$ mpc outputs
    Output 1 (My ALSA Device) is enabled
    ale@hpcompaq:~$

    RispondiElimina
  12. Eh sì è sicuramente un problema legato all'output audio.
    Potresti provare a commentare i vari componenti "optional" nella parte dedicata ad alsa nel file di configurazione

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

    i vari device, format ecc.
    Se ancora non funziona, prova a commentare proprio tutto, lasciando che mpd provi a trovare l'output in automatico.

    Inoltre, potrebbe essere utile controllare il file di log contenuto in ~/.mpd per vedere se riusciamo ad avere qualche indicazione più specifica.

    Per finire, controlla l'output di

    groups mpd

    e dicci quale distro stai usando.

    RispondiElimina
  13. @Alessandro

    dimenticavo: quando modifichi il file di configurazione uccidi e riavvia mpd avvinche usi le nuove impostazioni

    RispondiElimina
  14. 1.Domanda: stavo cercando in rete come caricare degli equalizer presets (altrimenti non c'è gusto ad ascoltare l'Heavy Metal con l'eq piatto...), ma senza successo. Sai niente a riguardo?


    2.Sto utilizzando questo comodo comando da shell abbinato a una scorciatoia per ascoltare la mia radio preferita:

    mpc clear && mpc add http://streaming.controradio.emmi.it:8190/ && mpc play

    In realtà sono tre comandi in sequenza, nell'oridne: pulisce la playist && aggiunge il brano (lo streaming in questo caso) alla playist && riproduce la playlist.
    Non so se era possibile fare tutto con un comando solo, ma così funziona!
    Una comando simile è possibile usarlo anche con Moc.

    RispondiElimina
  15. @Herr Affe

    1. mi credi se ti dico che non sono mai stato in grado di utilizzare equalizzatori?
    C'è comunque una pagina sul wiki che ne parla http://mpd.wikia.com/wiki/Music_Player_Daemon_Is_There_An_Equalizer ma non sembra ci sia granchè.

    2. Non sarebbe più comodo crearsi una playlist con l'elenco delle radio preferite e selezionarle di volta in volta tramite un client, anche leggero leggero come ncmpc?
    Certo anche la tua soluzione, magari con un alias, non è male.

    RispondiElimina
  16. @Milozzy
    1. L'avevo già visto, ricorre a una applicazione esterna, mentre speravo esistesse una cosa semplice semplice come con Moc dove è sufficiente salvare i presets nella sua cartella e poi richiamarli dalla "GUI" o da riga di comando.

    2.certo, ma io parlavo di QUELLA preferita! Basta un "W-r" e parte istantaneamente. Altrimenti faccio come dici tu se voglio avere più scelta.
    Lo sto usando pure come alias.

    RispondiElimina
  17. @Milozzy
    ho commentato gli optional e ora il suono si sente!!
    resta solo da capire come fargli riprodurre tutta la cartella musica divisa in sottocartelle

    RispondiElimina
  18. @Alessandro

    Bene! Bastava una ricerchina ;)

    Riguardo l'altro problema...non avevi commentato sopra di aver scritto male il percorso nel file di configurazione?
    Ripeto, MPD non dovrebbe aver nessun problema con le sottocartelle.

    Controlla i log.

    RispondiElimina
  19. @Milozzy
    Quando lancio ario da terminale mi scrive questo:
    ** (ario:2486): WARNING **: org.gnome.SettingsDaemon dbus service not found: The name org.gnome.SettingsDaemon was not provided by any .service files

    RispondiElimina
  20. @rikkha

    mmm sì quell'errore non c'entra, presumo tu abbia attivato il plugin tasti multimediali, ma tu non stia usando Gnome.
    Comunque questo non c'entra con il rilevamento della musica.

    Credo anche di capire che quindi il problema che lamenti tu non è che "mpd" non ti rileva la musica...ma bensì che "ario non ti rileva la musica".
    Stai bene attento, sono due cose diverse.

    Alcuni client richiedono una configurazione aggiuntiva (spesso molto semplice) per funzionare...la guida ovviamente non può coprire la configurazione di ogni client, altrimenti diventerebbe un'enciclopedia :)

    Tornando a noi: oltre a star bene attenti a configurare correttamente il percorso della cartella che contiene la nostra musica nel file ~/.mpdconf, Ario in particolare richiede che tale cartella venga specificata anche nelle sue preferenze.
    Ti lascio uno screenshot che ti mostra come ho configurato il mio Ario: http://ompldr.org/vYzc3cA

    Va da sè che dove io ho impostato /home/milo/Muscia/Album/ tu dovrai impostare lo stesso percorso che hai messo in ~/.mpdconf

    A scanso di equivoci ti chiedo: MPD è in esecuzione vero?
    Non vorrei mai che tu avessi frainteso il funzionmento e lanciato Ario senza aver prima eseguito MPD.

    RispondiElimina
  21. @Milozzy
    Sei un grande!!! Non avevo specificato il percorso della cartella nelle preferenze di Ario. Grazie mille :) continua così

    RispondiElimina
  22. @rikkha

    Figurati!!! :)
    Lieto di esserti stato utile!
    Anzi, grazie ate: mi hai permesso di ricordare che è sempre buona regola dare un'occhiata alle preferenze dei singoli clients, anche se MPD è già configurato a puntino!

    Ciao!

    RispondiElimina
  23. @Milozzy
    ho risolto creando una playlist manuale con tutta la mia libreria musicale :) ora, è normale che in riproduzione mpd usi il 25% in media di cpu? (che nel mio caso è più di amarok) uso un vecchio hpcompaq nc6000 con un pentium m @1600 mhz e 2gb ram

    RispondiElimina
  24. @Alessandro

    No, direi che non è normale :)

    Ma hai provato ad usare qualche client per gestire comodamente la musica, oltre al puro mpc?

    RispondiElimina
  25. Risposte
    1. Quindi, fammi capire bene, tu nella scheda 5 di ncmpcpp non vedi nulla?

      Ma che stranezza...pare quasi che che il tuo mpd non legga il config...Hai controllato i log come ti avevo invitato a fare precedentemente?

      Elimina
    2. Il fatto è che nella scheda 5 di ncmpcpp non si vedono i brani ma solo le sottocartelle della cartella musica! Mentre io mi sarei aspettato che una volta dato il percorso della cartella musica mi saltassero fuori tutti i file musicali come in rhythmbox o amarok o banshee per capirci. Comunque per ora ho risolto creando una playlist manuale, quello che ora mi preoccupa è mpd usa la stessa quantità di cpu di amarok :)

      Elimina
  26. Complimenti per il sito, molto utile!
    Ho un asus 1005ha sul ho installato da poco Ubuntu 10.10
    Volevo chiedervi se, secondo voi, sarebbe meglio installare Fedora o Debian o magari LinuxMint, in termini di prestazioni e leggerezza del sistema.
    Sono nuovo del mondo Linux e conosco solo Ubuntu, ma mi piacerebbe scoprire anche le altre distro!
    P.S. come mai tra le varie guide manca proprio quella per installare Ubuntu??

    Scusate l'off-topic....

    Grazie.

    RispondiElimina
    Risposte
    1. Risposta semplice: nessuno di noi usa Ubuntu e le nostre guide si basano sempre e solo su esperienza diretta! ;-D

      Circa l'altra questione, scansiamo subito un equivoco: tutte le distro linux sono le medesime (con le opportune modifiche) ed il loro peso non dipende dalla "marca", ma dalla loro configurazione.
      Ubuntu, come tutte le distro preconfigurate, può risultare più o meno pesante di altre, ma niente e nessuno ti impedisce di alleggerirtela a tuo piacimento.

      Il consiglio è sempre il solito: fatti una giratina per le nostre guide, fatti un'idea e scegli quella che ti piace di più!

      Elimina
    2. Grazie dei complimenti ;)

      A quanto egregiamente spiegato da Dcoc aggiungo solo, per il futuro, che il nostro "non-consiglio" lo abbiamo già dato nella pagina del chi siamo.

      Ciao!

      Elimina
  27. Ciao, io utilizzo Xubuntu ... ho fatto tutto quello che hai detto "passo passo" ... ma quando lancio MPD non mi rilascia nessun errore. Il demone parte. QUando invece scrivo il comando mpc play, a video leggo:
    nomeutente@Idra:~/.mpdconf$ mpc play
    volume:100% repeat: off random: off single: off consume: off

    Ma non sento nulla.
    la mia musica è in /home/nomeutente/Music (organizzata in cartelle) nel file di configurazione (che ho messo nella cartella home/nomeutente/.mpdconf) ho scritto come directory home/nomeutente/Music

    con il comando:
    nomeutente@Idra:/$ mpc outputs
    Output 1 (My ALSA Device) is enabled

    quale potrebbe essere il problema ?

    RispondiElimina
  28. Ciao!

    Vediamo se ne veniamo a capo:

    - per prima cosa, percorriamo la strada più semplice: dal tuo output sembrerebbe che mpc non trovi nulla da riprodurre.
    Il mio output in questo momento, ad esempio, è:
    ~$ mpc play
    A Perfect Circle - Imagine
    [playing] #1/4591 2:27/4:48 (51%)
    volume:100% repeat: off random: off single: off consume: on

    Come vedi c'è il nome della canzone in riproduzione. Temo che tu non senta nulla perchè non sta riproducendo nulla.

    Prova a dare

    mpc listall

    dovrebbe elencarti tutta la musica presente nel database: se lo fa, bene. Se non lo fa, abbiamo un problema nella configurazione della cartella con la musica.

    Poi prova anche

    mpc playlist

    che ti mostra tutti i brani presenti nella playlist attuale. Da me, anche se la playlist è vuota, mpc play fa partire i brani della libreria dall'inizio...ma a questo punto non escludo che ci possano essere differenze tra le versioni di mpc, anche se lo considero improbabile.

    Intanto vediamo così...altrimenti proviamo a percorre altre strade, ma ho il sentore che il problema stia proprio in un problema di configurazione della cartella con la musica.

    RispondiElimina
  29. Rieccomi, scusa il ritardo ... ma purtroppo riesco a dedicarmi al mio xubuntu solo ora ... cmq, se lancio il comando: mpc listall, vedo questo:

    nomeutente@Idra:~$ mpc listall
    Frank Zappa - 01 - Freak out!/Frank Zappa - 01 - Hungry freaks, daddy.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 02 - I ain't got no heart.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 04 - Go cry on somebody else's shoulder.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 03 - Who are the brain police.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 05 - Motherly love.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 06 - How could I be such a fool.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 07 - Wowie zowie.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 08 - You didn't try to call me.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 09 - Any way the wind blows.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 10 - I'm not satisfied.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 11 - Your'e probably wondering why I'm here.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 12 - Trouble every day.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 13 - Help I'm a rock.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 14 - It can't happen here.mp3
    Frank Zappa - 01 - Freak out!/Frank Zappa - 15 - The return of the son of monster magnet.mp3

    quindi gli mp3 ci sono ...

    RispondiElimina
  30. Ed invece mpc playlist non ti elenca nulla vero?
    Se è così significa proprio che prima devi riempire la playlist.

    Con

    mpc ls | mpc add

    aggiungi tutte le canzoni della libreria musicale alla playlist.

    Provaci (se ti da un errore di cartella non trovata ignoralo, lo dice anche a me ma le aggiunge lo stesso) e poi riprova con mpc play!

    Per gestire comodamente tutte queste operazioni, comunque, ti consiglio di ricorre ad un client, GTK o da console a tua preferenza.

    RispondiElimina
  31. Perfetto !
    Ho dato il comando che mi hai suggerito: mpc ls | mpc add (che se non ho capito male è andato a scrivere la playlist giust?) e ora si sente!
    Quando mi parli di Client gtk o console ... a cosa ti riferisci di preciso ? potresti farmi qualche esempio?

    GRAZIE 1000!

    RispondiElimina
    Risposte
    1. Si tratta di semplici programmini che ti semplificano l'utilizzo di MPD. Possono girare su terminale (console) oppure disporre di una interfaccia grafica.
      Nel seguito della guida sono descritti alcuni di questi programmi.

      Elimina
    2. Sì quel comando serve per aggiungere TUTTA la musica presente nella cartella impostata in mpdconf nella playlist attuale.
      Anche a te quando lo dai ti restituisce un errore di questo genere?

      ~$ mpc ls | mpc add
      error: directory or file not found

      Non ho ancora capito come mai questo uotput, visto che poi l'aggiunta va a buon fine.

      Sui Client ti ha già detto tutto Doc, prosegui nella lettura della guida e ne troverai diversi esempi, ti posso dire che i miei preferiti sono ncmpcpp e gmpc ;)

      Elimina
  32. Eccomi di nuovo.
    Allora quando d'ho il comando mpc ls | mpc add non mi viene rilasciato nessun errore.

    Per quanto riguarda i client ho iniziato ad usare (ieri sera)NCMPC e devo dire che fa il suo dovere!

    RispondiElimina
    Risposte
    1. Grazie mille della conferma, cercherò di capire il perchè del mio errore allora!

      Ciao e buon MPD ;)

      Elimina
  33. Complimenti per le preziose spiegazioni, ti volevo chiedere una cosa, ho provato MPD su una VPS (quindi un server virtuale senza scheda audio), l'installazione è andata a buon fine, poi con dei client mi sono collegato al server e ho potuto gestire la mia musica senza problemi. Putroppo però sui client (ho provato sia su PC con WIN che su Linux che su Android...) l'audio non si sente, in pratica è muto !
    Mi sono dimenticato qual'cosa ? la mia cofigurazione audio è solo quella via httpd, devo per forza appoggiarmi su un gestore di streaming come Icecat ?
    Grazie.
    Massi

    RispondiElimina
    Risposte
    1. Ciao!
      Grazie mille per i complimenti, ma sei troppo buono...infatti ti devo deludere. L'uso di MPD che descrivi tu è un altro dei suoi punti di forza, ma purtroppo mi trovi del tutto impreparato, non l'ho mai usato in questo modo e non saprei davvero come aiutarti :(

      Elimina
  34. Bellissimo articola, da sempre sono un "fan" di mpd+gmpc
    Volevo chiederti 2 cose.
    A cosa servono
    #auto_update "yes" e #auto_update_depth "3".
    E questo pacchetto invece?
    https://launchpad.net/ubuntu/natty/+package/mpdris

    RispondiElimina
    Risposte
    1. Ciao e grazie per i complimenti!

      Allora, per conoscere lo scopo di qualsiasi variabile puoi dare un

      zcat /usr/share/doc/mpd/examples/mpd.conf.gz

      In questo modo avrai la possibilità di leggere il file di configurazione d'esempio dove ogni variabile è opportunamente commentata.

      Auto_update "yes" imposta MPD affinchè tenga traccia dinamicamente, cioè "al volo", dei cambiamenti nella cartella della musica. A me piace attivare questa funzione.

      Auto_update_depht "3" è collegato alla precedente e serve a limitare ad un tot (nell'esempio 3) di sottocartelle il controllo di MPD. In questo caso, al contrario, io preferisco lasciare la variabile commentata, in modo da non avere limiti.

      Quanto a mpdris, dovrebbe essere un altro metodo per controllare MPD, ma sinceramente non ti so dire di più. Se approfondisci l'argomento, non esitare a farcelo sapere!! ;)

      Elimina
    2. Grazie per la risposta. Per quanto riguarda mpdris su (x)ubuntu uso questo
      https://launchpad.net/mpd-sound-menu però vedo che non è aggiornato da 1 anno e mezzo e non riesco a visualizzare le copertine nel sound menu, comunque funziona. Su gnome shell ci sono delle estensioni, quando mi arriverà il nuovo hard disk installerò gnome e riporterò il funzionamento.

      Elimina

EDIT 30/12/2017: abbiamo deciso di chiudere i commenti ma lasciare le guide intatte.

Nota. Solo i membri di questo blog possono postare un commento.