MPD
Pense-bête sur l'installation et la configuration de MPD
sudo apt install mpd
En console, installer le client mpc ou ncmpc, et sur bureau, gmpc.
Éteindre le service et le socket avant tout :
sudo systemctl stop mpd.socket sudo systemctl stop mpd.service
Et même le désactiver ?
sudo systemctl disable mpd.socket sudo systemctl disable mpd.service
Gérer par user :
mkdir ~/.config/mpd cp /etc/mpd.conf ~/.config/mpd/
Modifier les chemins de musique sur ~/.config/mpd/
. Répertoire de musique où on veut, le reste peut être dans ~/.config/mpd/
. Créer les fichiers et dossiers au passage :
cd ~/.config/mpd/
mkdir ~/.config/mpd/playlists
touch mpd.log pid state sticker.sql
Autres modifs du fichier mpd.conf :
- Commenter la ligne
user = “mpd”
: on va lancer en précisant l'user.
Pour relancer mpd comme il faut (avec l'user de base) :
systemctl --user enable mpd systemctl --user start mpd
En serveur
MPD c'est un serveur mais avec des limitations… Donc :
- Le serveur joue le son sur sa machine. Si on branche un haut-parleur, on a donc le son ; les clients mpd servent de télécommande pour cette machine.
- Si on veut du son sur sa machine (avec la musique sur le serveur), deux solutions :
- soit on remet un serveur mpd sur sa machine, qui va aller chercher la musique distant, par exemple avec sshfs (cf https://www.rezine.org/ressources/guides/auto-hebergement/multimedia/mpd/#index5h1 par exemple)
- soit on passe par un flux http. Il y a alors un bon délai entre la commande passé sur le client et la réponse sonore.
Pour le dernier cas, allez à l'adresse renseignée, par exemple http://192.168.1.88:6661 ; même le navigateur web doit réussir à lire le flux, sinon mpv ou vlc savent le faire.
Une commande pour lancer ça dans un coin :
mpv --cache-pause-initial=yes http://192.168.1.88:6661/
Configuration
Config de mon serveur local
music_directory "/home/zatalyz/Musique/" playlist_directory "/home/zatalyz/.config/mpd/playlists" db_file "/home/zatalyz/.config/mpd/tag_cache" log_file "/home/zatalyz/.config/mpd/mpd.log" pid_file "/home/zatalyz/.config/mpd/pid" state_file "/home/zatalyz/.config/mpd/state" sticker_file "/home/zatalyz/.config/mpd/sticker.sql" bind_to_address "localhost" bind_to_address "192.168.1.88" port "6600" auto_update "yes" password "ici_mon_mot_de_passe@read,add,control,admin" input { plugin "curl" } input { enabled "no" plugin "qobuz" } input { enabled "no" plugin "tidal" } decoder { plugin "hybrid_dsd" enabled "no" } audio_output { type "alsa" name "alsa" mixer_type "software" } audio_output { type "httpd" name "http" encoder "opus" port "6661" bitrate "auto" signal "music" format "44100:16:2" } replaygain "auto" filesystem_charset "UTF-8"