foo_softplaylists, Aggregated playlists from last.fm's loved track feature |
![]() ![]() |
foo_softplaylists, Aggregated playlists from last.fm's loved track feature |
Nov 13 2009, 03:52
Post
#1
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
Soft Playlists 2011-02-05
-added Last.fm custom playlist functionality, creating a new one must be done on www.last.fm for now IMPORTANT: For the playlist generation features to work, the foobar2000 Media Library must include at least one folder with music, the more the better! Can create different Last.fm related playlists: ->loved tracks of a single user, multiple users, friends or neighbours. ->recent tracks of a single user, multiple users, friends or neighbours. ->top tracks of a single user, multiple users, friends or neighbours over different periods. ->top tracks of an artist. ->top tracks of artists similar to an artist. ->top tracks with certain tag. ->tracks similar to a track. Can also... -love, unlove, ban and unban a track on your Last.fm account. -add a track to a custom playlist on your Last.fm account. -save and load XSPF playlists (make playlists without hard paths). This makes it possible to easily share playlists with other people. Also when you restructure your library (change location of your music files), these playlists will continue to work. CODE Changelog: 2011-02-05: -added Last.fm custom playlist functionality, creating a new one must be done on www.last.fm for now 2011-02-04: -changed feed downloading to match Last.fm api changes -recent tracks playlist: duplicates are not removed anymore 2011-02-03: -fixed fetching large track feeds for Top Tracks and Recent Tracks 2010-10-21: -fixed sorting top tracks by playcount when including partial title matches 2010-10-20.2: -fixed bug when tracks with only artist or title tag are present in library -more error handling and output 2010-10-20: -fixed partial title matching -more error handling and output 2010-10-16: -added unlove, ban and unban track function -more error handling and output -linked against SDK 2010-10-02 2010-08-28: -added option to also include partial title matches 2010-08-16: -added option to prefer latest or oldest tracks -matching 100000 tracks in a library of 20000 tracks is now 9x faster, now takes 870ms on a core i7 2010-08-15: -added option to prefer highest bitrate, lowest bitrate, longest or shortest tracks 2010-08-11.2: -fetching more than 1500 loved tracks should now work 2010-08-11: -using foobar internal http interface which mean proxy should now work -fixed startup delay issue 2010-08-06: -fixed some bugs 2010-07-08: -Added: Last.fm Top Tracks, Loved Tracks and Recent Tracks for each single user of the custom Last.fm user list 2010-07-06: -Now fully compatible with foobar2000 1.0 2009-12-30.2: -Added: Last.fm User, Friends and Neighbours Recent Tracks -Added: Last.fm Top Tracks, Loved Tracks and Recent Tracks of a custom Last.fm user list 2009-12-30: -Added: Last.fm Top Tags Top Tracks -Added: Last.fm Custom Tags Top Tracks -Added: ability to prefix generated Last.fm playlists -Fixed: crash when loving a track without an internet connection 2009-12-06: -Added: handling of <duration> and <trackNum> tags when saving and loading XSPF playlists -Changed: more error handling 2009-12-05: -Changed: fixed various bugs 2009-12-04: -Added: ability to output unmatched track info to console -Added: aborting code, possibly time consuming tasks can be aborted now -Changed: various strings cleanup 2009-12-03: -Added: Last.fm Similar Artists Top Tracks -Added: Last.fm Similar Tracks -Changed: renamed and added config dialog parameters -Changed: simplified main menu commands layout 2009-12-01.4: -Changed: undid a mistake in the last 2 versions, top tracks from artists with special chars should work again 2009-12-01.3: -Changed: fixed utf8 related bug in saving and loading of XSPF playlists 2009-12-01.2: -Changed: fixed various special character bugs 2009-12-01: -Added: Last.fm Love Track -Added: saving and loading of XSPF playlists -Changed: fixed some bugs -Changed: optimized some code 2009-11-26: -Added: Last.fm Friends Top Tracks over different periods -Added: Last.fm neighbours Top Tracks over different periods 2009-11-22: -Added: Last.fm Friends Loved Tracks -Added: Last.fm Neighbours Loved Tracks -Added: Last.fm User Top Tracks over different periods 2009-11-22: -Added: proper settings dialog 2009-11-19: -Added: Last.fm Artist Top Tracks 2009-11-14: -Changed: optimized the library querying code: 18 times faster for looking up 1000 tracks in a database of 18686 tracks CODE Todo:
-exploit artist.getTopTags, track.getTopTags, tag.getTopArtists, tag.getTopTracks -exploit tag.search, tag.getTopArtists, tag.getTopTracks -exploit user.getRecentTracks in combination with user.getNeighbours, user.getFriends -exploit library.getTracks -option for creating playlist from context menu (on selected tracks) This post has been edited by JohanDeBock: Feb 5 2011, 04:21
Reason for edit: updated link
-------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 13 2009, 04:24
Post
#2
|
|
![]() Group: Members Posts: 216 Joined: 7-November 08 From: H:N:L, UK Member No.: 61899 |
that sounds like an intesesting component, thank you.
look forward to giving it a play with -------------------- http://www.discogs.com/user/jackschmaltz
|
|
|
|
Nov 13 2009, 04:24
Post
#3
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
topic title name is too large as the menu item name (and shouldn't be in "File" instead of "Library")
and entering the name in advanced preferences is not very comfort how about adding matches for artist similar charts (like foo_scrobblecharts which is now problematic component)? This post has been edited by 2E7AH: Nov 13 2009, 04:27 |
|
|
|
Nov 13 2009, 04:46
Post
#4
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
topic title name is too large as the menu item name (and shouldn't be in "File" instead of "Library") and entering the name in advanced preferences is not very comfort how about adding matches for artist similar charts (like foo_scrobblecharts which is now problematic component)? Yeah did't know it wasn't possible to have long titles Library is more logical to me Was a quick way to add the settings. Started from the foo_scrobblecharts code, I couldn't get the code to compile, and because I wanted to learn everything (It's the first time I write a plugin), I wrote this from 0. Normally I will include as much as possible that has something to do with soft playlists. This post has been edited by JohanDeBock: Nov 13 2009, 05:13 -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 13 2009, 05:06
Post
#5
|
|
![]() Group: FB2K Moderator Posts: 4321 Joined: 1-November 06 From: Cincinnati Member No.: 37036 |
Title fixed.
-------------------- "It must be 'Take A Worm For A Walk' week!"
|
|
|
|
Nov 13 2009, 10:23
Post
#6
|
|
|
Group: Members Posts: 296 Joined: 17-February 09 Member No.: 67105 |
sounds very interesting, thank You!
|
|
|
|
Nov 13 2009, 18:05
Post
#7
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
Hmm, I can't edit my own post?
-------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 13 2009, 18:25
Post
#8
|
|
![]() Group: FB2K Moderator Posts: 4321 Joined: 1-November 06 From: Cincinnati Member No.: 37036 |
-------------------- "It must be 'Take A Worm For A Walk' week!"
|
|
|
|
Nov 13 2009, 20:39
Post
#9
|
|
|
Group: Members Posts: 26 Joined: 8-November 07 Member No.: 48566 |
Didn't know I wanted a component like this, but now I do. Thanks!
|
|
|
|
Nov 13 2009, 20:58
Post
#10
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
Didn't know I wanted a component like this, but now I do. Thanks! Yes that was the first plan, but my knowledge in that domain (win gui stuff) is too little at the moment. New version: Soft Playlists 2009-11-13.2 http://telin.ugent.be/~jdebock/foobar2000/...ftplaylists.dll Changed: Optimized the library querying code, should work faster for big libraries and path preferences. -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 13 2009, 21:17
Post
#11
|
|
![]() Group: Members Posts: 61 Joined: 27-January 09 From: Croatia Member No.: 66144 |
Great component! Exactly what i was looking for.
Keep up the good work, adding some new features (playling band's charts and stuff) would be nice too. This is great start. -------------------- http://www.last.fm/user/Nontryer
|
|
|
|
Nov 14 2009, 00:47
Post
#12
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
New version:
Soft Playlists 2009-11-14 Changed: Optimized the library querying code again 4857 ms --> 263 ms For looking up 1000 tracks in a database of 18686 tracks. This should be fast enough This post has been edited by JohanDeBock: Nov 14 2009, 01:05 -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 14 2009, 01:03
Post
#13
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
your link is truncated: http://telin.ugent.be/~jdebock/foobar2000/...ftplaylists.dll
|
|
|
|
Nov 16 2009, 16:20
Post
#14
|
|
![]() Group: Members Posts: 374 Joined: 20-June 05 Member No.: 22863 |
Awesome, AWESOME component! I've always wanted something like this!
-------------------- http://www.last.fm/user/magnumforce2006
|
|
|
|
Nov 16 2009, 18:01
Post
#15
|
|
![]() Group: Members Posts: 1051 Joined: 16-February 08 From: NL Member No.: 51347 |
Excellent! This kind of automation is why we have computers in the first place.
Some suggestions: - shorter menu item label, such as "Generate last.fm Loved playlist". The username is implied, as I'm the one using it. - move preferences to the Tools item, instead of Advanced. They're not advanced options, they're just plain ol' component prefs. There's a lot of potential for expanding the functionality, such as the ability to create playlists from other last.fm sources, with relevant options; generating from other users through a quick dialog window, etc etc. |
|
|
|
Nov 19 2009, 01:34
Post
#16
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
New version:
Soft Playlists 2009-11-19 Added: Last.fm artist top tracks playlist generation. This post has been edited by JohanDeBock: Nov 19 2009, 01:42 -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 19 2009, 03:18
Post
#17
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
works great
now can we expect similar artist charts: artist.getSimilar / if library match artist.getTopTracks / library match / sort all by playcount - it seems easy? |
|
|
|
Nov 19 2009, 05:20
Post
#18
|
|
![]() Group: Members Posts: 374 Joined: 20-June 05 Member No.: 22863 |
foo_scrobblecharts actually already does what you're asking:
http://www.hydrogenaudio.org/forums/index....showtopic=53695 -------------------- http://www.last.fm/user/magnumforce2006
|
|
|
|
Nov 19 2009, 11:56
Post
#19
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
Indeed it is more or less a contination, a much speedier one.
Top Charts was already included, Loved Tracks not. And foo_scrobblecharts has been put on the crash list. This post has been edited by JohanDeBock: Nov 19 2009, 11:57 -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 19 2009, 12:00
Post
#20
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
works great now can we expect similar artist charts: artist.getSimilar / if library match artist.getTopTracks / library match / sort all by playcount - it seems easy? Will do it in next version. -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 19 2009, 16:18
Post
#21
|
|
![]() Group: Members Posts: 374 Joined: 20-June 05 Member No.: 22863 |
Indeed it is more or less a contination, a much speedier one. Top Charts was already included, Loved Tracks not. And foo_scrobblecharts has been put on the crash list. True. I also like how this component doesn't automatically start playing the playlist like scrobblecharts did. However, if this component will be a full replacement, I might also make a request for a "sort" option... Which just sorts the selected artist tracks by their placement in their last.fm top tracks list. This is a handy feature for quickly finding that artists most popular songs when they are already in a playlist. -------------------- http://www.last.fm/user/magnumforce2006
|
|
|
|
Nov 22 2009, 04:34
Post
#22
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
-------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 22 2009, 04:48
Post
#23
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
filesize is half than previous, and you managed to make preferences page but I guess you will need to update it for newest foobar version
|
|
|
|
Nov 22 2009, 14:04
Post
#24
|
|
|
Group: Developer Posts: 250 Joined: 23-March 05 Member No.: 20866 |
filesize is half than previous, and you managed to make preferences page but I guess you will need to update it for newest foobar version Ok, will have a look what the problems are, is there some info on what has changed or what I should change to get it working again? -------------------- foo_softplaylists: http://tiny.cc/kh9m9
|
|
|
|
Nov 22 2009, 14:27
Post
#25
|
|
![]() Group: FB2K Moderator Posts: 2359 Joined: 30-November 07 Member No.: 49158 |
The preferences API changed to work in the new/traditional Apply/OK/Cancel mode. But the updated SDK is not out yet, so nothing you can do now anyway.
-------------------- Full-quoting makes you scroll past the same junk over and over.
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 24th May 2013 - 20:31 |