Page 1 of 1

Support for The Echo Nest for Smart Playlists

PostPosted: Thu Jul 28, 2011 7:37 pm
by KillerSaurus
I've been searching high and low for a program that would allow me to create Genius-like or Pandora-like playlists by selecting a song or artist from my collection. The Echo Nest seems the ideal solution that could be woven into Subsonic. Any chance of this happening?

http://developer.echonest.com/docs/v4/

PostPosted: Tue Aug 02, 2011 8:40 pm
by mindtouch
+1 !!!!

I've also been looking high and low for this. Adding this feature would be amazing!

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Sun Jan 26, 2014 8:13 pm
by aforest
+1

I really enjoy using Smartmix on squeezebox

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Sun Feb 09, 2014 4:22 pm
by xnor
+1 This could be a really nice way to explore a large library of music.

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Mon Oct 13, 2014 9:39 pm
by nicnicnic
I would absolutely love this feature.

Here's two actual use cases I'd love to have:

Smart playlist via Artist(s)

1) Choose an artist or artists from within subsonic
2) Send those artists to the echo nest's similar api. Example:

Request:
Code: Select all
http://developer.echonest.com/api/v4/artist/similar?api_key=XXXXXXXXXXXXXXX&name=Radiohead,Muse&format=json&results=5

Response:
Code: Select all
{"response":
  {"status": {"version": "4.2", "code": 0, "message": "Success"},
   "artists": [
      {"id": "ARH1N081187B9AC562", "name": "Thom Yorke"},
      {"id": "ARW64KS1187FB3C94D", "name": "Doves"},
      {"id": "AR0L04E1187B9AE90C", "name": "The Verve"},
      {"id": "ARTNON61187B98D6EE", "name": "Elbow"},
      {"id": "ARG7LMD1187FB4B064", "name": "Mansun"}]
    }
  }

3. Using the response from #2, search the subsonic library for artists matching in the response and build a random playlist.

Smart Playlist via songs

1. Get song id first:
Request:
Code: Select all
http://developer.echonest.com/api/v4/song/search?api_key=XXXXXXX&format=json&results=1&artist=radiohead&title=karma%20police&bucket=id:7digital-US&bucket=audio_summary&bucket=tracks

