User Tools

Site Tools


mpd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mpd [2021/08/11 21:23] – Tidied playlist section with new learnings rjtmpd [2024/03/02 18:06] (current) – [Playlists] link to plaintext rjt
Line 1: Line 1:
 ====== MPD ====== ====== MPD ======
  
-**MPD** (__M__usic __P__layer __D__aemon) is a light-weight server for streaming music.+**MPD** (__M__usic __P__layer __D__aemon) is a light-weight server for streaming music. Because it's a //server// you'll also need a client to tell the server what to do, but this setup means you can run the server on one computer, and use a number of other devices to control it.
  
 ===== Notes on Clients ===== ===== Notes on Clients =====
  
-  * [[ncmpcpp]] - [[Curses]]-based client that seems more full-featured than any of the available GUI ones. Good tag management, which includes being [[Picard]]-friendly. I think you still need a [[music player]] that can handle streams ([[MPlayer]], [[ffmpeg]], [[vlc]], etc.) to actually hear the audio though; unless I'm not understanding something?+  * [[ncmpcpp]] - [[Curses]]-based client that seems more full-featured than any of the available GUI ones. Good tag management, which includes being [[Picard]]-friendly. Because my NAS doen't have any kind of audio hardware I still need a [[music player]] that can handle streams ([[MPlayer]], [[ffmpeg]], [[vlc]], etc.---even a [[web browser|web browser]] works) to actually hear the audio.
   * [[MPDroid]] - It's the only [[Android]] client in [[F-Droid]] that works on [[samsung_sm-t330|my old tablet]] (Android 4.4).   * [[MPDroid]] - It's the only [[Android]] client in [[F-Droid]] that works on [[samsung_sm-t330|my old tablet]] (Android 4.4).
 +  * [[MALP]] - Android client that's pretty similar to [[MPDroid]], but kinda still being worked on. Playlist management features are lacking. I prefer MPDroid.
 +  * [[Ymuse]] - Simple GUI client.
 +
 +==== Haven't Tried ====
 +
 +Just listing some GUI clients I might try at some point.
 +
 +  * Ario [[arch>ario]] [[http://ario-player.sourceforge.net/]] - [[foobar_2000|Foobar]]ish layout
 +  * Cantata [[arch>cantata]] [[github>CDrummond/cantata]] - Finished
 +  * Xfmpc [[arch>xfmpc]] [[https://goodies.xfce.org/projects/applications/xfmpc]]
 +  * Sonata [[aur>sonata]] [[https://www.nongnu.org/sonata/]
 +  * Ymuse [[aur>ymuse]] [[https://yktoo.com/en/software/ymuse/]]
 +  * Ympd [[aur>ympd-git]] [[https://ympd.org/]]
 +  * QMPDClient [[aur>qmpdclient]] [[https://bitcheese.net/QMPDClient/]]
 +  * myMPD [[github>jcorporation/myMPD]] - Light, browser-based client.
 +  * Maximum MPD [[github>rbackhouse/MaximumMPD]] - Semms to have a good UI and features, but doesn't do streaming?
 +  * There are some [[rofi]]-based ones that seem interesting too...
 +    * [[https://aur.archlinux.org/packages?K=rofi+mpd]]
 +    * [[github>carnager/clerk]]
  
 ===== Guide ===== ===== Guide =====
Line 16: Line 35:
  
   * https://www.qnapclub.eu/en/qpkg/510   * https://www.qnapclub.eu/en/qpkg/510
 +
 +NB: Qnapclub is basically dead now, but the MPD package on it's replacement is currently not available due to an error (https://www.myqnap.org/?s=mpd)
  
 The files you need are in ''/opt/MPD/'', to start you'll want to get into the config. file at ''/opt/MPD/etc/mpd.conf'' The files you need are in ''/opt/MPD/'', to start you'll want to get into the config. file at ''/opt/MPD/etc/mpd.conf''
Line 29: Line 50:
   * Check the password stuff.   * Check the password stuff.
   * Curl input plugin's just for Internet stuff so I disabled it.   * Curl input plugin's just for Internet stuff so I disabled it.
-  * ''audio_output'' depends on your usage. My NAS has no soundcard, so I disabled ALSA and enabled HTTPD. If you want to use it to host an Internet accessible stream look at Shout. Yo ucan have multiple, and select which are active with your client.+  * ''audio_output'' depends on your usage. My NAS has no soundcard, so I disabled ALSA and enabled HTTPD. If you want to use it to host an Internet accessible stream look at Shout. You can have multiple, and select which are active with your client.
     * Give your stream a fun name :)     * Give your stream a fun name :)
     * Check the quality settings.     * Check the quality settings.
Line 39: Line 60:
  
 You don't need to forward ports unless you want to access MPD from outside the local network. You don't need to forward ports unless you want to access MPD from outside the local network.
 +
 +Only option I have for output is HTTPD. This has a bit of lag when doing things like skipping songs and starting that is //slightly// annoying, so if you can use something else I recommend doing that.
  
 === My Config === === My Config ===
Line 88: Line 111:
 Got stuck on this for a bit because it's weird. Got stuck on this for a bit because it's weird.
  
-The ''playlist_directory'' you configure is meant for playlists made with MPD. Deceptively, it uses ''.m3u'' files, but they're not standard: They're a plain list of file paths relative to configured ''music_directory'', they work just fine with [[Unicode]], they  don't use the ''#EXTM3U'' header, and if you create them outside of MPD and put them here they won't read the first line.+The ''playlist_directory'' you configure is meant for [[playlists|playlists]] made with MPD. Deceptively, it uses ''.m3u'' files, but they're not standard (m3u is barely a standard...): They're a [[plaintext|plain]] list of file paths relative to configured ''music_directory'', they work just fine with [[Unicode]], they  don't use the ''#EXTM3U'' header, and if you create them outside of MPD and put them here they won't read the first line.
  
-You can, however, load many kinds of playlists from other directories, and they should function as expected. I'm just testing this now though.+You can, however, load many kinds of playlists from other directories, but I've had mixed results with this: [[MPDroid]] doesn't seem to see playlists in ''music_directory'', so I've only had luck using absolute paths; [[ncmpcpp]] shows playlists from ''playlist_directory'' and ''music_directory'' on the browse page, and the ones in ''music_directory'' work fine with relative paths.
  
 If you do want to manually make playlists by hand, or by exporting from your [[music_player]], give them an ''.m3u'' extension, leave the first line blank, make the paths relative to the configured ''music_directory'', and don't add anything else. If you do want to manually make playlists by hand, or by exporting from your [[music_player]], give them an ''.m3u'' extension, leave the first line blank, make the paths relative to the configured ''music_directory'', and don't add anything else.
Line 110: Line 133:
  
 If you load this in MPD, then resave it, it'll sort out that first line silliness. If you load this in MPD, then resave it, it'll sort out that first line silliness.
 +
 +==== Cover Art ====
 +
 +MPD now supports cover art. It'll grab any image in the same directory as the file called ''cover.[png|jpg|tiff|bmp]''.
  
 ===== See Also ===== ===== See Also =====
  
   * [[https://www.musicpd.org/|www.musicpd.org]]   * [[https://www.musicpd.org/|www.musicpd.org]]
-  * [[archw>Music Player Daemon]]+  * [[archw>Music Player Daemon]] on the Arch wiki. 
 +    * [[archw>Music Player Daemon/Tips and tricks]] 
 +  * [[https://wiki.gentoo.org/wiki/MPD|MPD]] on the [[Gentoo]] wiki.
   * [[https://mpd.fandom.com/|Music Player Daemon Wiki]]   * [[https://mpd.fandom.com/|Music Player Daemon Wiki]]
  
 {{tag>audio music guide config self-hosting recommendations software}} {{tag>audio music guide config self-hosting recommendations software}}
mpd.1628680984.txt.gz · Last modified: 2021/08/11 21:23 by rjt