ScrobblerDJ V2.20 - Updated 16/11/2013

Download and get help for different MediaMonkey for Windows 4 Addons.

Moderators: Peke, Gurus

mcow
Posts: 834
Joined: Sun Sep 21, 2008 9:35 pm
Location: Cupertino, California

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by mcow »

civiliza wrote:Since in your case the unintall process seems to have correctly removed ScrobblerDJ.vbs but (presumably) failed to update the Scripts.ini file,
Thanks, but this doesn't help. In my post, I said:
I see no trace in either the program's or my profile's scripts.ini.
I'm actually having a lot of problems with add-ons now. I was getting problems with the scrobbler plugin failing, and uninstalled it, and had problems with re-install failing. I'm trying to rebuild it all now... I'll get back here if I still have the problem then.
mcow
Posts: 834
Joined: Sun Sep 21, 2008 9:35 pm
Location: Cupertino, California

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by mcow »

OK, I've got my extensions all reinstalled, and all of them work as desired. I do not have ScrobblerDJ installed, and I am still getting the error -- several errors, actually -- every time a track starts. Are you sure your uninstall script is undoing everything that was done for setup?

If the scripts.ini path can be wrong, do you know what the erroneous path is? Maybe it's created a scripts.ini in a third location than the program's Scripts or the profile's Scripts.

I've also posted a topic in MMW Beta. Even if your script is at fault here, the error handling is pretty bad and leads to the program hanging.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by civiliza »

mcow wrote:Thanks, but this doesn't help. In my post, I said:
{quote]I see no trace in either the program's or my profile's scripts.ini.
You are of course right, I was hoping that with two Scripts.ini files to choose from the relevant entry might have been lurking in the other one.

What I saw through several Install/Unistall iterations was that the entry was never being deleted during Uninstall, while it only occasionally got added during Install which is why I termed it unreliable.

We do seem to be experiencing different problems, since all my problems involve / are resolved by updating Scripts.ini. Out of curiosity, which version of Windows are you running? I am still running XP, so while I believe that %appdata% is universal, I don't know whether my program files location still holds true for Windows Vista/7/8.

--

I must admit that the ScrobblerDJ V2.x Install and Uninstall scripts were originally cobbled together using a mixture of studying the wiki entries and reading/copying the Installation scripts for other add-ons. However since many of these add-ons use remarkably similar Install and Uninstall mechanisms, and I have double checked for silly things like incorrect directory/file/add-on names I remain at a loss to explain all this.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by civiliza »

mcow wrote:Are you sure your uninstall script is undoing everything that was done for setup?
Not 100%, but I have looked for imbalances and not found anything obvious. These scripts are something of a dark art as far as I am concerned, and I have up to now relied on duplicating similar scripts for other add-ons.
mcow wrote:If the scripts.ini path can be wrong, do you know what the erroneous path is? Maybe it's created a scripts.ini in a third location than the program's Scripts or the profile's Scripts.
That is indeed the million dollar question, however I ran a search on both my Hard Disks for another Scripts.ini and couldn't find one. The ones I have seen and mentioned in last night's posting do seem to correspond to what was described in the other threads, namely one in a subfolder of Program Files, and the other in a subfolder of %appdata%.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by civiliza »

Hmm, here's a wierd thing, the ScrobblerDJ entry is going into the version of Scripts.ini in the Program Files subfolder, but all the ScrobblerDJ files are being installed into the %appdata% subfolder where the other version of Scripts.ini is located.

According to the other threads, ScriptsPath can at different times (not got my head around it yet) point to either of these subfolders.

I am out of my depth here, but I have a growing feeling that all this is related.

H E L P.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by civiliza »

Hello mcow,

I am sorry that your situation has arisen, and it was certainly not my aim to create an add-on that couldn't be uninstalled properly.

I have tried to find a resolution in the Scriptwriting wiki without success, and have made enquiries on this forum that have yet to bear fruit.

