ScrobblerDJ v1.26, Let your music free!!!

Download and get help for different MediaMonkey Addons.

Moderators: Peke, Gurus

psyXonova
Posts: 785
Joined: Fri May 20, 2005 3:57 am
Location: Nicosia, Cyprus
Contact:

Post by psyXonova » Mon May 29, 2006 8:52 am

First of all i would like to apologise to all the funs of the script that suggested their really wonderfull ideas for my long absent...

Several things kept me away from scripting the last months i really hope to come back active soon...

Some comments to share with you....

About the last discussion conserning the alteration of Last.FM content...
Yes from the first moment i released this script i realized that if it ever becomes popular then it would create problems since a "feedback event" would occur; a track is recomended from last.FM which is then reported back to last.FM as a played song....
I dont know if there is a scripting sollution for this.. best option would be to disable the LAST.FM plugin once scroblerDJ starts...
This is what i do, but offcourse manually, the ideal is to be done automatically... I will look into it, it might be really simple.

As for the "offline" mode. When i started developing this script i wanted it to be able to run in 2 modes, the "online" which we all know, and an "offline" one which would be something like a batch-query mode.
But then i discovered that Last.FM only allows a query per seconds to their servers or else the quring IP (your computer) will be banned for ever.
Now lest do some simple maths.... ScrobblerDJ queries Last.FM 2 times whenver it wants to add a song, once to get the related artists and once to get the top tracks of the artist...
If i use the same model for batch-quering then this means that to create a list of 50 tracks we are going to wait at least 100 seconds plus prossesing time. As you can see this is not a good option....
Another sollution would be to take the list of related artists only and then pick songs from our library based on a mixture of randomness plus MM statistics (like rating, times played etc), but then we wouldnt listen to Last.FM recomendations, would we????
So, a discussion on this would really help me pick the appropiate method (if there is one). In anycase this option is much harder to implement than it looks (it is not just a simple loop) so dont expect any change on that soon...

As for the other ideas (e.g. query last.FM even if not the last playlist song, qurey last.FM for artist's top tracks, limit the results based on genre or the last time the song played etc) i really like them, and some of them are on the way of being implemented really soon.....

Just keep in mind that although the developement of this script isn't dead, from now on it would be much slower since my free time is shrinking and i want to spend most of my time to new scripts... (i have some REALLY cool ideas :lol: :lol: )

THANKS AGAIN

Big_Berny
Posts: 1784
Joined: Mon Nov 28, 2005 11:55 am
Location: Switzerland
Contact:

Post by Big_Berny » Mon May 29, 2006 9:00 am

psyxonova wrote:Now lest do some simple maths.... ScrobblerDJ queries Last.FM 2 times whenver it wants to add a song, once to get the related artists and once to get the top tracks of the artist...
If i use the same model for batch-quering then this means that to create a list of 50 tracks we are going to wait at least 100 seconds plus prossesing time. As you can see this is not a good option....
For me that would be ok! I'd really like to use ScriobblerDJ on my ipod and if it would take one minute to create a playlist for one hour (30 songs should be enoough!), that would be great already.
And: If it would save the suggested tracks into a specific playlist you could also listen music while the playlist will be createt!

Big_Berny

trixmoto
Posts: 10024
Joined: Fri Aug 26, 2005 3:28 am
Location: Hull, UK
Contact:

Post by trixmoto » Mon May 29, 2006 9:18 am

Yeah, as long as the list is being created faster than you're listening to the music, it sounds like a good solution to me! :)

I'm very interested in the new ideas though! :D
Download my scripts at my own MediaMonkey fansite.
All the code for my website and scripts is safely backed up immediately and for free using Dropbox.

shao

self-perpetuating

Post by shao » Mon May 29, 2006 11:16 am

Just a thought, but if everyone who uses this uses it most of the time, last.fm will slowly become self-perpetuating. i.e. artists that are already considered" "related" in last.fm will be made more strolngly related, as they will be played consecutively, and then uploaded to last.fm, so it asks last.fm for reccomendation, and then sends it back as a "reccomendation" from you. I guess this only applies to people using both this and the AudioScrobbler plugin, but i would guess ppl who use one are likely to use the other...

Big_Berny
Posts: 1784
Joined: Mon Nov 28, 2005 11:55 am
Location: Switzerland
Contact:

Post by Big_Berny » Mon May 29, 2006 1:18 pm

Between, Last.fm only looks what you played totally (over the period you are member), isn't it. So it makes no difference if you play your songs randomly or grouped with ScrobblerDJ. And: You must have the songs on your library anyhow. So it really (almost) doesn't affect last.fm...

Big_Berny

oldskool73
Posts: 38
Joined: Sat May 27, 2006 3:50 pm
Contact:

Post by oldskool73 » Mon May 29, 2006 3:20 pm

Another suggestion, how about a delay of (e.g.) 10 seconds after a tune has started playing before the Last.fm query is sent. If another tune is played in this time the previous query is canceled and a new timer is started for the new request and so on....

The reason being, I sometimes skip a couple of tracks at a time quickly with the 'next' button, and this leaves multiple requests to Last.fm queued up for songs I'm not actually listening to.

It might also reduce the possibility of peoples IP's being accidentally banned by Last.fm for frequent rapid requests?

I did take a look at the code to add this myself, but you've got all kinds of funky timers going off and I didn't want to break anything ;)

