Page 1 of 2

MM5 and Spotify [#16521]

Posted: Sun May 06, 2018 4:02 pm
by UnderCoverGuy
I see discussion about MM5 integration with Google Music. I was wondering if anyone is planning to get MM5 to work with Spotify as well? I've spent many a day/night organizing my library in MM because I like the features that MM offers, second to none really. But you have to admit that streaming is the future and I've not really seen anyone offer a solution for organization and management of Spotify music and playlists. And since Spotify now has an API in the works (see Web Playback SDK), I was just wondering if that is something that is being looked into for MM5 (if it's even possible to do)?


Thanks,
UCG

Re: MM5 and Spotify

Posted: Sun May 06, 2018 6:53 pm
by Peke
Hi,
While reading https://beta.developer.spotify.com/terms/ it would be very complicated legal process to make such Plugin for MM5, but it should be easy for them to make it.

Re: MM5 and Spotify

Posted: Mon May 07, 2018 7:03 pm
by UnderCoverGuy
Bummer...but thanks for the quick reply

Re: MM5 and Spotify

Posted: Thu Feb 14, 2019 9:02 am
by CybranM
Old topic I know, it would be fantastic with some sort of integration with MediaMonkey.
I've switched completely to Spotify now but I really miss a lot of features in MM :(

Re: MM5 and Spotify

Posted: Thu Apr 16, 2020 6:17 pm
by ninerays
Not sure why there would be a legal problem when Spotify's API is open and anyone is able to create an app using users's data from Spotify? I too have been using MediaMonkey for years, but do so less and less now due to having Spotify on all my devices. Integration would provide the best of both worlds and would allow for MediaMonkey to be an option for the future.

Re: MM5 and Spotify

Posted: Fri Apr 17, 2020 6:41 am
by Ludek
Hi,
Peke probably meant the red text "This SDK must not be used in commercial projects without Spotify's prior written approval"
on the ""Web Playback SDK" reference: https://developer.spotify.com/documenta ... yback-sdk/
The "Web Playback SDK" api is not sufficient anyhow -- as it cannot manipulate the Spotify content.

Luckily Spotify already has "Web API" that allows manipulating the content:
https://developer.spotify.com/documenta ... reference/

This REST api could be operated same way as others cloud services currently integrated in MM5 (OneDrive, Google Play Music, Google Drive, DropBox)

Tracked this item as https://www.ventismedia.com/mantis/view.php?id=16521 to be implemented.

Re: MM5 and Spotify

Posted: Fri Apr 17, 2020 2:48 pm
by Ludek
Playing with it a little today and here is the first working version of the Spotify script: https://www.dropbox.com/sh/2c2h3ycts1ox ... 2heCa?dl=0

It can browse user playlists and playlist content and play the tracks as 30 seconds previews.

1) Install the script via Tools > Extensions >Add
2) Go to 'Devices & Services' node and click the (+) button next to the 'Storage & Services' :
https://www.dropbox.com/s/88g2x6sv6sels ... 3.png?dl=0
3) Give it access and feel free to browse your Spotify playlists in MM5 ;-)
See: https://www.dropbox.com/s/wsf8zjqx81tok ... 6.png?dl=0


The goal (todo) is ability to sync/edit the playlists. We probably cannot do much as it is not like Google Play Music where one can upload 50K of own tracks and edit also track metadata in GPM library (not just playlists like with Spotify)

Re: MM5 and Spotify

Posted: Sat Apr 18, 2020 4:52 am
by ninerays
Fantastic work Ludek. I installed MM5 beta and had a play. It connected to my account OK and showed me 20 of my playlists (I have more than 20 though). As you say it can play 30 secs of each song in a playlist. A great start - nice work.

Sync not working but then not surprised as matching songs would be a lot more work. Check out how this app does this - https://www.microsoft.com/en-au/p/playl ... verviewtab. Hopefully the Spotify integration will allow the same workflow (but much more elegantly of course)?

Other ideas for Spotify integration:
* Play MM playlists on Spotify
* Import metadata (only) into MM Library from Spotify and create new playlists that play back on Spotify. I'll unpack this a bit:

For me the bottom line is that MediaMonkey is the most powerful music database available and the potential of being able to use MediaMonkey to create Spotify Playlists would be my music organization Nirvana. Playing Spotify playlists in MM is not the goal for me. It is the other way around - playing MM playlists in Spotify. I have been an avid MM Gold user for at least 16 years but now my default music player is Spotify as it can be used on all devices, OSs and have multiple accounts for family members and I don't need to download music. Clearly today's music players are dominated by streaming services. However none of them have the power of MediaMonkey to manipulate music metadata and create intelligent playlists. I believe that with the capability to create playlists from streaming services' libraries that can then be sent back to the streaming service to play would put MediaMonkey at the forefront of managing music into playlists (once again).

I know that this would be a lot of work but I believe this work would allow MediaMonkey to continue to be being relevant for many more people going forward and increasing the user base.

Check out: http://sortyourmusic.playlistmachinery. ... es_in=3600

The above web app demonstrates that you can see far more metadata than Spotify's own apps allows you to see and gives you the ability to sort playlists made by yourself, others or Spotify themselves (once added to your Spotify Library) by many other fields. For example; Popularity, Release date, energy level, Danceability, Acoustic(ness), musical positiveness (valence). there may well be other fields available via the API?

Could MediaMonkey take advantage of all of this metadata and incorporate it?

Would be interested in your thoughts.

Cheers

Re: MM5 and Spotify

Posted: Sat Apr 18, 2020 4:05 pm
by Ludek
Hi, yes, syncing user's playlist is the goal.

