It turns out that, in gme, you need to call this function for the end of tracks to be detected properly, otherwise they'll play forever. This only applies to tracks which have a length, of course. The patch is the latest commit in my repository:
git://github.com/mcfiredrill/mpd.git --- src/decoder/gme_decoder_plugin.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/src/decoder/gme_decoder_plugin.c b/src/decoder/gme_decoder_plugin.c index 4a5220a..e14a52d 100644 --- a/src/decoder/gme_decoder_plugin.c +++ b/src/decoder/gme_decoder_plugin.c @@ -153,6 +153,9 @@ gme_file_decode(struct decoder *decoder, const char *path_fs) if((gme_err = gme_start_track(emu, song_num)) != NULL) g_warning("%s", gme_err); + if(ti->length > 0) + gme_set_fade(emu, ti->length); + /* play */ do { gme_err = gme_play(emu, GME_BUFFER_SAMPLES, buf); -- 1.5.6.5 ------------------------------------------------------------------------------ Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)! Finally, a world-class log management solution at an even better price-free! Download using promo code Free_Logger_4_Dev2Dev. Offer expires February 28th, so secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsight-sfd2d _______________________________________________ Musicpd-dev-team mailing list Musicpd-dev-team@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team