DaledeSilva
Posts: 893
Joined: Sun May 28, 2006 4:22 am
Location: Australia
Contact:

Post by DaledeSilva » Mon May 29, 2006 5:46 pm

Big_Berny, last.fm does look at the totals over your time to create the 'totals' statistics section of your last.fm page... but it has to look at what's played consecutively as well or it wouldn't be able to gather any information on relationships.

shao, I mentioned exactly what you mentioned one page ago; and psyzonova just mentioned it a couple of posts above yours.

Dale.
My Plugins: PrettyPictures [v0.9.2], Forget Crossfade [v1.0], Behind Titlebars [v0.9], Filter Nodes [v1.0.1], View Mode [1.0], BPM.tapper [v1.0]
My Site: http://www.ublik-om.net

Guest

Post by Guest » Mon May 29, 2006 6:13 pm

Sorry my bad, too lazy to read all 19 pages but i should have read this one at least :oops:
Also, i forgot to praise the author for this brilliant plugin, consider yourself praised.

DaledeSilva
Posts: 893
Joined: Sun May 28, 2006 4:22 am
Location: Australia
Contact:

Post by DaledeSilva » Mon May 29, 2006 8:26 pm

I didn't read the 19 pages either... I just made a half hearted search effort.. lol
My Plugins: PrettyPictures [v0.9.2], Forget Crossfade [v1.0], Behind Titlebars [v0.9], Filter Nodes [v1.0.1], View Mode [1.0], BPM.tapper [v1.0]
My Site: http://www.ublik-om.net

Big_Berny
Posts: 1784
Joined: Mon Nov 28, 2005 11:55 am
Location: Switzerland
Contact:

Post by Big_Berny » Tue May 30, 2006 2:27 am

@DaledeSilva:
WEll, I think that last.fm just shows "People who listen A also listen B". Isn't that true? If not everyone who listens random songs will completely destroy the idea of last.fm.
And I also don't think that there aren't enough people who listen to different artist with similar songs one after the other to create such a good database like last.fm.
I really doubt that it works the way you say, DaledeSilva... Wha't could be: Maybe it looks what song you heard in a day or a week.

Big_Berny

trixmoto
Posts: 10024
Joined: Fri Aug 26, 2005 3:28 am
Location: Hull, UK
Contact:

Post by trixmoto » Tue May 30, 2006 3:51 am

I don't see a problem with this feedback loop at all. It shows that someone who has song A also has suggested song B, which means that it is a good suggestion! It strengthens bonds which should be strengthened, which is not bad thing. It removes some of the randomness and in my opinion, actually helps to build a better database.
Download my scripts at my own MediaMonkey fansite.
All the code for my website and scripts is safely backed up immediately and for free using Dropbox.

shao

Post by shao » Tue May 30, 2006 11:01 am

trixmoto wrote: It strengthens bonds which should be strengthened, which is not bad thing. It removes some of the randomness and in my opinion, actually helps to build a better database.
The point is, listening to music as you normally would, without ScrobblerDJ is anything but "random" as both you and Big_Berny are implying.
Big_Berny wrote: So it makes no difference if you play your songs randomly or grouped with ScrobblerDJ
Indeed it does make a difference, but this isnt even the point, the point is it makes a HUGE difference whether you personally select the songs you are going to listen to (which is the premise last.fm is made around, ppl who always listen to their whole collection on random and upload the results to last.fm are reducing the effectiveness of last.fm as a method of monitoring relationships between the artists people choose to listen too) or allow last.fm so reccomend you tracks every time. One tells last.fm what people choose to listen to, the other tells last.fm about the relationships that alreay exist in it's database. The point here is that as it stands if you use both plugins consistanty, there is very little chance (depending onthe size of your collection, and how often scrobbler falls back to the default playlist) that any new associations in Last.fm can come from it, all that can happen is existing relationships are constantly strengthened.
re-reading some of that, i guess it depends whether you want last.fm to tell you what other artists people who listen to a certain artist own, or what they would choose listen too...

