mpd.conf - Music Player Daemon configuration file
is the configuration file for mpd(1). If not specified on the
command line, MPD first searches for it at
then at ~/.mpdconf
and then in /etc/mpd.conf
Lines beginning with a "#" character are comments. All other non-empty
lines specify parameters and their values. These lines contain the parameter
name and parameter value (surrounded by double quotes) separated by whitespace
(either tabs or spaces). For example:
The exception to this rule is the audio_output parameter, which is of the form:
Parameters that take a file or directory as an argument should use absolute
in the source tarball for an example
This manual is not complete, it lists only the most important options. Please
read the MPD user manual for a complete configuration guide: <
- db_file <file>
- This specifies where the db file will be stored.
- log_file <file>
- This specifies where the log file should be located. The
special value "syslog" makes MPD use the local syslog
- sticker_file <file>
- The location of the sticker database. This is a database
which manages dynamic information attached to songs.
- pid_file <file>
- This specifies the file to save mpd's process ID in.
- music_directory <directory>
- This specifies the directory where music is located. If you
do not configure this, you can only play streams.
- playlist_directory <directory>
- This specifies the directory where saved playlists are
stored. If you do not configure this, you cannot save playlists.
- state_file <file>
- This specifies if a state file is used and where it is
located. The state of mpd will be saved to this file when mpd is
terminated by a TERM signal or by the "kill" command. When mpd
is restarted, it will read the state file and restore the state of mpd
(including the playlist).
- restore_paused <yes or no>
- Put MPD into pause mode instead of starting playback after
- user <username>
- This specifies the user that MPD will run as, if set. MPD
should never run as root, and you may use this option to make MPD change
its user id after initialization. Do not use this option if you start MPD
as an unprivileged user.
- bind_to_address <ip address or hostname or
- This specifies which address mpd binds to and listens on.
Multiple bind_to_address parameters may be specified. The default is
"any", which binds to all available addresses.
You can set a port that is different from the global port setting, e.g.
"localhost:6602". IPv6 addresses must be enclosed in square
brackets if you want to configure a port, e.g. "[::1]:6602".
To bind to a Unix domain socket, specify an absolute path or a path starting
with a tilde (~). For a system-wide MPD, we suggest the path "
- port <port>
- This specifies the port that mpd listens on. The default is
- log_level <default, secure, or verbose>
- This specifies how verbose logs are. "default" is
minimal logging, "secure" reports from what address a connection
is opened, and when it is closed, and "verbose" records
excessive amounts of information for debugging purposes. The default is
- follow_outside_symlinks <yes or no>
- Control if MPD will follow symbolic links pointing outside
the music dir. You must recreate the database after changing this option.
The default is "yes".
- follow_inside_symlinks <yes or no>
- Control if MPD will follow symbolic links pointing inside
the music dir, potentially adding duplicates to the database. You must
recreate the database after changing this option. The default is
- zeroconf_enabled <yes or no>
- If yes, and MPD has been compiled with support for Avahi or
Bonjour, service information will be published with Zeroconf. The default
- zeroconf_name <name>
- If Zeroconf is enabled, this is the service name to
publish. This name should be unique to your local network, but name
collisions will be properly dealt with. The default is "Music
- password <password@permissions>
- This specifies a password for access to mpd. The format is
"password@permissions" where permissions is a comma delimited
list composed of "read", "add", "control",
and/or "admin". "read" allows for reading of the
database, displaying the current playlist, and current status of mpd.
"add" allows for adding songs and loading playlists.
"control" allows for all other player and playlist
manipulations. "admin" allows the db to be updated and for the
client to kill mpd. An example value is "somePassword@read,add".
Multiple password parameters may be specified.
- default_permissions <permissions>
- This specifies the permissions of a client that has not
been authenticated using a password. The format of permissions is
specified in the description of the "password" config parameter.
If no passwords are specified, the default is
"read,add,control,admin", otherwise it is "" (no
- See DESCRIPTION and the various AUDIO OUTPUT
PARAMETERS sections for the format of this parameter. Multiple
audio_output sections may be specified. If no audio_output section is
specified, then MPD will scan for a usable audio output.
- replaygain <off or album or track or
- If specified, mpd will adjust the volume of songs played
using ReplayGain tags (see < http://www.replaygain.org/>).
Setting this to "album" will adjust volume using the album's
ReplayGain tags, while setting it to "track" will adjust it
using the track ReplayGain tags. "auto" uses the track
ReplayGain tags if random play is activated otherwise the album ReplayGain
tags. Currently only FLAC, Ogg Vorbis, Musepack, and MP3 (through ID3v2
ReplayGain tags, not APEv2) are supported.
- replaygain_preamp <-15 to 15>
- This is the gain (in dB) applied to songs with ReplayGain
- volume_normalization <yes or no>
- If yes, mpd will normalize the volume of songs as they
play. The default is no.
- filesystem_charset <charset>
- This specifies the character set used for the filesystem. A
list of supported character sets can be obtained by running "iconv
-l". The default is determined from the locale when the db was
- gapless_mp3_playback <yes or no>
- This specifies whether to support gapless playback of MP3s
which have the necessary headers. Useful if your MP3s have headers with
incorrect information. If you have such MP3s, it is highly recommended
that you fix them using vbrfix (available from
<http://www.willwap.co.uk/Programs/vbrfix.php>) instead of disabling
gapless MP3 playback. The default is to support gapless MP3 playback.
- save_absolute_paths_in_playlists <yes or
- This specifies whether relative or absolute paths for song
filenames are used when saving playlists. The default is
- auto_update <yes or no>
- This specifies the whether to support automatic update of
music database when files are changed in music_directory. The default is
to disable autoupdate of database.
- auto_update_depth <N>
- Limit the depth of the directories being watched, 0 means
only watch the music directory itself. There is no limit by default.
- type <type>
- This specifies the audio output type. See the list of
supported outputs in mpd --version for possible values.
- name <name>
- This specifies a unique name for the audio output.
- format <sample_rate:bits:channels>
- This specifies the sample rate, bits per sample, and number
of channels of audio that is sent to the audio output device. See
documentation for the audio_output_format parameter for more
details. The default is to use whatever audio format is passed to the
audio output. Any of the three attributes may be an asterisk to specify
that this attribute should not be enforced
- replay_gain_handler <software, mixer or
- Specifies how replay gain is applied. The default is
"software", which uses an internal software volume control.
"mixer" uses the configured (hardware) mixer control.
"none" disables replay gain on this audio output.
- device <dev>
- This specifies the device to use for audio output. The
default is "default".
- mixer_type <hardware, software or none>
- Specifies which mixer should be used for this audio output:
the hardware mixer (available for ALSA, OSS and PulseAudio), the software
mixer or no mixer ("none"). By default, the hardware mixer is
used for devices which support it, and none for the others.
- mixer_device <mixer dev>
- This specifies which mixer to use. The default is
"default". To use the second sound card in a system, use
- mixer_control <mixer ctrl>
- This specifies which mixer control to use (sometimes
referred to as the "device"). The default is "PCM".
Use "amixer scontrols" to see the list of possible
- mixer_index <mixer index>
- A number identifying the index of the named mixer control.
This is probably only useful if your alsa device has more than one
identically-named mixer control. The default is "0". Use
"amixer scontrols" to see the list of controls with their
- auto_resample <yes or no>
- Setting this to "no" disables ALSA's software
resampling, if the hardware does not support a specific sample rate. This
lets MPD do the resampling. "yes" is the default and allows ALSA
- auto_channels <yes or no>
- Setting this to "no" disables ALSA's channel
conversion, if the hardware does not support a specific number of
channels. Default: "yes".
- auto_format <yes or no>
- Setting this to "no" disables ALSA's sample
format conversion, if the hardware does not support a specific sample
format. Default: "yes".
- buffer_time <time in microseconds>
- This sets the length of the hardware sample buffer in
microseconds. Increasing it may help to reduce or eliminate skipping on
certain setups. Most users do not need to change this. The default is
500000 microseconds (0.5 seconds).
- period_time <time in microseconds>
- This sets the time between hardware sample transfers in
microseconds. Increasing this can reduce CPU usage while lowering it can
reduce underrun errors on bandwidth-limited devices. Some users have
reported good results with this set to 50000, but not all devices support
values this high. Most users do not need to change this. The default is
256000000 / sample_rate(kHz), or 5804 microseconds for CD-quality
- User configuration file.
- Global configuration file.