Skip to content

Instantly share code, notes, and snippets.

@manpages
Created August 23, 2012 12:52
Show Gist options
  • Save manpages/3436335 to your computer and use it in GitHub Desktop.
Save manpages/3436335 to your computer and use it in GitHub Desktop.
Configuration for distributed usage of mpd with last.fm scrobbling
# ~/.mpd/config
# MPD configuration that enables you to run the server from the userspace
# And to stream music over HTTP so that you could listen it in a distributed fashion (from the office/school)
# Uncomment the commented lines to stream music to the local audio output
# Note that you can have more than one audio outputs enabled!
# Where is my music?
music_directory "/home/mpdaemon/Music"
playlist_directory "/home/mpdaemon/.mpd/playlists"
# You may require to touch those files
db_file "/home/mpdaemon/.mpd/mpd.db"
log_file "/home/mpdaemon/.mpd/mpd.log"
pid_file "/home/mpdaemon/.mpd/mpd.pid"
state_file "/home/mpdaemon/.mpd/mpdstate"
# Run MPD from the userspace
user "mpdaemon"
bind_to_address "any"
port "49151" # use custom ports in your configurations, secure your ports with firewalls/routers and be more safe!
metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
# We need more lumber
input {
plugin "curl"
}
# HTTP audio output
audio_output {
type "httpd"
name "192.168.0.17" #
encoder "lame" # optional, vorbis or lame
port "8000"
bitrate "128" # do not define if quality is defined
format "44100:16:1"
}
# An example of an ALSA output:
#
#audio_output {
# type "alsa"
# name "My ALSA Device"
## device "hw:0,0" # optional
## format "44100:16:2" # optional
## mixer_device "default" # optional
## mixer_control "PCM" # optional
## mixer_index "0" # optional
#}
# The most important setting :trollface.png:
filesystem_charset "UTF-8"
[mpdscribble]
host = 192.168.0.102 # remote host ip address (or host name (?))
port = 6600 # remote host mpd port
log = /home/sweater/.mpdscribble/mpdscribble.log # local log absolute path
journal = /home/sweater/.mpdscribble/mpdscribble.cache # local cache file absolute path
verbose = 2 # verbose level
sleep = 1 # sleep before start
musicdir = /media/storage/music # remote path to the music directory (not needed (?))
[last.fm]
# last.fm section, comment if you don't use last.fm
url = http://post.audioscrobbler.com # last.fm scrobbler address
username = anonymous # last.fm user
password = hackme # last.fm password
mpdscribble ~/.mpdscribble/mpdscribble.conf; mplayer -cache 64 http://192.168.0.102:8000; killall mpdscribble
@manpages
Copy link
Author

MPD configuration that enables you to run the server from the userspace

And to stream music over HTTP so that you could listen it in a distributed fashion (from the office/school)

Uncomment the commented lines to stream music to the local audio output

Note that you can have more than one audio outputs enabled!

Where is my music?

music_directory "/home/mpdaemon/Music"
playlist_directory "/home/mpdaemon/.mpd/playlists"

You may require to touch those files

db_file "/home/mpdaemon/.mpd/mpd.db"
log_file "/home/mpdaemon/.mpd/mpd.log"
pid_file "/home/mpdaemon/.mpd/mpd.pid"
state_file "/home/mpdaemon/.mpd/mpdstate"

Run MPD from the userspace

user "mpdaemon"
bind_to_address "any"
port "49151" # use custom ports in your configurations, secure your ports with firewalls/routers and be more safe!
metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"

We need more lumber

input {
plugin "curl"
}

HTTP audio output

audio_output {
type "httpd"
name "192.168.0.17" #
encoder "lame" # optional, vorbis or lame
port "8000"
bitrate "128" # do not define if quality is defined
format "44100:16:1"
}

An example of an ALSA output:

audio_output {

type "alsa"

name "My ALSA Device"

device "hw:0,0" # optional

format "44100:16:2" # optional

mixer_device "default" # optional

mixer_control "PCM" # optional

mixer_index "0" # optional

}

The most important setting :trollface.png:

filesystem_charset "UTF-8"

@manpages
Copy link
Author

Ahahahahaha phayul, how to delete comments here lol?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment