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

Load and save queue from/to server #337

Closed
Programie opened this issue Feb 28, 2024 · 5 comments · Fixed by #367
Closed

Load and save queue from/to server #337

Programie opened this issue Feb 28, 2024 · 5 comments · Fixed by #367
Labels
enhancement New feature or request
Milestone

Comments

@Programie
Copy link

Programie commented Feb 28, 2024

I'm using multiple devices on which I mostly want to continue listening my currently active playlist/queue from the previous device. For example, I'm listening to something on my computer and want to continue listening to it on my smartphone.

Subsonic has an API for exactly that use-case:

  • /rest/getPlayQueue to get the currently saved play queue
  • /rest/savePlayQueue to store the play queue to the server

Maybe using that API could also be implemented in Supersonic. Probably configurable by the user (maybe not everyone wants to sync the queue).

@dweymouth dweymouth added the enhancement New feature or request label Mar 2, 2024
@dweymouth
Copy link
Owner

This should be possible. Should it be default and automatic? (ie should the "save play queue" setting always load/save the queue to the server instead of locally). Wondering if it needs to be a configuration option or not.

@Programie
Copy link
Author

In my case I want it to be automatic, but I'm not sure whether everyone wants to use that feature. So I will leave it up to you whether it should be configurable or not.

Other applications using that server feature have an option to enable it. For example, the Android app Tempo supports that and allows the user to configure it.

@SnipeXandrej
Copy link

I don't see why someone wouldn't like their current queue/currently playing track/position of that playing track to be restored when closing and reopening supersonic or when opening supersonic on a completely different device.

In my opinion it should be enabled by default, as I think it's objectively better user experience for the vast majority of users. I think it's waaay more annoying when the queue gets lost, rather than the queue restoring back.

And as for the configuration... I was thinking of using the existing "Save play queue on exit" option, but if the server doesn't support those APIs, it will just save the queue locally, but if the server supports saving/loading the queue to/from the server, then it will save/load the queue to/from the server. And instead of saving the queue only on exit, I would probably change that to make the queue save periodically.

I am thinking this could also be used to sync the current queue/track position between clients. This could be useful when if you want to change the track's position from other device (that's not currently the device that music plays from), that change will sync to another device that is currently playing music to some speakers or something. But this is just an idea of mine, probably out of scope for the current issue we are discussing.

@Programie
Copy link
Author

I don't see why someone wouldn't like their current queue/currently playing track/position of that playing track to be restored when closing and reopening supersonic or when opening supersonic on a completely different device.

Maybe there are some users which don't want to use a centralized playlist for all their devices. Maybe some users have a specific playlist for music on the road and another playlist for music at home. Therefore, I would give the user the freedom to choose whatever fits their use-case. In my case, I can live without the choice because I would always enable the sync feature to keep my playlists in-sync.

@dweymouth dweymouth added this to the 0.10.0 milestone Mar 13, 2024
@dweymouth
Copy link
Owner

I think making it configurable will be the best option:

image

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

Successfully merging a pull request may close this issue.

3 participants