DaledeSilva
Posts: 893
Joined: Sun May 28, 2006 4:22 am
Location: Australia
Contact:

Post by DaledeSilva » Tue May 30, 2006 6:00 pm

Big_Berny:
So it makes no difference if you play your songs randomly or grouped with ScrobblerDJ
Playing on random is very different to playing with Scrobbler DJ as random increases playcounts and relationships with 'all' tracks indiscriminantly. Scrobbler DJ, however, takes what is already ahead of the pack and pushes it further making it continually harder for the others to catch up (which means it will prevent changes in dominance of tracks occuring - and new songs will find it very difficult to catch up and gain a place)


trixmoto:
It strengthens bonds which should be strengthened
The difference in random and Scrobbler DJ shows why the bonds shouldn't be strengthened. Also, we're not talking about strengthening these tracks once. We're talking about REPEATEDLY strengthening the tracks and the stronger they get the more they will be strengthened again. So they will take off like rockets and leave everything else for dead; preventing 'any' new paterns from emerging (old songs OR newer songs).

trixmoto:
It removes some of the randomness and in my opinion, actually helps to build a better database.
If it WAS only strengthening the tracks once, then yes, I can see how you could argue this. But it's not.. it's doing it repeatedly, so it's 'warping' the database, not helping it.


I was thinking about showing the difference by creating a graphed example in flash to simulate it but I haven't.. if anyone is interested in it I will.

Dale.
My Plugins: PrettyPictures [v0.9.2], Forget Crossfade [v1.0], Behind Titlebars [v0.9], Filter Nodes [v1.0.1], View Mode [1.0], BPM.tapper [v1.0]
My Site: http://www.ublik-om.net

DaledeSilva
Posts: 893
Joined: Sun May 28, 2006 4:22 am
Location: Australia
Contact:

Post by DaledeSilva » Tue May 30, 2006 6:16 pm

psyxonova:
Now lest do some simple maths.... ScrobblerDJ queries Last.FM 2 times whenver it wants to add a song, once to get the related artists and once to get the top tracks of the artist...
If i use the same model for batch-quering then this means that to create a list of 50 tracks we are going to wait at least 100 seconds plus prossesing time.
This is true if you want the playlist generated to be progressive like the now playing list scrobbler DJ creates.. however, if you want the whole playlist to have the same theme (which I think in 'most' cases 'might' be preferred - perhaps an option?) you could reduce the time of 50 tracks to 51 seconds... or 100 tracks to 101 seconds.

Progressive:
Each track added is based on the recommendations produced from the track directly before it. (which means the last track could be completely unrelated to the very first track in the sequence).

non-Progressive:
For the track selected, the Database is queried for related artists. The database is never queried again for related artists but simply for recommended tracks. Which means 1 query for artists, 50 queries for tracks = 51 seconds.



Also... I'm really keen to hear what other scripts you have up your sleeve... do you have any links to development of these where I could check them out?

Dale.
My Plugins: PrettyPictures [v0.9.2], Forget Crossfade [v1.0], Behind Titlebars [v0.9], Filter Nodes [v1.0.1], View Mode [1.0], BPM.tapper [v1.0]
My Site: http://www.ublik-om.net

Teknojnky
Posts: 5533
Joined: Tue Sep 06, 2005 11:01 pm
Contact:

Post by Teknojnky » Tue May 30, 2006 7:05 pm

Maybe this is a discussion that should be with the last.fm developers... I am pretty sure they had things similar to scrobbler dj in mind during the course of developing last.fm... if they didn't then they very well should have.

As has already been mentioned, not only does scrobbler dj potentially affect relationships, but also so does simply doing random on one's entire library, as does playing any album all the way through.

I would expect that last.fm developers are smart enough to take into account various situations which can affect relationships on a larger scale.

In any case, scrobbler dj is a great concept, coupled with a well chosen default auto-playlist, it suites me great.

Locked