Mpd configuration

From wikinotes

mpd.conf

# ~/.mpdconf

music_directory "/home/media/music"

db_file         "/home/media/.mpd/db"
log_file        "/home/media/.mpd/log"
pid_file        "/home/media/.mpd/pid"
state_file      "/home/media/.mpd/state"
user            "mpd"

Output Plugins

Configures what happens when the music is played.

PulseAudio

audio_output {
  type "pulse"
  name "pulseaudio"
}

HTTPD Streaming

NOTE:

This only supports one client at a time, and it has issues with switching songs.
The archwiki proposes an alternate setup that may be worth a try: https://wiki.archlinux.org/title/Music_Player_Daemon/Tips_and_tricks#Music_streaming_with_the_satellite_setup

You can stream music over http, and listen to it with a music player like VLC.
See documentation

# copied verbatim from /usr/share/doc/mpd/mpdconf.example

audio_output {
    type               "httpd"
    name               "My HTTP Stream"
    encoder            "vorbis"         # flac, vorbis, lame..
    port               "8000"
    bind_to_address    "0.0.0.0"        # optional, IPv4 or IPv6
#   quality           "5.0"             # do not define if bitrate is defined
    bitrate            "128"            # do not define if quality is defined
    format             "44100:16:1"
    max_clients        "0"            # optional 0=no limit
}

Listen to Stream

# adds 'track' representing stream
mpc add http://foo.com:8000

# alternatively, use vlc
http://foo.com/mpd.ogg