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

pause after last track has finished #239

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

herrernst
Copy link
Contributor

Currently, librespot plays endlessly: After the last track in a playlist/album it continues playing the first one.

This changes the behaviour to match the official Spotify client: The first track is loaded again, but the player is paused.

See #237

@markubiak
Copy link

markubiak commented Sep 12, 2017

+1 would really like to see this. @herrernst any way you could include this PR in your raspberry pi builds?

@awiouy
Copy link
Contributor

awiouy commented Sep 20, 2017

What about adding this as a runtime option?

@markubiak
Copy link

I don't think it should be included as a runtime option. This is a good stopgap measure until someone gets the repeat button working.

@herrernst
Copy link
Contributor Author

I also think this shouldn't be an extra option, but the repeat mode should be toggled/controlled with the Spotify app as raised in #237

@markubiak
Copy link

I would agree that that is the best possible option. Unfortunately, I do not have any experience with rust and it doesn't seem to share a lot of similarities with languages I am familiar with. If you have the time and energy to implement that, it would be fantastic. It does seem that the repeat status is received in protocol/src/spirc.rs, and the original file (src/spirc.rs) could simply have the logic self.load_track(!was_last_track || is_repeating);

@kingosticks
Copy link

So I had a go at integrating this with the connect side of things, my first stab at rust: master...kingosticks:master

However, it's not quite there yet as it's missing the ability to repeat just one song which is available on the native client (you toggle repeat, repeat one, and off through the same control on the Android app). The repeat state is just a boolean so maybe there's a different bit of state to control repeat one (single?). Any ideas welcome.

I also wanted to do shuffle but doing the actual track shuffle is a bit more work.

dmeulen pushed a commit to dmeulen/librespot that referenced this pull request May 16, 2019
Replace rust-crypto crate with RustCrypto crates
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

Successfully merging this pull request may close these issues.

4 participants