diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/musicpd/mpd | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/musicpd/mpd')
-rw-r--r-- | recipes/musicpd/mpd/fix-mod-support.patch | 23 | ||||
-rw-r--r-- | recipes/musicpd/mpd/mpd.conf | 338 | ||||
-rw-r--r-- | recipes/musicpd/mpd/mpd.init | 32 | ||||
-rw-r--r-- | recipes/musicpd/mpd/save-volume-state.patch | 31 |
4 files changed, 424 insertions, 0 deletions
diff --git a/recipes/musicpd/mpd/fix-mod-support.patch b/recipes/musicpd/mpd/fix-mod-support.patch new file mode 100644 index 0000000000..f9010abd9b --- /dev/null +++ b/recipes/musicpd/mpd/fix-mod-support.patch @@ -0,0 +1,23 @@ +Index: mpd/src/inputPlugins/mod_plugin.c +=================================================================== +--- mpd.orig/src/inputPlugins/mod_plugin.c ++++ mpd/src/inputPlugins/mod_plugin.c +@@ -62,10 +62,16 @@ static MDRIVER drv_mpd = { + NULL, + "MPD", + "MPD Output Driver v0.1", ++ + 0, + 255, +- "mpd", +- NULL, ++#if (LIBMIKMOD_VERSION > 0x030106) ++ "mpd", /* alias */ ++ NULL, /* cmd help line*/ ++#endif ++#if (LIBMIKMOD_VERSION >= 0x030200) ++ NULL, /*Command Line */ ++#endif + mod_mpd_IsThere, + VC_SampleLoad, + VC_SampleUnload, diff --git a/recipes/musicpd/mpd/mpd.conf b/recipes/musicpd/mpd/mpd.conf new file mode 100644 index 0000000000..c336af95c4 --- /dev/null +++ b/recipes/musicpd/mpd/mpd.conf @@ -0,0 +1,338 @@ +# An example configuration file for MPD +# See the mpd.conf man page for a more detailed description of each parameter. + +# Required files and directories ############################################## +# +# This setting controls the top directory which MPD will search to discover the +# available audio files and add them to the daemon's online database. +# +#music_directory "~/music" +music_directory "/media/content" +# +# This setting sets the MPD internal playlist directory. The purpose of this +# directory is storage for playlists created by MPD. The server will use +# playlist files not created by the server but only if they are in the MPD +# format. +# +#playlist_directory "~/.mpd/playlists" +playlist_directory "/var/lib/mpd/playlists" +# +# This setting sets the location of the MPD database. This file is used to +# load the database at server start up and store the database while the +# server is not up. +# +#db_file "~/.mpd/database" +db_file "/var/lib/mpd/mpd.db" +# +# These settings are the locations for the daemon log files for the daemon. +# These logs are great for troubleshooting, depending on your log_level +# settings. +# +#log_file "~/.mpd/log" +#error_file "~/.mpd/error-log" +log_file "/var/lib/mpd/mpd.log" +error_file "/var/lib/mpd/mpd.error" +############################################################################### + + +# Optional files ############################################################## +# +# This setting sets the location of the file which stores the process ID +# for use of mpd --kill and some init scripts. This setting is disabled by +# default. +# +#pid_file "~/.mpd/pid" +pid_file "/var/lib/mpd/mpd.pid" +# This setting sets the location of the file which contains information about +# most variables to get MPD back into the same general shape it was in before +# it was brought down. This setting is disabled by default. +# +#state_file "~/.mpd/state" +state_file "/var/lib/mpd/mpdstate" +# +############################################################################### + + +# General music daemon options ################################################ +# +# This setting specifies the user that MPD will run as, if set. MPD should +# never run as root and you may use this setting to make MPD change its user +# id after initialization. Do not use this setting if you start MPD as an +# unprivileged user. This setting is disabled by default, and the server will +# run as root. +# +#user "nobody" +# +# This setting sets the address for the daemon to listen on. Careful attention +# should be paid if this is assigned to anything other then the default, any. +# This setting can deny access to control of the daemon. +# +# For network +bind_to_address "any" +#bind_to_address "127.0.0.1" +# +# And for Unix Socket +#bind_to_address "~/.mpd/socket" +# +# This setting is the port that is desired for the daemon to get assigned to. +# +port "6600" +# +# This setting controls the type of information which is logged. Available +# setting arguments are "default", "secure" or "verbose". The "verbose" setting +# argument is recommended for troubleshooting, though can quickly stretch +# available resources on limited hardware storage. +# +#log_level "default" +# +# If you have a problem with your MP3s ending abruptly it is recommended that +# you set this argument to "no" to attempt to fix the problem. If this solves +# the problem, it is highly recommended to fix the MP3 files with vbrfix +# (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which +# point gapless MP3 playback can be enabled. +# +#gapless_mp3_playback "yes" +# +# This setting enables MPD to create playlists in a format usable by other +# music players. +# +#save_absolute_paths_in_playlists "no" +# +# This setting defines a list of tag types that will be extracted during the +# audio file discovery process. Optionally, 'comment' can be added to this +# list. +# +#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc" +# +############################################################################### + +# Symbolic link behavior ###################################################### +# +# If this setting is set to "yes", MPD will discover audio files by following +# symbolic links outside of the configured music_directory. +# +#follow_outside_symlinks "yes" +# +# If this setting is set to "yes, MPD will discover audio files by following +# symbolic links inside of the configured music_directory. +# +#follow_inside_symlinks "yes" +# +############################################################################### + +# Zeroconf / Avahi Service Discovery ########################################## +# +# If this setting is set to "yes", service information will be published with +# Zeroconf / Avahi. +# +#zeroconf_enabled "yes" +# +# The argument to this setting will be the Zeroconf / Avahi unique name for +# this MPD server on the network. +# +#zeroconf_name "Music Player" +# +############################################################################### + + +# Permissions ################################################################# +# +# If this setting is set, MPD will require password authorization. The password +# can setting can be specified multiple times for different password profiles. +# +#password "password@read,add,control,admin" +# +# This setting specifies the permissions a user has who has not yet logged in. +# +#default_permissions "read,add,control,admin" +# +############################################################################### + + +# Audio Output ################################################################ +# +# MPD supports various audio output types, as well as playing through multiple +# audio outputs at the same time, through multiple audio_output settings +# blocks. Setting this block is optional, though the server will only attempt +# autodetection for one sound card. +# +# See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of +# other audio outputs. +# +# An example of an ALSA output: +# +#audio_output { +# type "alsa" +# name "My ALSA Device" +# device "hw:0,0" # optional +# format "44100:16:2" # optional +#} +# +# An example of an OSS output: +# +#audio_output { +# type "oss" +# name "My OSS Device" +# device "/dev/dsp" # optional +# format "44100:16:2" # optional +#} +# +# An example of a shout output (for streaming to Icecast): +# +#audio_output { +# type "shout" +# encoding "ogg" # optional +# name "My Shout Stream" +# host "localhost" +# port "8000" +# mount "/mpd.ogg" +# password "hackme" +# quality "5.0" +# bitrate "128" +# format "44100:16:1" +# protocol "icecast2" # optional +# user "source" # optional +# description "My Stream Description" # optional +# genre "jazz" # optional +# public "no" # optional +# timeout "2" # optional +#} +# +# An example of a pulseaudio output (streaming to a remote pulseaudio server) +# +#audio_output { +# type "pulse" +# name "My Pulse Output" +# server "remote_server" +# sink "remote_server_sink" +#} +# +## An example of a null output (for no audio output): +# +#audio_output { +# type "null" +# name "My Null Output" +#} +# +# This setting will change all decoded audio to be converted to the specified +# format before being passed to the audio outputs. By default, this setting is +# disabled. +# +#audio_output_format "44100:16:2" +# +# If MPD has been compiled with libsamplerate support, this setting specifies +# the sample rate converter to use. Possible values can be found in the +# mpd.conf man page or the libsamplerate documentation. By default, this is +# setting is disabled. +# +#samplerate_converter "Fastest Sinc Interpolator" +# +############################################################################### + + +# Volume control mixer ######################################################## +# +# MPD has limited volume controls, to use them pick one below. If one is not +# specified it may be autodetected at startup, depending on the dependencies +# which were compiled into the server. +# +# An example for controlling an ALSA mixer: +# +mixer_type "alsa" +mixer_device "default" +mixer_control "PCM" +# +# An example for controlling an OSS mixer: +# +#mixer_type "oss" +#mixer_device "/dev/mixer" +#mixer_control "PCM" +# +# This example is a general volume control mixer, it is used to adjust the +# volume of the audio sent to the audio output, and will work with all outputs. +# +#mixer_type "software" +# +############################################################################### + + +# Normalization automatic volume adjustments ################################## +# +# This setting specifies the type of ReplayGain to use. This setting can have +# the argument "album" or "track". See <http://www.replaygain.org> for more +# details. By default this setting is disabled. +# +#replaygain "album" +# +# This setting sets the pre-amp used for files that have ReplayGain tags. By +# default this setting is disabled. +# +#replaygain_preamp "0" +# +# This setting enables on-the-fly normalization volume adjustment. This will +# result in the volume of all playing audio to be adjusted so the output has +# equal "loudness". +# +#volume_normalization "no" +# +############################################################################### + + +# MPD Internal Buffering ###################################################### +# +# This setting adjusts the size of internal decoded audio buffering. Changing +# this may have undesired effects. Don't change this if you don't know what you +# are doing. +# +#audio_buffer_size "2048" +# +# This setting controls the percentage of the buffer which is filled before +# beginning to play. Increasing this reduces the chance of audio file skipping, +# at the cost of increased time prior to audio playback. +# +#buffer_before_play "10%" +# +############################################################################### + + +# HTTP Streaming Proxy ######################################################## +# +# This setting specifies the HTTP proxy to use for playing HTTP streams. By +# default, these settings will be disabled. +# +#http_proxy_host "proxy.isp.com" +#http_proxy_port "8080" +#http_proxy_user "user" +#http_proxy_password "password" +# +############################################################################### + + +# Resource Limitations ######################################################## +# +# These settings are various limitations to prevent MPD from using too many +# resources. Generally, these settings should be minimized to prevent security +# risks, depending on the operating resources. +# +#connection_timeout "60" +#max_connections "10" +#max_playlist_length "16384" +#max_command_list_size "2048" +#max_output_buffer_size "8192" +# +############################################################################### + + +# Character Encoding ########################################################## +# +# If file or directory names do not display correctly for your locale then you +# may need to modify this setting. After modification of this setting mpd +# --create-db must be run to change the database. +# +filesystem_charset "UTF-8" +# +# This setting controls the encoding that ID3v1 tags should be converted from. +# +#id3v1_encoding "ISO-8859-1" +# +############################################################################### diff --git a/recipes/musicpd/mpd/mpd.init b/recipes/musicpd/mpd/mpd.init new file mode 100644 index 0000000000..98a75d0af7 --- /dev/null +++ b/recipes/musicpd/mpd/mpd.init @@ -0,0 +1,32 @@ +#! /bin/sh +# +# > update-rc.d mpd defaults 20 +# + +test -f /usr/bin/mpd || exit 0 +test -f /etc/mpd.conf || exit 0 + +case "$1" in + start) + echo -n "Starting music player daemon: mpd" + start-stop-daemon --start --quiet --exec /usr/bin/mpd + echo "." + ;; + stop) + echo -n "Stopping music player daemon: mpd" + start-stop-daemon --stop --quiet --exec /usr/bin/mpd + echo "." + ;; + restart|force-reload) + echo -n "Restarting music player daemon: mpd" + start-stop-daemon --start --quiet --exec /usr/bin/mpd + sleep 2 + start-stop-daemon --stop --quiet --exec /usr/bin/mpd + echo "." + ;; + *) + echo "Usage: /etc/init.d/mpd {start|stop|restart|force-reload}" + exit 1 +esac + +exit 0 diff --git a/recipes/musicpd/mpd/save-volume-state.patch b/recipes/musicpd/mpd/save-volume-state.patch new file mode 100644 index 0000000000..3e9be0eafb --- /dev/null +++ b/recipes/musicpd/mpd/save-volume-state.patch @@ -0,0 +1,31 @@ +diff -Nur mpd-0.11.5~/src/playlist.c mpd-0.11.5/src/playlist.c +--- mpd-0.11.5~/src/playlist.c 2005-08-31 17:11:14.000000000 -0700 ++++ mpd-0.11.5/src/playlist.c 2005-08-31 17:14:36.000000000 -0700 +@@ -49,6 +49,7 @@ + #define PLAYLIST_STATE_FILE_CURRENT "current: " + #define PLAYLIST_STATE_FILE_TIME "time: " + #define PLAYLIST_STATE_FILE_CROSSFADE "crossfade: " ++#define PLAYLIST_STATE_FILE_VOLUME "volume: " + #define PLAYLIST_STATE_FILE_PLAYLIST_BEGIN "playlist_begin" + #define PLAYLIST_STATE_FILE_PLAYLIST_END "playlist_end" + +@@ -275,6 +276,8 @@ + myfprintf(fp,"%s\n",PLAYLIST_STATE_FILE_STATE_STOP); + break; + } ++ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_VOLUME, ++ getVolumeLevel()); + myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_RANDOM, + playlist.random); + myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_REPEAT, +@@ -403,6 +406,10 @@ + current = atoi(&(buffer + [strlen(PLAYLIST_STATE_FILE_CURRENT)])); + } ++ else if(strncmp(buffer,PLAYLIST_STATE_FILE_VOLUME, ++ strlen(PLAYLIST_STATE_FILE_VOLUME)) == 0) { ++ changeVolumeLevel(1, atoi(&(buffer[strlen(PLAYLIST_STATE_FILE_VOLUME)])), 0); ++ } + else if(strncmp(buffer, + PLAYLIST_STATE_FILE_PLAYLIST_BEGIN, + strlen(PLAYLIST_STATE_FILE_PLAYLIST_BEGIN) |