That being the case I recommend the (deeply satisfying I know) workaround of reinstalling ScrobblerDJ for the moment and then stop it doing anything by deselecting the Enable ScrobblerDJ tickbox in the Tools->Options->ScrobblerDJ Settings dialog. While you will still have ScrobblerDJ installed, it will not queue any more tracks. At least this will let you use MediaMonkey as before until such a time as I can get this resolved.
mcow
Posts: 834
Joined: Sun Sep 21, 2008 9:35 pm
Location: Cupertino, California

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by mcow »

Hi,
Thanks for looking into this; I appreciate the effort. I'll follow your advice to reinstall and check back.

There is no MediaMonkey.ini in the program directory. In the profile's MediaMonkey.ini I found these settings for AutoDJ:

Code: Select all

[Options]
AutoDJAddTracksFrom=1   # = "Playlist"
AutoDJScriptName=       # where I would expect "ScrobblerDJ.vbs" to appear, good that it's empty
AutoDJFilterID=0        #  ?? what is this

[Player]
AutoDJSwitchedOn=0
What I don't see anywhere is the name of the playlist that I use as the source for AutoDJ. (I don't think that's the "AutoDJFilterID" value, because when I change the script setting, that number remains the same.)
The playlist name does appear properly in the options dialog, and updates properly after changing it and restarting. Wherever that name is stored might also be where the "DJ script path" hook is stored. (The database? I hope not!) But a full binary- and text-file search of the profile does not show the playlist name. Maybe if I searched with a wide-char string...? but I don't have a tool that will do that.
mcow
Posts: 834
Joined: Sun Sep 21, 2008 9:35 pm
Location: Cupertino, California

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by mcow »

Oh, and to answer your question: Windows 7 x64 Home Premium.
mcow
Posts: 834
Joined: Sun Sep 21, 2008 9:35 pm
Location: Cupertino, California

Re: ScrobblerDJ V2.13.1 - Updated 03/02/2013

Post by mcow »

OK: with the ScrobblerDJ script 2.13.1 installed, the errors are gone. I have ScrobblerDJ turned off, and I haven't configured it with my login info.

Neither known version of scripts.ini has the ScrobblerDJ entries. I installed "for current user."

I guess I should make a script to query that setting and see where it points.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

ScrobblerDJ V2.13.1.1

Post by civiliza »

Glad to hear that the workaround worked.

I have discovered that with my Windows XP system Uninstalling as the very first action upon opening MediaMoney updates the correct version of Scripts.ini.

Uninstalling after anything else (eg the original Install or Starting to play a track) updates the other Scripts.ini.

I have created a minor upgrade of the Installation package:
ScrobblerDJ V2.13.1.1 ensures Scripts.ini updates are flushed to disk and adds a diagnostic to show which Scripts.ini is accessed during Uninstalls

The upgrade should stabilise Installations, but doesn't solve the underlying Uninstallation problems caused by SDB.ScriptsPath.
theweasel68
Posts: 32
Joined: Mon Sep 09, 2013 4:15 pm
Location: Austria

Re: ScrobblerDJ V2.13.1.1 - Updated 25/04/2013

Post by theweasel68 »

Hi,
my music library consists of appr. 15.000 tracks of various genres - from Jazz-Pop-Rock to Classic. I have installed the ScrobblerDJ v2.13.1.1 on my new MediaMonkey beta 4.1.0.1656 and it works very well - I like this feature very much! Strangely, I found this addon coincidentally in the forum, but it is not listed in the ADDON-section of MM?

Anyway - following I am experiencing, and I am not sure, if I can change this somehow in the settings, or if this is a feature request for an upcoming version ScrobblerDJ - if there is any further development:

1) When ScrobblerDJ doesn´t find a match in my library, it takes a random track. It can happen that I hear a Progressive Rock-song from "Krokodil", and the next song would be something from Johann Sebastian Bach. Interesting mixture, but not really desired ;)