Re listing of 20 playlists only: Thanks, fixed in build 2243 + added scanning of Spotify playlists into MM5 library (under Spotify parent playlist).
Note that the files are matched with your local files based on metadata, so e.g. in my "Oblibene" playlist I have 3 tracks and 2 of them were matched with tracks that I already had on my NAS, see: https://www.dropbox.com/s/0zxrpxrtht6i2 ... 2.png?dl=0

Going to finish the MM5 > Spotify syncing when time permits, I am just afraid about performance, as it needs to match every track based on metadata -- so at least the first sync of MM5 playlists to Spotify will be probably very slow for large playlists and large number of playlists.

The script will be available in /SampleScripts/ sub-folder of every new build for anyone interested.

EDIT: I also uploaded the new version of the script here: https://www.dropbox.com/sh/2c2h3ycts1ox ... 2heCa?dl=0

Re: MM5 and Spotify [#16521]

Posted: Mon Apr 20, 2020 8:11 pm
by cokehearth
A Spotify feature I would love is to have Spotify playlists converted to local ones.

I still primarily use Mediamonkey (simply because Spotify doesn't have a rating system, nor all the music I like), but my friends have some really great playlists on there. It'd be great if such playlists could be matched to my Mediamonkey tracks to make Mediamonkey playlists (obviously, tracks not in the library wouldn't get matched).

Probably a very specific use that would be too difficult to implement!

Re: MM5 and Spotify [#16521]

Posted: Tue Apr 21, 2020 3:38 am
by Ludek
@cokeheart:

But this is already implemented and working ;-)
Have you tried my script?


1) Download the script from https://www.dropbox.com/sh/2c2h3ycts1ox ... 2heCa?dl=0
2) Install the script via Tools > Extensions >Add
3) Go to 'Devices & Services' node and click the (+) button next to the 'Storage & Services' :
https://www.dropbox.com/s/88g2x6sv6sels ... 3.png?dl=0
4) Go to 'Devices & Services > Spotify'
check '[x] Scan Spotify content to the local database'
uncheck '[ ] Sync 'Spotify' metadata to the library'
5) Click [Apply] and [Sync now]

=> your Spotify playlists are scanned to your MM5 database and you will find them under 'Spotify' parent playlist.
The tracks will be matched with you local tracks (those that already exists locally): https://www.dropbox.com/s/0zxrpxrtht6i2 ... 2.png?dl=0

Just try it and let me know how it works for you.

Re: MM5 and Spotify [#16521]

Posted: Sat Apr 25, 2020 5:54 am
by cokehearth
Ludek wrote:
Tue Apr 21, 2020 3:38 am
@cokeheart:

But this is already implemented and working ;-)
Have you tried my script?


1) Download the script from https://www.dropbox.com/sh/2c2h3ycts1ox ... 2heCa?dl=0
2) Install the script via Tools > Extensions >Add
3) Go to 'Devices & Services' node and click the (+) button next to the 'Storage & Services' :
https://www.dropbox.com/s/88g2x6sv6sels ... 3.png?dl=0
4) Go to 'Devices & Services > Spotify'
check '[x] Scan Spotify content to the local database'
uncheck '[ ] Sync 'Spotify' metadata to the library'
5) Click [Apply] and [Sync now]

=> your Spotify playlists are scanned to your MM5 database and you will find them under 'Spotify' parent playlist.
The tracks will be matched with you local tracks (those that already exists locally): https://www.dropbox.com/s/0zxrpxrtht6i2 ... 2.png?dl=0

Just try it and let me know how it works for you.
OH, LUDEK! :D :D :D

If this does what I hope it does, I may just have to give you some kind of unofficial National Order. I'm still on MM4 for the timebeing, but I'll install MM5 Beta and see how I go.

Many thanks!

Re: MM5 and Spotify [#16521]

Posted: Sat Apr 25, 2020 12:37 pm
by Lowlander
You can install MM5 as a Portable Install so it doesn't mess with your system. You can also copy your MM5 database to the MM5 database location to have it imported (I think you need to delete the MM5 database first to do this and then start MM5).

Re: MM5 and Spotify [#16521]

Posted: Sat Apr 25, 2020 2:28 pm
by Ludek
MM5 asks for importing MM4 datadase -- so no need to manually copy anything.
Also the default location for MM5 db is different from MM4 -- so MM4 install is preserved.

Re: MM5 and Spotify [#16521]

Posted: Sun May 03, 2020 3:22 am
by cokehearth
Hi Ludek,

I had a play with your extension, and it looks great!

The only problem I have with my library is that with matching, the Album title - due to the nature of Spotify - doesn't seem to match unless it is exact.

For example, I have the Cocteau Twins album "Heaven or Las Vegas", but on Spotify this is called "Heaven or Las Vegas (Remastered)", and so the two don't match up. If I rename it to include '(Remastered)', it does so perfectly, which is great. But because my music collection is mainly old stuff, a lot of that ends up on Spotify with titles such as "Remastered" on it, because they tend to be added to streaming services in their remastered form. At the same time, of course, I understand that the album title is important for matching.

Now in my scenario, all my playlists on Spotify tend to be made up of different tracks from various albums. So what would be ideal for me (and I stress, I have no idea how useful it would be for others, and I can only imagine how much work you'd have to put in), would be an option to match-up by artists and tracks only. So that Madonna's "Like a Prayer" could match up and sync with my local track whether it's on the "Like a Prayer" album, or "The Immaculate Collection", "Celebration" or indeed "The World's Best Compilation for People with the World's Worst Taste in Music".

I hope I'm making sense!

Is this at all possible, and even if so, is it a feature you'd want to implement?

But I have to say, great work!