Response:
Code: Select all
{"response": {"status": {"version": "4.2", "code": 0, "message": "Success"}, "songs": [{"title": "Karma Police", "artist_name": "Radiohead", "artist_foreign_ids": [{"catalog": "7digital-US", "foreign_id": "7digital-US:artist:304"}], "tracks": [{"album_type": "album", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001044_200.jpg", "album_date": "1997-07", "foreign_release_id": "7digital-US:release:1044", "preview_url": "http://previews.7digital.com/clip/9519", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9519", "album_name": "Karma Police", "id": "TRBOAZJ12E5AC28DC9"}, {"album_type": "album", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001045_200.jpg", "album_date": "1997-07", "foreign_release_id": "7digital-US:release:1045", "preview_url": "http://previews.7digital.com/clip/9522", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9522", "album_name": "Karma Police", "id": "TRAFHFF12E5AC28DCC"}, {"album_type": "unknown", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/009/0000000975_200.jpg", "album_date": "1997-05-21", "foreign_release_id": "7digital-US:release:975", "preview_url": "http://previews.7digital.com/clip/9091", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9091", "album_name": "OK Computer", "id": "TRHSRKE12E5AC28D99"}, {"release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/050/0000405065_200.jpg", "foreign_release_id": "7digital-US:release:405065", "preview_url": "http://previews.7digital.com/clip/4501647", "catalog": "7digital-US", "foreign_id": "7digital-US:track:4501647", "id": "TRVVORR12E5AC28E50"}], "audio_md5": "2bf291a7113c9d7b2894d1c2b670e46f", "artist_id": "ARH6W4X1187B99274F", "id": "SOHJOLH12A6310DFE5", "audio_summary": {"key": 7, "analysis_url": "http://echonest-analysis.s3.amazonaws.com/TR/zxyg1QNPX7BKHZuXe87DL6Zcz3p3Ul7oYMAHvjrrcmL_jEXf2PoMuuf0ha9az1ygUUlK3GAwYfFvRjx3I%3D/3/full.json?AWSAccessKeyId=AKIAJRDFEY23UEVW42BQ&Expires=1413237874&Signature=F5MNq5ezjMbIZBcypG1L%2B6bsnUE%3D", "energy": 0.53012599999999999, "liveness": 0.14855499999999999, "tempo": 74.954999999999998, "speechiness": 0.027265999999999999, "acousticness": 0.084666000000000005, "instrumentalness": 0.00020000000000000001, "mode": 1, "time_signature": 4, "duration": 261.63954999999999, "loudness": -8.7100000000000009, "audio_md5": "2bf291a7113c9d7b2894d1c2b670e46f", "valence": 0.340393, "danceability": 0.428311}}]}}

2. Using song id(s) from the previous echo api call, create an echo playlist:
Request:
Code: Select all
http://developer.echonest.com/api/v4/playlist/static?api_key=XXXXXXXX&song_id=TRVVORR12E5AC28E50&format=json&results=20&type=song-radio

Response:
Code: Select all
{"response": {"status": {"version": "4.2", "code": 0, "message": "Success"}, "songs": [{"title": "Karma Police", "artist_name": "Radiohead", "artist_foreign_ids": [{"catalog": "7digital-US", "foreign_id": "7digital-US:artist:304"}], "tracks": [{"album_type": "album", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001044_200.jpg", "album_date": "1997-07", "foreign_release_id": "7digital-US:release:1044", "preview_url": "http://previews.7digital.com/clip/9519", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9519", "album_name": "Karma Police", "id": "TRBOAZJ12E5AC28DC9"}, {"album_type": "album", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001045_200.jpg", "album_date": "1997-07", "foreign_release_id": "7digital-US:release:1045", "preview_url": "http://previews.7digital.com/clip/9522", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9522", "album_name": "Karma Police", "id": "TRAFHFF12E5AC28DCC"}, {"album_type": "unknown", "release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/009/0000000975_200.jpg", "album_date": "1997-05-21", "foreign_release_id": "7digital-US:release:975", "preview_url": "http://previews.7digital.com/clip/9091", "catalog": "7digital-US", "foreign_id": "7digital-US:track:9091", "album_name": "OK Computer", "id": "TRHSRKE12E5AC28D99"}, {"release_image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/050/0000405065_200.jpg", "foreign_release_id": "7digital-US:release:405065", "preview_url": "http://previews.7digital.com/clip/4501647", "catalog": "7digital-US", "foreign_id": "7digital-US:track:4501647", "id": "TRVVORR12E5AC28E50"}], "audio_md5": "2bf291a7113c9d7b2894d1c2b670e46f", "artist_id": "ARH6W4X1187B99274F", "id": "SOHJOLH12A6310DFE5", "audio_summary": {"key": 7, "analysis_url": "http://echonest-analysis.s3.amazonaws.com/TR/zxyg1QNPX7BKHZuXe87DL6Zcz3p3Ul7oYMAHvjrrcmL_jEXf2PoMuuf0ha9az1ygUUlK3GAwYfFvRjx3I%3D/3/full.json?AWSAccessKeyId=AKIAJRDFEY23UEVW42BQ&Expires=1413237874&Signature=F5MNq5ezjMbIZBcypG1L%2B6bsnUE%3D", "energy": 0.53012599999999999, "liveness": 0.14855499999999999, "tempo": 74.954999999999998, "speechiness": 0.027265999999999999, "acousticness": 0.084666000000000005, "instrumentalness": 0.00020000000000000001, "mode": 1, "time_signature": 4, "duration": 261.63954999999999, "loudness": -8.7100000000000009, "audio_md5": "2bf291a7113c9d7b2894d1c2b670e46f", "valence": 0.340393, "danceability": 0.428311}}]}}

3. Using the echo playlist response, try to create a subsonic playlist using songs returned from the echo playlist response.
Request:

More info here: http://developer.echonest.com/docs/v4/a ... ml#similar

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Thu Nov 20, 2014 5:44 pm
by sindre_mehus
This is coming in Subsonic 5.1, based on the LastFM API.

Sindre

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Thu Nov 20, 2014 6:12 pm
by daneren2005
Is there any chance you can add to the API a way to request even false hits? IE have a param includeFalse or something which will have entries which aren't on your server. I would like to be able to expand on the basic functionality to enable content discovery as well. Finding new music always means I have to go outside Subsonic, but this could make it so I could at least get suggestions based on what I already listen to.

Sent from my Nexus 5 using Tapatalk

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Thu Nov 20, 2014 7:07 pm
by sindre_mehus
daneren2005 wrote:Is there any chance you can add to the API a way to request even false hits? IE have a param includeFalse or something which will have entries which aren't on your server. I would like to be able to expand on the basic functionality to enable content discovery as well. Finding new music always means I have to go outside Subsonic, but this could make it so I could at least get suggestions based on what I already listen to.


Sure, I'll look into that.

Sindre

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Fri Nov 21, 2014 5:57 pm
by nicnicnic
sindre_mehus wrote:This is coming in Subsonic 5.1, based on the LastFM API.

Sindre


Amazing, thanks so much!

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Tue Jan 13, 2015 12:16 pm
by chugmonkey
Just wanted to pop in and say thanks for a fantastic new feature!!! I use the last.fm radio every day now in my library. I've had suggestions of songs in my library that haven't been heard in ages... songs I've loved many years ago and nearly forgotten about. This is a GAME CHANGER for me as it has found a bunch of stuff in my compilations I'd forgotten about too.

Thanks Sindre!

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Tue Jan 13, 2015 6:55 pm
by sindre_mehus
Cool! Glad you find it useful :)

Re: Support for The Echo Nest for Smart Playlists

PostPosted: Mon Feb 16, 2015 9:44 pm
by kenbreak
Hi everyone and thanks a lot Sindre for this new feature !!!