Le mercredi 10 mars 2010 21:04:03, Stefan Monnier a écrit :
> The patch below makes /etc/init.d/mpd start the MusicPlayerDaemon in
> a more normal way:
> 1- it stops it from rebuilding the database at every start (which can take
> a very very long time on large databases).
> 2- it stops it from going through the trouble to create the music
> database directory (even if it exists, as long as its empty you won't
> be able to do much with it anyway).
> 3- it stops it from messing up the playlist (adding all the songs in the
> universe to it) and from starting to play that messed up list
> forcefully right away (convenient when your machine happens to reboot
> at 3am).
> 4- it uses `nice' if available to boost `mpd's priority to reduce the
> likelihood of skipping. In my experience (using this mpd on a small
> home-router box), this is indispensible to avoid skipping, and I have
> never noticed it affecting the general performance and responsiveness
> of the machine.
>
> Points 1 and 3 are really important for most normal uses I can think of.
> Point 2 is not important.
> Point 4 is important for my use case, tho maybe less so for others;
> Still, within the context of OpenWRT, I expect it's common to run on
> slow machines where "nice" is necessary to avoid skipping, so I think it
> deserves to be used by default.
Applied in r20318, thanks!
>
>
> Stefan
>
>
> Index: sound/mpd/files/mpd.init
> ===================================================================
> --- sound/mpd/files/mpd.init (révision 19649)
> +++ sound/mpd/files/mpd.init (copie de travail)
> @@ -4,27 +4,22 @@
>
> start() {
> #create mpd directories
> - md=`grep music_directory /etc/mpd.conf | cut -d "\"" -f 2 | sed
> "s/~/\/root/g"` - if [ ! -d $md ]; then
> - mkdir -p $md
> - fi
> pld=`grep playlist_directory /etc/mpd.conf | cut -d "\"" -f 2 | sed
> "s/~/\/root/g"` if [ ! -d $pld ]; then
> mkdir -p $pld
> fi
> - #create mpd db
> - /usr/bin/mpd --stdout --create-db
>
> - #optional export for mpc
> - #export MPD_HOST=127.0.0.1
> -
> + # Set the initial volume to something manageable
> + amixer set PCM 40
> +
> #start mpd
> - /usr/bin/mpd
> -
> - #generate playlist and start to play
> - /usr/bin/mpc listall | /usr/bin/mpc add -
> - /usr/bin/mpc play
> - /usr/bin/mpc repeat
> + if [ -x /bin/nice ]; then
> + # This has real-time constraints, so let's at least tell the
> OS + # that this should have higher priority to avoid skipping
> + # when doing other things in the background.
> + nice="nice -n -10"
> + fi
> + $nice /usr/bin/mpd
> }
>
> stop() {
>
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel