Jump to content
vdesabou

Spotify Mini Player: Control your Spotify library at your fingertips

Recommended Posts

V1.12 works for me too! Awesome! Thank you.

 

Might try changing to search all playlists just to see the impact later on...

 

Great! Finally!

 

I strongly recommend to cache all artworks, you'll see after that it's *really* quick.

 

I'll test also with your library to see the performances.

 

Cheers

Share this post


Link to post

V1.12 works for me too! Awesome! Thank you.

 

Might try changing to search all playlists just to see the impact later on...

 

So I loaded your library.json and cached all artworks (it took about 2 hours and 209Mb of data :-) )

 

Results are not bad at all!! Using all playlists search scope and max images to 8, it takes about 2 seconds "only" to display results

 

I am quite happy with results :-) 

Hope that would be the case for you as well

 

Cheers

Share this post


Link to post

Hi vedesabou,

 

I've just been adding this in, looks awesome! while the library is updating I was just wondering if there's a quick way to export the information for the playlist json? I've got 100+ playlists and I don't fancy the idea of setting them all by hand.

 

Finally found a way to do this!!

 

 

 
 
1.13: Built-in support of playlists! Please update your library to take into account the change

Share this post


Link to post

Finally found a way to do this!!

 

 

 
 
1.13: Built-in support of playlists! Please update your library to take into account the change

 

Did you try it with my large library? I've updated and it's giving me an out of memory error notification (nice touch) again.

 

Excited about the update, added a couple of playlists by hand earlier to try out the functionality, I'm loving it, but doing all my playlists would take ages

Share this post


Link to post

Did you try it with my large library?

I just tried and it worked. Actually, that's not surprising because the playlists.json is not generated from library.json but from an internal spotify file in Application Support.

 

I've updated and it's giving me an out of memory error notification (nice touch) again.

 

When do you get this error? when you update the library? or after you have updated the library and launch the mini player for the first time?

Can you show me the error details?

 

Excited about the update, added a couple of playlists by hand earlier to try out the functionality, I'm loving it, but doing all my playlists would take ages

 

Did you remove this file that you generated yourself before doing the update? you have to do it in order to force playlists.json file to be generated

Share this post


Link to post

When do you get this error? when you update the library? or after you have updated the library and launch the mini player for the first time?

Can you show me the error details?

 

I get it both when creating a new library and updating an existing one. The output to the log file appears to have changed as the notification contents isn't appearing in the log.

 

From the notification contents is:

 

Fatal error: allowed memory size of 134217728 bytes is exhausted (tried to allocate 32 bytes) in /users...

 

Did you remove this file that you generated yourself before doing the update? you have to do it in order to force playlists.json file to be generated

 

I've removed the playlists.json and it's not been regenerated, presumably because of the error.

Share this post


Link to post

I get it both when creating a new library and updating an existing one. The output to the log file appears to have changed as the notification contents isn't appearing in the log.

 

From the notification contents is:

 

Fatal error: allowed memory size of 134217728 bytes is exhausted (tried to allocate 32 bytes) in /users...

 

If you get an error message in a notification, I believe this happened during the caching of all artworks. Can you confirm you triggered it?

In that case, as it takes about two hours, maybe when you tried to update the library before the end  of the caching, it caused an error...

 

What is strange is that I was able to have everything working on my side with your library..

Let's see if you confirm that you tried to update the library before the end of artwork caching

 

I'm sorry that you're experiencing so many issues, but your 100+ playlists is a bit challenging :-)

 

 

I've removed the playlists.json and it's not been regenerated, presumably because of the error.

 

Yes I have identified an issue with this and fixed it. But I'm currently working on an improvement with playlists, we would be able to browse and search tracks within playlists:

 

xvQj+.png

 

It's not yet 100% ready. Hope to release it soon !

 

Cheers

Share this post


Link to post

FYI, I've just figured out that the hack i'm using to get playlists automatically is kind of broken starting from Spotify 0.8.8.

I use same mechanism as open source project spot commander, see issue here https://code.google.com/p/spotcommander/issues/detail?id=29

 

The hack is based on a file /Users/YOUR_USER/Library/Application Support/Spotify/Users/yourspotifyusername-user/playlist.bnk

 