--> can I exclude certain GENRES from being added by ScrobblerDJ? Would be a very helpful feature!
--> or, if no song is found, then a random song of SAME GENRE is selected from the database?

2) Any possibility to take songs of similar beats per minute from the music library? I want to achieve that tracks of similar BPM are grouped together. It would even be perfect, if I could pre-determine a certain "BPM-pattern". Lets say - you invite some guests and you want to start slowly, then play some faster tracks, later on go slowly/easy again...


Thanks! :)
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1.1 - Updated 25/04/2013

Post by civiliza »

Hmm, a quick a simple way to stay in genre or bpm range is to create a Playlist (or Autoplaylist if you have MM4) with just that genre and set that as the Default Playlist in the ScrobblerDJ options (along with ticking the Limit To Default Playlist options).

Of course that lacks flexibility since it won't branch out in new directions if you hit a cross-genre track or start with a track from a different genre.

(For what it's worth, I have a several thousand strong AutoPlaylist of "unplayed" (forgot to turn on bidirectional updates from the mp3 player) non-classical tracks that I'm working through - as long as I keep away from classical tracks Artist Similarity avoids most of the jarring changes while I can live with the occasional genre jump).

I'll have a think on this, last time I left it the SQL building statements were getting pretty complex and I don't want to overload them. That said the bpm suggestion mirrors something I am interested in, so I might experiment with that first and see how things go.

No promises mind, but you've given me something to ponder on. Thank you.
civiliza
Posts: 84
Joined: Wed Dec 17, 2008 1:34 pm
Location: United Kingdom

Re: ScrobblerDJ V2.13.1.1 - Updated 25/04/2013

Post by civiliza »

The problem with profiling eg BPM is remembering where you are. The script effectively has no memory from one track to the next and has to query the database to find out who the current artist is even if it queued said artist last time around.

A few quick tests have shown that a simple Target BPM along with change rate is quite feasible. I've hard coded some quick values for now and it's successfully climbing from an 87 bpm track towards 120 bpm at no more than 5% per track.

87, 88, 91, 92, 94. 95, 97, 101, 105, 106, 111, 116, 117, 120, 124, 130, 126, 120 ... (drat, where did that 130 come from? should have been 114 to 126 ah, 5% of 124, oh well, it needs some fine tuning, but the general principle seems to work).

What I propose is that with say a 5% rate, to have a queuing window of +/- 5% of the target BPM. Should the Current BPM be below 5% of the target BPM, then set a window of Current BPM + 1 to Current BPM + 5% and if it is above 5% then set a window of Current BPM - 5% to Current BPM - 1,

This means that it should always climb or sink until it is within 5% of the target BPM then once reached hover somewhere between +/- 5% of the target.

Of course the climb rate and chunkiness depends on your library, I'm already finding that with the extra BPM constraint, it falls trhough to a random track far more often.

Not quite the same as a programmable profile, but if you start off the evening with a slow track and a highish target you only need to get up once to lower the target mid evening and you should get your climb to plateau then fall to plateau.
theweasel68
Posts: 32
Joined: Mon Sep 09, 2013 4:15 pm
Location: Austria

Re: ScrobblerDJ V2.13.1.1 - Updated 25/04/2013

Post by theweasel68 »

civiliza wrote:Hmm, a quick a simple way to stay in genre or bpm range is to create a Playlist (or Autoplaylist if you have MM4) with just that genre and set that as the Default Playlist in the ScrobblerDJ options (along with ticking the Limit To Default Playlist options).

Of course that lacks flexibility since it won't branch out in new directions if you hit a cross-genre track or start with a track from a different genre.

(For what it's worth, I have a several thousand strong AutoPlaylist of "unplayed" (forgot to turn on bidirectional updates from the mp3 player) non-classical tracks that I'm working through - as long as I keep away from classical tracks Artist Similarity avoids most of the jarring changes while I can live with the occasional genre jump).

