Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

command_list does not work with idle playlist #2167

Open
roizcorp opened this issue Dec 16, 2024 · 2 comments
Open

command_list does not work with idle playlist #2167

roizcorp opened this issue Dec 16, 2024 · 2 comments

Comments

@roizcorp
Copy link

Bug report

Describe the bug

the use case is to create a scenario for mpd to execute....

  1. add 3 songs to existing queue
  2. disable random
  3. disable consume
  4. start play song pos of the first added song
  5. wait for the 3 songs to complete of skip
  6. enable random
  7. disable consume
command_list_begin
random 0
consume 0
play {pos}
idle playlist
idle playlist
idle playlist
random 1
consume 0
play
command_list_end

Expected Behavior

mpd will play the 3 songs one after another and then resume playing the other songs of the queue randomly

Actual Behavior

mpd plays the 3 added songs, then stops and do nothing, in any variation it seems it does not honor the command list starting the idle commands

Version

23.16

@jcorporation
Copy link
Member

I think that this can not work from protocol perspective. After sending the first idle playlist it is not allowed to send any other command than noidle. MPD should log errors.

Reference: https://mpd.readthedocs.io/en/latest/protocol.html -> idle [SUBSYSTEMS...]

The idle command can be canceled by sending the command noidle (no other commands are allowed).

@roizcorp
Copy link
Author

Thanks, the idea was to move the state (of playing the 3 songs, eliminate them and then revert back to random of the entire queue) from the client into the mpd server.

The more I have more clients (linux, Mac, android etc.) I understand I really want to go protocol rather than mpc. I was just finishing migrating this logic into protocol and then the command_list came to mind, and I thought to myself - why the hell not?

Let's see what @MaxKellermann wants to do with it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants