2004-02-24 00:41:20 +01:00
|
|
|
Music Player Daemon (MPD) - INSTALL
|
|
|
|
|
2008-11-05 21:27:20 +01:00
|
|
|
|
2008-12-21 04:17:34 +01:00
|
|
|
Introduction
|
|
|
|
------------
|
|
|
|
This document is a very small amount of documentation about what is needed to
|
2008-12-21 04:29:55 +01:00
|
|
|
install MPD. If more information is desired see the community wiki at
|
|
|
|
http://mpd.wikia.com.
|
2008-12-21 04:17:34 +01:00
|
|
|
|
2008-11-05 21:27:20 +01:00
|
|
|
Dependencies
|
|
|
|
------------
|
|
|
|
|
|
|
|
gcc - http://gcc.gnu.org/
|
|
|
|
Any other C99 compliant compiler should also work.
|
|
|
|
|
|
|
|
glib - http://www.gtk.org/
|
|
|
|
General-purpose utility library.
|
|
|
|
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
Optional Output Dependencies
|
|
|
|
----------------------------
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
You will need at least one of these to compile MPD.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
Most of these are available as packages on major distributions. Be sure to
|
|
|
|
install both the library package as well as the development package.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
AO - http://www.xiph.org/ao/
|
|
|
|
A portable library that abstracts many audio output types as one API. Should
|
|
|
|
be used only if there is no native plugin available or if the native plugin
|
|
|
|
doesn't work. You will need libao.
|
|
|
|
|
|
|
|
ALSA - http://www.alsa-project.org/
|
|
|
|
The Advanced Linux Sound Architecture. Recommended audio output if you use
|
|
|
|
Linux. You will need libasound.
|
|
|
|
|
2008-12-21 04:17:34 +01:00
|
|
|
FIFO
|
|
|
|
This is a mostly undocumented, developer plugin to transmit raw data.
|
|
|
|
|
|
|
|
MVP - http://en.wikipedia.org/wiki/Hauppauge_MediaMVP
|
|
|
|
A network media player.
|
|
|
|
|
|
|
|
OSS - http://www.opensound.com
|
|
|
|
Open Sound System.
|
|
|
|
|
|
|
|
OSX - http://www.apple.com
|
|
|
|
Necessary if you are on Mac OSX.
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
PulseAudio - http://www.pulseaudio.org/
|
|
|
|
An advanced sound daemon. You will need libpulse.
|
|
|
|
|
2007-05-27 15:38:52 +02:00
|
|
|
JACK - http://www.jackaudio.org/
|
|
|
|
A low-latency sound daemon.
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
libshout - http://www.icecast.org/
|
|
|
|
For streaming to an Icecast or Shoutcast server.
|
2008-11-05 21:27:20 +01:00
|
|
|
You also need an encoder: either libvorbisenc (ogg), or liblame (mp3).
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
|
|
|
|
Optional Input Dependencies
|
|
|
|
---------------------------
|
|
|
|
|
|
|
|
You will need at least one of these to compile MPD.
|
|
|
|
|
|
|
|
Most of these are available as packages on major distributions. Be sure to
|
|
|
|
install both the library package as well as the development package.
|
|
|
|
|
|
|
|
MAD - http://www.underbit.com/products/mad/
|
|
|
|
For MP3 support. You will need libmad, and optionally libid3tag if you want
|
|
|
|
ID3 tag support.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
|
|
|
Ogg Vorbis - http://www.xiph.org/ogg/vorbis/
|
2006-08-28 18:44:29 +02:00
|
|
|
For Ogg Vorbis support. You will need libogg and libvorbis.
|
|
|
|
|
|
|
|
FLAC - http://flac.sourceforge.net/
|
|
|
|
For FLAC support. You will need version 1.1.0 or higher of libflac.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
OggFLAC - http://www.xiph.org/ogg/vorbis/ and http://flac.sourceforge.net/
|
|
|
|
For OggFLAC support. You will need liboggflac, which can be built from the
|
2007-03-31 17:47:48 +02:00
|
|
|
FLAC sources if libogg is already installed. Versions of flac 1.1.3 and
|
2007-03-31 17:20:39 +02:00
|
|
|
greater will automatically detect and use OggFLAC if it's available.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
Audio File - http://www.68k.org/~michael/audiofile/
|
|
|
|
For WAVE, AIFF, and AU support. You will need libaudiofile.
|
2004-03-22 23:21:02 +01:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
FAAD2 - http://www.audiocoding.com/
|
|
|
|
For MP4/AAC support. You will need libmp4ff.
|
2004-06-14 23:43:48 +02:00
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
libmpcdec - http://www.musepack.net/
|
|
|
|
For Musepack support.
|
|
|
|
|
|
|
|
MikMod - http://mikmod.raphnet.net/
|
|
|
|
For MOD support. You will need libmikmod.
|
2004-02-24 03:43:09 +01:00
|
|
|
|
2008-11-05 21:27:20 +01:00
|
|
|
libavcodec, libavformat (ffmpeg) - http://ffmpeg.mplayerhq.hu/
|
|
|
|
Multi-codec library.
|
|
|
|
|
2009-02-11 20:31:17 +01:00
|
|
|
libsidplay2 - http://sidplay2.sourceforge.net/
|
|
|
|
For C64 SID support.
|
|
|
|
|
2009-02-12 08:43:26 +01:00
|
|
|
libfluidsynth - http://fluidsynth.resonance.org/
|
2009-04-25 12:32:22 +02:00
|
|
|
For MIDI support (DO NOT USE - use libwildmidi instead)
|
2009-02-12 08:43:26 +01:00
|
|
|
|
2009-02-12 16:43:18 +01:00
|
|
|
libwildmidi - http://wildmidi.sourceforge.net/
|
|
|
|
For MIDI support.
|
|
|
|
|
2009-07-07 08:58:51 +02:00
|
|
|
libsndfile - http://www.mega-nerd.com/libsndfile/
|
|
|
|
WAVE, AIFF, and many others.
|
|
|
|
|
2008-11-05 21:27:20 +01:00
|
|
|
|
2007-03-31 17:20:39 +02:00
|
|
|
Optional Miscellaneous Dependencies
|
|
|
|
-----------------------------------
|
|
|
|
|
2007-05-27 15:38:52 +02:00
|
|
|
Avahi - http://www.avahi.org/
|
2007-03-31 17:20:39 +02:00
|
|
|
For Zeroconf support.
|
|
|
|
|
|
|
|
libsamplerate - http://www.mega-nerd.com/SRC/
|
|
|
|
For advanced samplerate conversions.
|
|
|
|
|
2008-10-26 19:32:43 +01:00
|
|
|
libcurl - http://curl.haxx.se/
|
|
|
|
For playing HTTP streams.
|
|
|
|
|
2009-01-29 21:42:10 +01:00
|
|
|
libmms - https://launchpad.net/libmms
|
|
|
|
For playing MMS streams.
|
|
|
|
|
2009-04-01 17:32:03 +02:00
|
|
|
SQLite - http://www.sqlite.org/
|
|
|
|
For the sticker database.
|
|
|
|
|
2009-04-25 12:32:50 +02:00
|
|
|
libcue - http://libcue.sourceforge.net/
|
|
|
|
For CUE sheet support.
|
|
|
|
|
2008-10-26 19:32:43 +01:00
|
|
|
|
2008-11-27 19:43:53 +01:00
|
|
|
pkg-config
|
|
|
|
----------
|
|
|
|
|
|
|
|
MPD uses pkg-config to locate most external libraries. If you do not
|
|
|
|
have pkg-config, or if your version of the library does not ship the
|
|
|
|
".pc" file, you have to provide the library's build options in
|
|
|
|
environment variables. These variables are documented in "./configure
|
|
|
|
--help". Example:
|
|
|
|
|
|
|
|
FLAC_CFLAGS=-I/usr/include/FLAC FLAC_LIBS=-lFLAC ./configure
|
|
|
|
|
|
|
|
|
2004-02-24 00:41:20 +01:00
|
|
|
Download
|
|
|
|
--------
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
Get the latest release from of MPD from <http://www.musicpd.org/>.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
|
|
|
Compile
|
|
|
|
-------
|
|
|
|
|
|
|
|
1) unzip and untar the archive
|
|
|
|
|
|
|
|
$ tar zxvf mpd-x.x.x.tar.gz
|
|
|
|
|
2006-08-28 18:44:29 +02:00
|
|
|
or
|
|
|
|
|
|
|
|
$ tar jxvf mpd-x.x.x.tar.bz2
|
|
|
|
|
2004-02-24 00:41:20 +01:00
|
|
|
2) change to directory created
|
|
|
|
|
|
|
|
$ cd mpd-x.x.x
|
|
|
|
|
|
|
|
3) Run configure script (this will determine what dependencies you have)
|
|
|
|
|
|
|
|
$ ./configure
|
|
|
|
|
|
|
|
4) Compile
|
|
|
|
|
|
|
|
$ make
|
|
|
|
|
|
|
|
Install (Optional)
|
|
|
|
-------
|
|
|
|
|
|
|
|
(as root)
|
|
|
|
$ make install
|
|
|
|
|
|
|
|
Run
|
|
|
|
---
|
|
|
|
|
|
|
|
1) run mpd:
|
|
|
|
|
|
|
|
$ mpd <config file>
|
|
|
|
|
2009-01-14 14:27:17 +01:00
|
|
|
First default is ~/.mpdconf then ~/.mpd/mpd.conf then /etc/mpd.conf. If
|
|
|
|
neither of these exist a mpd configuration file must be specified at
|
|
|
|
runtime.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2008-12-21 04:17:34 +01:00
|
|
|
A sample config file is included with the source of MPD, mpdconf.example.
|
2004-02-24 00:41:20 +01:00
|
|
|
|
2008-12-21 04:17:34 +01:00
|
|
|
The first time MPD is run it will attempt to discover all music in your
|
2008-12-21 04:29:55 +01:00
|
|
|
music root, recursively. This can be affected by the symbolic link
|
|
|
|
options specified in the example mpd.conf.
|
2006-08-28 18:44:29 +02:00
|
|
|
|
2004-02-24 00:41:20 +01:00
|
|
|
Using MPD
|
|
|
|
---------
|
|
|
|
|
2007-03-31 17:20:39 +02:00
|
|
|
You can download many different interfaces for MPD at
|
|
|
|
<http://mpd.wikia.com/wiki/Clients>
|
2004-02-24 00:41:20 +01:00
|
|
|
|
|
|
|
MPD can be interfaced directly using telnet (see COMMANDS, if you are brave).
|