Skip to main content
Topic: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript) (Read 5639 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #25
Thank you for this component, it's greatly appreciated! :)

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #26
Hi everyone,

Just wanted to see if anyone else was having issues with this component crashing when playing MP4 files (or any other file type).

Thanks!

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #27
annalise, can you try this version and let me know if it fixes your problem? If so I'll push it to the registry. I didn't have a check to ensure a song had all the required fields needed to retrieve last.fm playcounts. I'm guessing your videos had artist and title set, but probably not album (or something along those lines).

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #28
hiya, everything seems to be good now, no more crash! thanks!

edit: good guess on the artist/title bit!

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #29
This is awesome. Thanks!

 

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #30
the %lastfm_play_count% returns incorrect value when you listen to a lot of songs of one artist ? anyone has the same problem ?

one of the song I had the problem with, it only returns ~20 times playcount
https://www.last.fm/user/trungdaibang/library/music/Fear,+and+Loathing+in+Las+Vegas/_/Chase+the+Light!


Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #31
the %lastfm_play_count% returns incorrect value when you listen to a lot of songs of one artist ? anyone has the same problem ?

one of the song I had the problem with, it only returns ~20 times playcount
https://www.last.fm/user/trungdaibang/library/music/Fear,+and+Loathing+in+Las+Vegas/_/Chase+the+Light!
Yeah, currently the script only queries the last 1000 songs of a given artist (that'd be 5 last.fm requests) to avoid hammering last.fm and getting banned. If you've listened to an artist a lot more than 1000 times (I see 6k+ plays of Fear, and Loathing for you) then it won't get most of them.

If I get around to making the last.fm queries happen in a separate thread I can probably delay them and this won't be a problem. I haven't had much time to work on this lately though.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #32
one of the song I had the problem with, it only returns ~20 times playcount
https://www.last.fm/user/trungdaibang/library/music/Fear,+and+Loathing+in+Las+Vegas/_/Chase+the+Light!
Was thinking about this issue this morning and remembered one other thing: you might want to uncheck the setting to "Remove duplicate scrobbles" then clear the saved last.fm plays, and repull. That might give you different results.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #33
This plugin has so much potential!! Unfortunately in my opinion it's too unstable for using it yet. But I'm hoping for further improvements both on the part of the last.fm api and on developing the app.

Kind regards

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #34
This plugin has so much potential!! Unfortunately in my opinion it's too unstable for using it yet. But I'm hoping for further improvements both on the part of the last.fm api and on developing the app.
What do you mean by "unstable?" Is it causing crashes? Is something not working correctly? I appreciate the feedback, but you haven't provided me any information on what can be improved.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #35
This plugin has so much potential!! Unfortunately in my opinion it's too unstable for using it yet. But I'm hoping for further improvements both on the part of the last.fm api and on developing the app.
What do you mean by "unstable?" Is it causing crashes? Is something not working correctly? I appreciate the feedback, but you haven't provided me any information on what can be improved.

Hey MordredKLB,
thanks for responding that quickly.

I had it installed for a few days and was very happy with it. It was the perfect app for enhancing my media library, cause I am a data and last.fm addict. I also got along with a not 100% accuracy. Unfortunately foobar began to crash from time to time, resulting in a loss of playback statistics and changes in my media library (everything was lost, since foobar was opened the last time). Dunno what caused this. I had the feeling it depended on the tags of specific songs, I was able to replicate the crash, when I listened to these specific songs. It could be that this was triggered when last.fm autocorrected for example the artist or the song title, but that's just a guess! The crash happened when the last.fm play count was counted +1 (at 1:00min of listening).

Hope this can help.

Greets

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #36
I had it installed for a few days and was very happy with it. It was the perfect app for enhancing my media library, cause I am a data and last.fm addict. I also got along with a not 100% accuracy. Unfortunately foobar began to crash from time to time, resulting in a loss of playback statistics and changes in my media library (everything was lost, since foobar was opened the last time). Dunno what caused this. I had the feeling it depended on the tags of specific songs, I was able to replicate the crash, when I listened to these specific songs. It could be that this was triggered when last.fm autocorrected for example the artist or the song title, but that's just a guess! The crash happened when the last.fm play count was counted +1 (at 1:00min of listening).

Hope this can help.

Greets
First of all, you should install foo_jesus. That'll at least help you out when foobar crashes and you won't lose "everything."

Secondly, was it crashing on every song, or just specific ones? Can you upload a sample mp3 here that has that issue? I also might need a copy of the database from the index-data folder (it's named 0C1BD000-43E7-4078-B885-48EE4249DEC2). Really do not want this thing causing any crashes.

BTW, just to double check, you were using v2.0.3 right? That fixed a crash when a file was missing required tags.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #37
My Bad. Actually I'm quite sure, I was using Version 2.02 (the one in the first post). I'm now convinced that those tracks crashed, in which the album tag was completly missing.
After testing it the last couple of days with Version 2.03 there were no crashes at all.

But to me there are 2 more questions.
Songs, in which the tag for album is missing still didn't get the right number, the count stays by 0. But this shouldn't be the case when unselecting "Compare Album field when retrieving scrobbles" shouldn't it? Maybe I miss the point with this option. There are other examples, where this problem occures, can't figure out why though.
Second : In my last.fm beginnings I wasn't that accurate with my tags, especially with the album tags. I had a lot of songs without an indicated album. In some cases
the enhanced play count seems to only count the ones in the beginnings until the point where I filled in the album tag.

e.g. I listened to phil collins - in the air tonight 6 times without an album tag between 2005-2007.
From there on, I was listening to it with the album tag "greatest hits" 27 times.
The enhanced play count retrieved the play count 6.


Is there maybe a way to manually edit the last.fm play count in foobar for those ones which get not the right number in the first place? Can you explain for which songs the issue with the wrong retrieved play count might occur (I'm aware of the issue, which was mentioned in reply #31)?

Thanks and sincere apologies for the inconvenience.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #38
Songs, in which the tag for album is missing still didn't get the right number, the count stays by 0. But this shouldn't be the case when unselecting "Compare Album field when retrieving scrobbles" shouldn't it? Maybe I miss the point with this option. There are other examples, where this problem occures, can't figure out why though.
Good catch! I actually was wondering last week if I'd done this, but forgot to check the code. Just uploaded v2.0.4 which should fix this issue. You can update from inside foobar.

Quote
Second : In my last.fm beginnings I wasn't that accurate with my tags, especially with the album tags. I had a lot of songs without an indicated album. In some cases
the enhanced play count seems to only count the ones in the beginnings until the point where I filled in the album tag.

e.g. I listened to phil collins - in the air tonight 6 times without an album tag between 2005-2007.
From there on, I was listening to it with the album tag "greatest hits" 27 times.
The enhanced play count retrieved the play count 6.
So that seems weird. I'm assuming you had the "Compare Album Field" setting checked, yes?

There are two possible scenarios here:
1) Some tab besides just the album tag changed in either the song you are playing, or in the data last.fm is storing for that song. Sometimes last.fm will store very wrong information for the album, which will lead to those scrobbles not being counted (particularly if you're using foo_audioscrobbler).

2) While you were messing with settings, or different versions of the plugin, it recorded scrobbles from back in 2007, but also one recently. After adjusting settings/versions of the plugin, when you attempt to get the list of last.fm scrobbles it stops checking at the most recently recorded scrobble and never picks up the other 27.

To determine if the problem is #2, right click and clear the last.fm scrobbles for that song, and then repull them again. If that fixes the problem, then hooray. If not, can you reply with your last.fm username? I can check the json last.fm is returning and see if I can spot where the mismatch might be.

BTW, thanks for the helpful feedback!

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #39
this is great! I was looking to get my last.fm playback statistics back into foobar and now someone finally made it happen :-)
For now it's just not very accurate. I've been testing it out and got a playcount of 19 in foobar and when I checked on last.fm I listened to that track 45 times. I guess this is the same problem you pointed out earlier, because I have 1900 scrobbles for that artist.

looking forward to the next versions. Thanks for your work!

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #40
would it also be possible to add a feature to scan you whole library for last.fm scrobbles and maybe force the user to get his own api key to not get the plugin banned by last.fm?

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #41
would it also be possible to add a feature to scan you whole library for last.fm scrobbles and maybe force the user to get his own api key to not get the plugin banned by last.fm?
I don't think an API key would matter. You'd still be doing 1000s of API requests. I have over 3k different artists in my library and 130k scrobbles. For me, with perfect caching that'd require roughly 5k API calls. With rate limiting of 1 a second that'd take almost 90 minutes to run through, which is obviously not ideal... and there'd be no way of knowing what the progress of that was. If you had to restart, or just clicked the button again, it would have to requery every single artist.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #42
Hey,

I was testing version 2.0.4 over the holidays and I must say that nine times out of ten I get discrepancies between the retrieved scrobble and the actual one for my top artists in my charts. The thing is I'm scrobbling since 2005, with 277.000 scrobbles and 7.336 various artists. As You can imagine there a plenty of artists which burst the dubious 2.000 scrobbles (I also noticed discrepancies for artists with less than 2.000 scrobbles, but still with a great amount of scrobbles).

My username on last.fm is also "Smakaveli". If you want to checkout my site for further investigations :)

Besides this the app now runs very stable. The first bug was removed with the latest update, the second bug I mentioned in my latest posting must be coincidence or misinterpretation by me, cause it only happened with songs from these "2k-scrobble-artists" and it seems to have nothing to do with changing the album tag in the past.

Keep up the good work, thanks and regards!

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #43
Querying last.fm: http://ws.audioscrobbler.com/2.0/?method=user.getartisttracks&api_key=a1685abe5265b93cf2be4a70d181bf6b&user=Arthurrr&artist=Wavves&limit=200&format=json&page=1
Found 34 plays in last.fm (since last recorded scrobble) of Tarantula
--> populate
JSB POPULATE: init groups delay = 18 /handleList count=403
--> populate
JSB POPULATE: init groups delay = 14 /handleList count=403


I get this during playback (just found this component). Is it supposed to update my play_count? It just increases by 1 instead of copying the number from last.fm

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #44
(I also noticed discrepancies for artists with less than 2.000 scrobbles, but still with a great amount of scrobbles).
The current limit is actually 1000 scrobbles so it's even worse for you. I'll try and see what I can do, but no promises :)

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #45
Querying last.fm: http://ws.audioscrobbler.com/2.0/?method=user.getartisttracks&api_key=a1685abe5265b93cf2be4a70d181bf6b&user=Arthurrr&artist=Wavves&limit=200&format=json&page=1
Found 34 plays in last.fm (since last recorded scrobble) of Tarantula
--> populate
JSB POPULATE: init groups delay = 18 /handleList count=403
--> populate
JSB POPULATE: init groups delay = 14 /handleList count=403