This file is no more used and therefore updated since 0.8.8. If you're lucky to have this file, then you'll see your playlists, but if you add another playlist, the mini player would not be able to see the update (as it relies for now on playlist.bnk).

 

arff...

 

I'm thinking of another solution, stay tuned!

Share this post


Link to post

I've removed the mini player completely, downloaded and installed v1.14 and tried to install my library, I get the following results:

 

- playlists.json created

- individual playlist_X.json files created (98 :-) )

- library_starred_playlist.json created

- library.json created but has a size of zero bytes as the same memory exception as before is hit

 

- I have not set caching of artwork to true

- cleared artwork cache through setting before library install just to be sure

 

Looks like we're almost there. It's odd that it's working alright for you with my library. Does the library.json in the workflow folder come out as the correct size?

Share this post


Link to post

I've removed the mini player completely, downloaded and installed v1.14 and tried to install my library, I get the following results:

 

- playlists.json created

- individual playlist_X.json files created (98 :-) )

Cool, it means that you have a Playlist.bnk file (see my previous post)

 

- library_starred_playlist.json created

- library.json created but has a size of zero bytes as the same memory exception as before is hit

That's where I'm confused.

 

What happens when you click on "update library" is now:

 

-paste the clipboard to library.json -> it doesn't consume memory so the library.json should not have 0 size

-remove old library_starred_playlist.json and all playlist*json

-create the library_starred_playlist.json based on library.json -> so if this file is correctly generated, your library.json must be ok, can you double check the size, and the content. I myself notice that path finder shows a size of 0 for it sometimes, but when I quicklook on it, i can see that there is data in it

-create playlists.json based on playlist.bnk and then create all playlists_xx.json files

 

So after you clicked "install library", you had a notification saying memory error, right?

 if you have a correct library_starred_playlist.json, then I don't understand how this can happen

 

- I have not set caching of artwork to true

 

Ok

- cleared artwork cache through setting before library install just to be sure

ok

 

Looks like we're almost there. It's odd that it's working alright for you with my library. Does the library.json in the workflow folder come out as the correct size?

 

Thanks for your patience! You'll not be disappointed once we get this fixed 

Share this post


Link to post

Cool, it means that you have a Playlist.bnk file (see my previous post)

 

Yes it looks like I have this file but like you say in your other post, it's not up to date with my latest playlist. Have you managed to find another work around to get an up to date list?

 

So after you clicked "install library", you had a notification saying memory error, right?

 if you have a correct library_starred_playlist.json, then I don't understand how this can happen

Yes this is correct

 

The starred json seems to be correct but still having no luck populating the library properly, I have opened the json in sublime and added the library by hand  which took a while due to the size but seems to have worked correctly. Not ideal but better than nothing!

 

Still don't understand why I'd get an out of memory exception if you are not. Got plenty of memory available here on my MBA (8GB RAM) even done a memory clean to see if it helps with no luck. I'll try closing all over running apps when I get a chance and running a library update.

Edited by WelchWay

Share this post


Link to post

Yes it looks like I have this file but like you say in your other post, it's not up to date with my latest playlist. Have you managed to find another work around to get an up to date list?

 

I am planning to use 'guistate' file instead. It shows the playlists and is really up to date. Can you check on your side that it is up to date with your latest playlists?

 

Yes this is correct

 

The starred json seems to be correct but still having no luck populating the library properly, I have opened the json in sublime and added the library by hand  which took a while due to the size but seems to have worked correctly. Not ideal but better than nothing!

 

Still don't understand why I'd get an out of memory exception if you are not. Got plenty of memory available here on my MBA (8GB RAM) even done a memory clean to see if it helps with no luck. I'll try closing all over running apps when I get a chance and running a library update.

 

Ok I've reproduced your error. I'll investigate why this is happening.

Share this post


Link to post

I am planning to use 'guistate' file instead. It shows the playlists and is really up to date. Can you check on your side that it is up to date with your latest playlists?

 

 

Ok I've reproduced your error. I'll investigate why this is happening.

 

Ok this time I hope this is the good one!! It's working on my side with your library.json.

I could not test with your playlists though because I don't have your playlist.bnk.

 

Let's see if you get issues with playlist

 

 

 
 
1.15: Fix for very large libraries

Share this post


Link to post

