Oftentimes when I want music to stop after the current song I enable Single mode. This is great, but when I play something again later, I often forget to disable Single mode again.
I remember back in the day when I used Foobar2000, there was an option to remove Single mode as soon as playback was started again. I would like that option in MAFA :).
Looking forward to hear your thoughts on this.
The question is what event triggers resetting the mode:
- Player stopped
- Player queue cleared/replaced
It may also apply to the other player modes: random, and consume.
I would prefer the first option, i.e. “Player stopped” as the triggering event. I often resume playing my queue later, so option 2 wouldn’t work for me.
One thing comes to mind though: what if I press the Stop button myself? Do I want to cause that to disable Single mode as well? I think that makes sense, so no problem there AFAIK. Just thinking out loud about the implications of this choice of an event.
Interesting that you bring up the other modes, haven’t thought of that. I’d think the purpose of “Random” would possibly combine well with triggering event 2. “Consume” feels like it wouldn’t benefit from this idea, and “Repeat” seems to only make sense (if at all) when triggered by event option 1 imo (effectively repeating once). What do you think?
For me personally, having the player remove single mode after having stopped playing it all I need. But I’m willing to help you think this out further if you want :).
I have always wished for this function and therefore solved it myself a few years ago by a bash routine that resets the single state when the player stops.
But recently I saw that this functionality is apparently already built into mpd-player:
Search for “oneshot”!
But I’m not sure if this really works, I can’t find “oneshot” on my installation (mpd version 0.22.6 / mpc version 0.33), but maybe this is a useful hint…
Thanks for the tip @Kelso.
signle oneshot mode resets on track border i.e. when a track reached its end and there’s a next track.
It doesn’t reset when stopping, clearing the queue, skipping to next track, or when the last track in the queue is done playing.
Not saying this logic is wrong. I’ll add support for
single oneshot as it is, and maybe a client side reset when stopped by the user too.
With version 519 siglemode-oneshot is working perfectly in my setup! Easy to use with just a double click on the button!