I get this during playback (just found this component). Is it supposed to update my play_count? It just increases by 1 instead of copying the number from last.fm

For the record those JSB POPULATE lines in the console aren't from my component.

It does not (and cannot) alter %play_count%. It provides an entirely new field %lastfm_play_count% which you can use. I use the following TF code to display play counts:
Code: [Select]
$max(%play_count%,%lastfm_play_count%)

Also, in my jscript theme I use a display a little lastfm logo if %lastfm_play_count% is > 0.


Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #46
For the record those JSB POPULATE lines in the console aren't from my component.

It does not (and cannot) alter %play_count%. It provides an entirely new field %lastfm_play_count% which you can use. I use the following TF code to display play counts:
Code: [Select]
$max(%play_count%,%lastfm_play_count%)

Also, in my jscript theme I use a display a little lastfm logo if %lastfm_play_count% is > 0.


Ah I see, thanks.
I'm also using playback statistics custom (writing to tags), can I make your component write to tags too? foo_playcount is not an option for me.

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #47
Hello! I won't add something useful here, but this foobar component seemed like the absolute solution to salvaging my fading memory and reconstruct my past, and validating my persistent scrobbling for all these years. Thank you, developer, that's a really good thing you're making for us!
Yet... I can't seem to make it work for me. Foobar2000 just crashes as soon as I start it with this component. I figured I should first install Foo_playcount , but that didn't solve it. Should I do something else before installing Foo_enhanced_..? I am running Foobar2000 on Linux (Ubuntu-based, if it matters), with Wine. Hasn't crashed on me before. I'm copy-pasting the crash report I get:
Spoiler (click to show/hide)
Thank you in advance for any help you might be able to give me, anyone.
And, again, thank you developer! :)

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #48
Hello! I won't add something useful here, but this foobar component seemed like the absolute solution to salvaging my fading memory and reconstruct my past, and validating my persistent scrobbling for all these years. Thank you, developer, that's a really good thing you're making for us!
Yet... I can't seem to make it work for me. Foobar2000 just crashes as soon as I start it with this component. I figured I should first install Foo_playcount , but that didn't solve it. Should I do something else before installing Foo_enhanced_..? I am running Foobar2000 on Linux (Ubuntu-based, if it matters), with Wine. Hasn't crashed on me before. I'm copy-pasting the crash report I get:
Oh man, that sucks. Unfortunately I don't have a Linux box to test this out on. Presumably the same thing happens in OSX under Wine, but I don't have that setup either.