Ok this time I hope this is the good one!! It's working on my side with your library.json.

I could not test with your playlists though because I don't have your playlist.bnk.

 

Let's see if you get issues with playlist

 

Cool, i'm just caching artworks so I'll let that finish and give it a go!

Share this post


Link to post

Cache done, library updated without error!

 

Looks like it's not getting all the playlists though, my guistate file contains playlist uri's which aren't reproduced as playlist json files for the mini player...

 

so close!

Share this post


Link to post

Cache done, library updated without error!

 

cool :)

 

Looks like it's not getting all the playlists though, 

 

Currently it uses playlist.bnk, that's maybe why you don't have all your libraries, the 'guistate' is not (yet) implemented

 

my guistate file contains playlist uri's which aren't reproduced as playlist json files for the mini player...

 

yes, guistate is not yet used, that's why :-)

 

 

I'm really interested by your feedback, if you notice some issues or areas of improvement, let me know

Share this post


Link to post

Currently it uses playlist.bnk, that's maybe why you don't have all your libraries, the 'guistate' is not (yet) implemented

 

Ok cool that'll explain it, looking forward to that update :-)

 

Thanks for all your help with getting my huge library working.

 

One thing I was thinking - can the search return Playlists first?

 

As in, I have playlist names which are the artist name (which include only a selection of the artists songs) or happen to match random song/album names in spotify and I would prefer to have the first results be my playlist as opposed to tracks. So if I launch the mini player and type "Paramore" I'd get the "Launch playlist" option followed by track matches.

 

Other than that there's nothing I've found improvement wise but I'll keep you posted!

 

Awesome workflow, thanks for all the hard work.

Share this post


Link to post

Ok cool that'll explain it, looking forward to that update :-)

 

Thanks for all your help with getting my huge library working.

 

One thing I was thinking - can the search return Playlists first?

 

As in, I have playlist names which are the artist name (which include only a selection of the artists songs) or happen to match random song/album names in spotify and I would prefer to have the first results be my playlist as opposed to tracks. So if I launch the mini player and type "Paramore" I'd get the "Launch playlist" option followed by track matches.

 

Other than that there's nothing I've found improvement wise but I'll keep you posted!

 

Yes that makes sense, I'll add it in next release.

 

Awesome workflow, thanks for all the hard work.

 

Thanks!

Share this post


Link to post

Is there a way to launch the starred playlist? 

 

The URI isn't the same as a normal playlist it's just spotify:user:{username/id}:starred

 

Cheers!

Share this post


Link to post

Also, what about having an option in settings to disable the "search with Spotifious" for those who don't have the Spotifious workflow installed?

Share this post


Link to post

Is there a way to launch the starred playlist? 

 

The URI isn't the same as a normal playlist it's just spotify:user:{username/id}:starred

 

Cheers!

 

Added in 2.0  :)

 

Also, what about having an option in settings to disable the "search with Spotifious" for those who don't have the Spotifious workflow installed?

 

Added in 2.0  :)

 

The playlists are now automatically retrieved from 'guistate' file, so it should be up to date. Please update your library!

Playlists appear first in results

 

 

 
 
2.0:
-Automatic support of playlists (including starred playlist)
-Setting to disable spotifious
-alt and cmd modifiers now open and play music

Share this post


Link to post

2.0 is awesome! Looks like the option to launch playlists has been replaced with "Browse playlist" though? Is it possible to have both options/am I missing something.

 

The rebuild of the playlists is working perfectly and is all up to date, maybe you could also display the user name for the playlist somewhere when you search for them so you can identify subscribed lists which match names of your own playlists? The starred list for example.

 

Excellent work!

Share this post


Link to post

2.0 is awesome! Looks like the option to launch playlists has been replaced with "Browse playlist" though? Is it possible to have both options/am I missing something.

 

It is actually still possible, you need to select the playlist first and then you have the option to launch it:

 

EFIw+.png

 

 

The rebuild of the playlists is working perfectly and is all up to date, maybe you could also display the user name for the playlist somewhere when you search for them so you can identify subscribed lists which match names of your own playlists? The starred list for example.

 

Yep, I added it in 2.1. It displays the playlist user and you can search the playlist by user

 

 

 
 
2.1:
-Display user for playlists
-Added settings to launch spotify:app:export app
 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×