I'll have a think on this, last time I left it the SQL building statements were getting pretty complex and I don't want to overload them. That said the bpm suggestion mirrors something I am interested in, so I might experiment with that first and see how things go.

No promises mind, but you've given me something to ponder on. Thank you.
Great thanks! :)

I have been running now MM with ScrobblerDJ for several hours today in the background while working, and I must say, it is really a great tool as it leads you on a great journey through your music library. What I especially like is that it combines songs, which are really similar - also similar artists from the same country. I assume that must be because of the last.fm algorythm...

However, I think the backside of the current ScrobblerDJ is that it somehow "averages out" all your genres & tracks. I get a great mixture of all genres - even with classical music, I enjoyed the mix. Everything is mixed in a great overall flow. But what happens if you are in a mood for something lets say "harder and faster"?

I tried ScrobblerDJ with following seeds:

1) Incubus – Light Grenades (153 BPM)
2) Johann Sebastian Bach – Fugue 3
3) Wolfgang Amadeus Mozart – Requiem in D Minor
4) Etc…

1) Machine Head - Ten Ton Hammer (166 BPM)
2) Franz Joseph Haydn - Paukenmesse
3) etc...

1) Mastodon - Blood and Thunder
2) Johnny Cash - The Streets of Laredo
3) Weather Report - Cucumber Slumber

So, if there was a blacklist- / whitelist-feature for genre, but also maybe other parameters like Mood, Year From-To, BPM, etc., that would truly be brilliant!
Last edited by theweasel68 on Tue Sep 17, 2013 8:40 am, edited 2 times in total.
theweasel68
Posts: 32
Joined: Mon Sep 09, 2013 4:15 pm
Location: Austria

Re: ScrobblerDJ V2.13.1.1 - Updated 25/04/2013

Post by theweasel68 »

civiliza wrote:The problem with profiling eg BPM is remembering where you are. The script effectively has no memory from one track to the next and has to query the database to find out who the current artist is even if it queued said artist last time around.

A few quick tests have shown that a simple Target BPM along with change rate is quite feasible. I've hard coded some quick values for now and it's successfully climbing from an 87 bpm track towards 120 bpm at no more than 5% per track.

87, 88, 91, 92, 94. 95, 97, 101, 105, 106, 111, 116, 117, 120, 124, 130, 126, 120 ... (drat, where did that 130 come from? should have been 114 to 126 ah, 5% of 124, oh well, it needs some fine tuning, but the general principle seems to work).

What I propose is that with say a 5% rate, to have a queuing window of +/- 5% of the target BPM. Should the Current BPM be below 5% of the target BPM, then set a window of Current BPM + 1 to Current BPM + 5% and if it is above 5% then set a window of Current BPM - 5% to Current BPM - 1,

This means that it should always climb or sink until it is within 5% of the target BPM then once reached hover somewhere between +/- 5% of the target.

Of course the climb rate and chunkiness depends on your library, I'm already finding that with the extra BPM constraint, it falls trhough to a random track far more often.

Not quite the same as a programmable profile, but if you start off the evening with a slow track and a highish target you only need to get up once to lower the target mid evening and you should get your climb to plateau then fall to plateau.
I like this idea of incremental steps - could be a very elegant way to solve this. The question is, if also the time range for certain BPM level or range can be set. Lets say: 90 BPM for the first 60min (+-10BPM), then next 120 min 120BPM, then 80BPM, etc. Maybe such a feature will be too abstract and not usable in praxis. Also because BPM measuring doesnt seem to work good in general, what I can read in other threads on the forum.

Probably it would be better to restrict the playlist to certain genres? For example: I would like to start with "Electronica" for the first 30min, then go to "Alternative" for the next 30min, then to "Progressive Rock; Metal" next 60min, back to "Alternative Rock" for 30min and then finally again "Electronice for an undefined time.

Somehtin like this maybe makes more sense in praxis?
Post Reply