There's no obvious problem here unfortunately:
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 03876221h
Access violation, operation: read, address: 00000000h

Call path:
entry=>component_manager::on_app_init
That code is showing that it's crashing inside the component_manager as it's trying to initialize foobar. My guess is that something about how the component is configured it doesn't like. However when I register the component I literally don't do anything other than log to the console that it's registered.

That makes me wonder if you're using the latest version of Foobar? It should work with v1.3.x (the 1.4 SDK is backwards compatible). Might also be worth trying with a 1.4 beta? Have you installed any other components built against 1.4 SDK? jscript_panel is one I know about, but it requires 1.4. Do you need to install any .NET runtimes for WINE to work properly?

Hopefully we can get this working for you, but it might be a challenge :)

Re: foo_enhanced_playcount - Record all song plays and Last.fm scrobbles (JScript)

Reply #49
That makes me wonder if you're using the latest version of Foobar? It should work with v1.3.x (the 1.4 SDK is backwards compatible). Might also be worth trying with a 1.4 beta?
[...]
Hopefully we can get this working for you, but it might be a challenge :)
Updating foobar from v1.3.17 to v1.4 beta 11 just did the trick! Thankfully, it wasn't a challenge :)
As for .NET runtimes installed, hmm, not sure. I followed the standard procedure using a Wine GUI frontend, Playonlinux, and that offers a preconfigured installation of Foobar2000. But I guess that's not relevant, because it's probably that thing with the SDK's, your first guess.
Thank you for being eager to help me out, and thanks for your component!

 
SimplePortal 1.0.0 RC1 © 2008-2018