DJing Discussion

This area is for discussion about DJing in general. Please remember the community rules when posting and try to be polite and inclusive.

New open source key detection tool

deejaysomething 7:35 PM - 19 September, 2011
Hey all,

I just finished a computer science course and I decided to build a key detection tool for DJs as my final project. I've been using Rapid Evolution for a long time, and I like it a lot, but I wanted a challenge...

So I finished my project and submitted it last week. The tool is called KeyFinder because I'm crap at naming things. It's designed to work primarily with EDM, but it's highly tweakable and I've had decent results with various genres.

I got good accuracy during my experiments but unfortunately I didn't test it on a wide selection of music. I had very little time and had to key it all manually and then get other musicians to verify it. It would be great to improve KeyFinder to work on a wide variety of genres.

So I'm releasing it for free under the GPL, in the hope someone finds it useful. It's a bit primitive, and for Mac only at present (in fact it's only been tested on four or five Snow Leopard machines) but it should be pretty simple to port to Windows if there's interest.

If you want to try it you can download a Mac binary here:
www.ibrahimshaath.co.uk
My write-up which describes the algorithms is also there if you're into that kind of thing. If anyone has any interest in working on it, or any comments or questions, feel free to get in touch here or using the email address on that page.
blackavenger 2:28 AM - 21 September, 2011
^^ Nice....I'll give it a go ;)

I too have been using RE for a few years now.
deejaysomething 11:32 AM - 22 September, 2011
Cool, blackavenger, let me know how you get on.

Something I forgot to mention is that the interface includes a musical visualisation called a chromagram. I've found it quite useful for visualising chord structures, melodies and key changes, and I think it's pretty unique in the DJ software world; I haven't seen any other tools that have something similar.

You can see an example screenshot on the page linked in the OP.
Jordan Laws 12:36 AM - 23 September, 2011
This is amazing, you need to try and link with someone with capital & or connections and get it in the right hands im sure you can make a buck selling the technology. I can't imagine someone at digidesign or ableton not being interested in this. Good luck kid, congrats!
WarpNote 3:15 AM - 23 September, 2011
If its any good why not sell it to serato, make it a part of building overviews :D
I jumped ship from RE to MIK about a year ago, mainly for convenience.
Now, a built in key detector in SSL/Itch sure would be nice.

Will be trying KeyFinder myself over the next few weeks, thanks!!
blackavenger 6:16 AM - 24 September, 2011
Quote:
Now, a built in key detector in SSL/Itch sure would be nice.


One could only wish......
deejaysomething 11:39 AM - 26 September, 2011
@Jordan Laws: thanks man. There's actually very little new science in there; I figured out how to build most of it just by reading a bundle of academic papers.

Quote:
Now, a built in key detector in SSL/Itch sure would be nice.

I agree, though all the algorithms available have patchy accuracy... is it better to have a wrong key estimate than none at all? I think it probably is - at least it's a starting point - but I can see why a lot of DJs would disagree.

And while I'm very happy running this as an open source project, Serato are entirely welcome to hire me to integrate it into the overview builder =)
Tunecrew 12:38 PM - 26 September, 2011
Quote:
Hey all,

I just finished a computer science course and I decided to build a key detection tool for DJs as my final project. I've been using Rapid Evolution for a long time, and I like it a lot, but I wanted a challenge...

So I finished my project and submitted it last week. The tool is called KeyFinder because I'm crap at naming things. It's designed to work primarily with EDM, but it's highly tweakable and I've had decent results with various genres.

I got good accuracy during my experiments but unfortunately I didn't test it on a wide selection of music. I had very little time and had to key it all manually and then get other musicians to verify it. It would be great to improve KeyFinder to work on a wide variety of genres.

So I'm releasing it for free under the GPL, in the hope someone finds it useful. It's a bit primitive, and for Mac only at present (in fact it's only been tested on four or five Snow Leopard machines) but it should be pretty simple to port to Windows if there's interest.

If you want to try it you can download a Mac binary here:
www.ibrahimshaath.co.uk
My write-up which describes the algorithms is also there if you're into that kind of thing. If anyone has any interest in working on it, or any comments or questions, feel free to get in touch here or using the email address on that page.


impressive - thanks for the effort!
DJitalSneaky 6:40 PM - 26 September, 2011
I'll give you some feedback, thanks for all the effort and making it open source first and formost.

Please understand I'm just giving feedback here not complaining :)

1. Would like to have the option to cancel operations one I start. I had to kill the program to stop a miss-fire on my part

2. Custom key codes is nice. Maybe adding a Camelot wheel preset in that drop down box. (www.djwhitehawk.com) Which is the system that a lot of people use. Including myself

3. Would like to see the program be able to write to the 'initial key' tag in a music file. Serato reads this tag.

I tested 10 for 10 in the key of Bm (Camelot 10A) against Mixed in Key (community.mixedinkey.com) In styles ranging from Ludacris to Lemmy :)
deejaysomething 7:08 PM - 26 September, 2011
@DJitalSneaky.

Quote:
1. Would like to have the option to cancel operations one I start. I had to kill the program to stop a miss-fire on my part

It's not obvious, but you can safely cancel a batch job just by closing the batch window; any other open windows will stay operable. Not ideal, I know. I did intend to add a cancel button but it clearly got lost at some point! I'll stick it on my todo list.

Quote:
2. Custom key codes is nice. Maybe adding a Camelot wheel preset in that drop down box. (www.djwhitehawk.com) Which is the system that a lot of people use. Including myself

I use the Camelot codes myself. However, they're now the intellectual property of Mixed In Key, so I can't include them in the software without a license.

Quote:
3. Would like to see the program be able to write to the 'initial key' tag in a music file. Serato reads this tag.

I looked at that. According to the spec (www.id3.org), that field can only hold 3 characters, and I wanted to store the key and a code, hence the Grouping tag. But I will go back and add the option to write to Initial Key; it'll just cut off anything longer than thi.

Quote:
I tested 10 for 10 in the key of Bm (Camelot 10A) against Mixed in Key (community.mixedinkey.com) In styles ranging from Ludacris to Lemmy :)

Very good to know! =)
And thanks, I appreciate the constructive feedback.
DJitalSneaky 7:16 PM - 26 September, 2011
Really did not know that about the camelot codes, thaks for the info :)
Audio1 4:48 PM - 27 September, 2011
Pretty fresh stuff. You need capital and make this into a reality... You are about to give MIK a run for their money.
deejaysomething 9:49 AM - 30 September, 2011
@DJitalSneaky

Just uploaded a new version with a cancel button, and some support for the Initial Key tag.

I couldn't test the tag stuff much. I almost exclusively use ALAC files, which don't have that tag according to the spec (I think Serato writes to its database rather than the file itself in such cases). But it works well on MP3s. Let me know if you have any trouble.
Dj_Roger 9:56 PM - 24 October, 2011
Awesome program, thnx alot. Too bad that you cant use the same keys as they use in mixed in key
deejaysomething 8:29 AM - 25 October, 2011
@Dj_Roger

Thanks man. You can of course type whatever you want in the Custom Key Codes preferences pane.
Dj_Roger 9:28 AM - 25 October, 2011
that's nice, but takes time if you analyse a lot of songs ;-)
anyway..... awesome program.
deejaysomething 9:46 AM - 25 October, 2011
I think maybe you misunderstand.
Go Preferences > Tags. You'll see 20-odd boxes where you can type custom codes for the keys. Then set Write Tag Format to Custom Codes or Both.
That way, you can set what's written to your files to something other than my "Abm" style tagging.
Dj_Roger 1:46 PM - 25 October, 2011
ohh ok i´ll do that :-)
Konix 2:25 PM - 25 October, 2011
Sorry my Music Theory is a little rusty, are these the correct Camelot codes?

dl.dropbox.com according to this www.harmonic-mixing.com
deejaysomething 2:51 PM - 25 October, 2011
@Konix
That's exactly right.
Djstylez23 2:53 PM - 25 October, 2011
@deejaysomething

Wow, im so impressed with this program. analyzing is accurate and fast!
Good job!!
deejaysomething 2:59 PM - 25 October, 2011
@Djstylez23

Thanks a lot =)
Dj_Roger 3:22 PM - 25 October, 2011
Thnx alot Konix
philldafunk 6:05 PM - 25 October, 2011
And it reads mp4's too!!!

This prog is full of win
dj_ys 6:47 PM - 25 October, 2011
It's working really well, thanks
StreetFighta 7:06 PM - 25 October, 2011
speaking of key detection, can anybody that mixes top40 link me to a mix fully done harmonically? I want to hear the difference from just a random mix to see if getting on the key detection train is worth it
DJWALDO 7:35 PM - 25 October, 2011
downloading now... after reading this it definitely seems like you might want to think of packing this up and selling it. can't wait to try it!
Djstylez23 10:58 PM - 25 October, 2011
Quote:
speaking of key detection, can anybody that mixes top40 link me to a mix fully done harmonically? I want to hear the difference from just a random mix to see if getting on the key detection train is worth it


im gonna make a mix later tonight and post it with a few tracks analyzed with this program. so far so good in my opinion.
CrowdCTRL 12:16 AM - 26 October, 2011
Damn...for some reason I can't install this program on my Mac...it says "KeyFinder.dmg not recognized" (cannot mound the disk)

Any ideas??
CrowdCTRL 12:16 AM - 26 October, 2011
cannot mount**
djbanno 12:25 AM - 26 October, 2011
Quote:
downloading now... after reading this it definitely seems like you might want to think of packing this up and selling it. can't wait to try it!

+1
Djstylez23 12:29 AM - 26 October, 2011
Quote:
speaking of key detection, can anybody that mixes top40 link me to a mix fully done harmonically? I want to hear the difference from just a random mix to see if getting on the key detection train is worth it


im gonna make a mix later tonight and post it with a few tracks analyzed with this program. so far so good in my opinion.
WarpNote 6:42 AM - 26 October, 2011
Quote:
cannot mount**

I've got the same problem, running OSX 10.5.8
deejaysomething 7:06 AM - 26 October, 2011
@CrowdCTRL, WarpNote

Sorry gents, try this zip file instead. Might be a 10.5/10.6 thing.

ibrahimshaath.co.uk
WarpNote 7:12 AM - 26 October, 2011
Thanks, for some reason I'm not able to run it.
After starting the application I get the infamous:
"The application KeyFinder quit unexpectedly."
deejaysomething 8:23 AM - 26 October, 2011
Ultra helpful error message =(
Can you bounce me the crash report, maybe? If you send it to the email on the KF page I should be able to check it out at the weekend.

Of course, it might still be a 10.5 thing. Unfortunately I don't have anything other than Snow Leopard to test on.
Dj matty k 9:22 AM - 26 October, 2011
Downloaded will give it a try :-)
WarpNote 9:38 AM - 26 October, 2011
Hehe, sorry about that Ibrahim, Ive sent a crash report.
Seems to be an issue with libav...
deejaysomething 9:46 AM - 26 October, 2011
@WarpNote I was getting at Apple, not you =)
I'll look it over.
djbanno 10:03 AM - 26 October, 2011
Quote:
Quote:
cannot mount**

I've got the same problem, running OSX 10.5.8

Quote:
@CrowdCTRL, WarpNote

Sorry gents, try this zip file instead. Might be a 10.5/10.6 thing.

ibrahimshaath.co.uk

Sorry deejaysomething, No go for me either...
"unable to unarchive keyfinder zip into downloads. (error 1, operation not permitted)"
10.5.8 + i am an idiot.
Let me know if i can help in any way.
deejaysomething 10:18 AM - 26 October, 2011
@djbanno
No idea, sorry. Maybe a corruption of your downloads? My web host is quite crap.

But as WarpNote has discovered, it's probable that Leopard needs a different version of one of the core libraries anyway, so it might not work even if you had an uncorrupted file.

Does anyone have this working on 10.5?
Djstylez23 2:58 PM - 26 October, 2011
Haven't gotten a chance yet to create a mix yet but I did analyze the top 10 beatport songs on both Mixedinkey 5 & Keyfinder to compare which one analyzes better.

On Beatport all the right keys are inputed so I compared them to both programs to see which one was more accurate.

img510.imageshack.us

Mixedinkey got 6 right
Keyfinder got 4 right.
deejaysomething 3:22 PM - 26 October, 2011
Actually I contacted Beatport when they introduced that feature: they use a piece of software to do their keys, so there's no guarantee they're correct. They wouldn't tell me which software.

It wouldn't surprise me if MIK got better accuracy than KF in some circumstances, though. =)
Djstylez23 3:25 PM - 26 October, 2011
oh okay then my bad on that one, actually thought the artist were the ones that inputed the keys... :x
CrowdCTRL 2:30 AM - 27 October, 2011
Quote:
Quote:
Quote:
cannot mount**

I've got the same problem, running OSX 10.5.8

Quote:
@CrowdCTRL, WarpNote

Sorry gents, try this zip file instead. Might be a 10.5/10.6 thing.

ibrahimshaath.co.uk

Sorry deejaysomething, No go for me either...
"unable to unarchive keyfinder zip into downloads. (error 1, operation not permitted)"
10.5.8
Let me know if i can help in any way.


Same here...
deejaysomething 8:19 AM - 27 October, 2011
@CrowdCTRL
Are you also running 10.5?
Bit difficult for me to recreate any of this; I just don't have enough computers =)
deejaysomething 8:28 AM - 27 October, 2011
Doing a quick read around, it seems like this may be a problem with my upload client. Won't be able to get home and test a different one for a day or so.

CrowdCTRL, djbanno, can you try another way of unzipping please?
Open a Terminal (Applications > Utilities > Terminal), type unzip, then a space, then drag the zip file to the terminal window. Then press return, to execute the command. It should unzip in your home folder, in theory.
djbanno 9:12 AM - 27 October, 2011
Quote:
Doing a quick read around, it seems like this may be a problem with my upload client. Won't be able to get home and test a different one for a day or so.

CrowdCTRL, djbanno, can you try another way of unzipping please?
Open a Terminal (Applications > Utilities > Terminal), type unzip, then a space, then drag the zip file to the terminal window. Then press return, to execute the command. It should unzip in your home folder, in theory.

Tried ^^ and got two dif results from both times i downloaded the zip (neither worked).
I think you might be right with the upload client call, my downloads say the file should be 20.8 Mb but i keep getting dumped early (maybe 10Mb or so?).
I have a reliable connection my end (reg download 100 + Mb at a time).
I am downloading tracks from beatport as we speak...
I can PM you screendumps of the terminal window, etc when i get home after work tomorrow if you like.
Sorry to be a pain...
deejaysomething 10:24 AM - 27 October, 2011
No pain, man, it's all good. Please PM me the screendumps for reference.

That does suggest my FTP client sucks, yeah. I'll try another, prob tomorrow evening.
djbanno 10:34 AM - 27 October, 2011
Cheers :)
deejaysomething 5:34 PM - 27 October, 2011
Uploaded with another client. Could you guys try again?

I think it's unlikely to work under 10.5 in any case, but one problem at a time =)
deejaysomething 5:25 PM - 30 October, 2011
There's a Windows version up now. Probably a bit unstable, and only tested on XP so far. But I had to start somewhere =)
babooza69 7:36 PM - 30 October, 2011
i can help test for windows (i run win7 x64). if you need hosting for your files, try www.multiupload.com
deejaysomething 8:03 PM - 30 October, 2011
@babooza69
Thanks a lot. I'm fine for hosting, the initial Windows version is up on my website, but any testing effort would be appreciated.

Drop me an email if you want to discuss.
babooza69 8:27 PM - 30 October, 2011
i couldn't open the program, says i'm missing MSVCR100.dll
Papa Midnight 8:33 PM - 30 October, 2011
Quote:
i couldn't open the program, says i'm missing MSVCR100.dll

You're missing run-times for Microsoft Visual C++ 2010.
You should be able to download that from Windows update or Microsoft's website -- or a redist should be packaged a long with a lot of software.
Daktyl 8:42 PM - 30 October, 2011
Seems folks have been getting some good results from this with no serious issues... running my first batch now. Thanks for putting this out there, and for free. The detailed analysis window is kind of hard to read, but I can see that being a very useful tool.
Daktyl 9:48 PM - 30 October, 2011
ok, the batch finished running and I think I've hit a snag. KeyFinder detected keys for all the songs, but it doesn't seem to have written anything to the id3 tags. Is there a step I'm missing here?
deejaysomething 9:52 PM - 30 October, 2011
Yup. Select all and then hit Cmd+T (or right click for other options).

I don't like software that automatically screws with my record collection =)
Daktyl 10:24 PM - 30 October, 2011
That did it lol. So it doesn't actually alter the file in any way until you tell it to? I kind of like that. Awesome piece of software here....
blackavenger 10:58 PM - 30 October, 2011
Well, I am happy with it, it's only refused to Key a few tracks.....I prefer it to MIK & RE now.
CrowdCTRL 12:20 AM - 31 October, 2011
Damn still a no go for me even after trying the latest version u uploaded. Must be cause Im on 10.5.8 i guess??
Nicky Blunt 6:58 AM - 31 October, 2011
Quote:
Quote:
Now, a built in key detector in SSL/Itch sure would be nice.


One could only wish......


been asking for ages, but they are too interested in making programs for noobs with bells whistles & sync buttons!
Nicky Blunt 7:04 AM - 31 October, 2011
ialso cant get this to install at all as soon as i open the zip file & click on the exe i get an error message tried to download it twice too.


Any idea? Im using windows
Nicky Blunt 7:20 AM - 31 October, 2011
msvcr100.dll is mising is the message i'm getting
Dj_Roger 7:32 AM - 31 October, 2011
Quote:
Quote:
i couldn't open the program, says i'm missing MSVCR100.dll

You're missing run-times for Microsoft Visual C++ 2010.
You should be able to download that from Windows update or Microsoft's website -- or a redist should be packaged a long with a lot of software.
Deejay Dumb Bii 8:30 AM - 31 October, 2011
First off, THANKS for such a program to use and try and for FREE! 2nd, While i was reading this whole thread. I was thinking to myself, why won't you have a different version, released under a different name, and release it as a PATCH into SSL. I know it goes against their terms/license? but, really,,, Most of us need this INTEGRATED into SSL forreals. Whether it's in Prepare mode (disconnected hardware)-(more favored) or with the hardware connected (drag and drop detection). I know it sounds more going warez style but I always 'dream' of the day that some brillant code chugger comes out a patch for SSL to patch and enable a piece of software like this to run different PLUGIN or to be as a feature, INTEGRATED right into the SSL GUI. Cause deejays been whining on these forums for 'maybe' a couple of years for something like this. I come from a MIS background and now pretty weak at coding in Visual Studio and other misc. languages, but I know SSL or ITCH is coded at machine code level(majority?). I'm just throwing a different idea for you to approach something for SSL or probably ITCH to reverse engineer and to be able to add a feature to Serato's SSL software, it's a kinda sorta thing I may implying like how MixEmergency has opened a different door for Video-SL.
djbanno 9:15 AM - 31 October, 2011
Quote:
Uploaded with another client. Could you guys try again?

I think it's unlikely to work under 10.5 in any case, but one problem at a time =)

Quote:
Damn still a no go for me even after trying the latest version u uploaded. Must be cause Im on 10.5.8 i guess??

Got the download to work sweet, unzipped fine and then same^^ for me.
I gotta say i hope you getting PM's from Serato for this project cause you deserve some major support.
jepe 9:26 AM - 31 October, 2011
usefull and straight to my lives with my partner. thank you! this should be include as a part of "analize" in Ssl:)
DJ Remy USA 4:22 PM - 31 October, 2011
Quote:
usefull and straight to my lives with my partner. thank you! this should be include as a part of "analize" in Ssl:)


I couldnt agree more key detection should be intergrated
Dj matty k 5:57 PM - 31 October, 2011
How do you make the keys come out in the 6a 6b etc format i have been tring to find a conversion way on the net ? so like from the way this progrme does the keys
djbanno 9:26 PM - 31 October, 2011
Quote:
Sorry my Music Theory is a little rusty, are these the correct Camelot codes?

dl.dropbox.com according to this www.harmonic-mixing.com

@matty k, i think Konix's post is what you are needing ^^
Dj matty k 9:31 PM - 31 October, 2011
Quote:
Quote:
Sorry my Music Theory is a little rusty, are these the correct Camelot codes?

dl.dropbox.com according to this www.harmonic-mixing.com

@matty k, i think Konix's post is what you are needing ^^


Cheers nice one :-)
babooza69 9:52 PM - 31 October, 2011
Quote:
Quote:
i couldn't open the program, says i'm missing MSVCR100.dll

You're missing run-times for Microsoft Visual C++ 2010.
You should be able to download that from Windows update or Microsoft's website -- or a redist should be packaged a long with a lot of software.

would be nice if you can make it run without it...don't want to install a bunch of random stuff on my dj laptop if you know what i mean
Dj matty k 10:06 PM - 31 October, 2011
Where is everyone saving these keys to? To be able to see them in serato ? cheers

Matt
deejaysomething 10:14 PM - 31 October, 2011
Quote:
would be nice if you can make it run without it...don't want to install a bunch of random stuff on my dj laptop if you know what i mean

I know exactly what you mean. Unfortunately, I'm no kind of Windows dev. I would guess that libraries like that are necessary (especially using a cross platform framework), it's just with most software packages they would be installed to windows/system32 without you knowing. =)
Nicky Blunt 10:17 PM - 31 October, 2011
the key file obviously???
Nicky Blunt 10:18 PM - 31 October, 2011
Ok so I downloaded the last one, now I'm getting this message come up!

libgcc_s_dw2-1.dll as missing instead!

Any ideas? I really wanna check this shit out!
Dj matty k 10:23 PM - 31 October, 2011
Quote:
the key file obviously???



Right i have tried all the drop down boxes but still can see them in serato even afer rescannign id3 tags i open key box and there is nothing in there ?
deejaysomething 10:24 PM - 31 October, 2011
@Nicky Blunt

A user on DJTT found these errors and fixes:

mingw10.dll is missing: extract www.dll-files.com into the keyfinder folder

libgcc_s_dw2-1.dll is missing: put pt.sourceforge.jp in the KeyFinder folder

I'll try and take care of these dependencies in the next version I upload but I'm short on time at present.
Nicky Blunt 10:25 PM - 31 October, 2011
I think u have to activate something in the actual program. But I cant even get it to work at the moment so i really cant help much. Sorry I thought you were asking where to place the info. my bad.
Nicky Blunt 10:28 PM - 31 October, 2011
no problem thank you so much for your assistance!

I'll try to get it to work. But please make sure to let me know when its up & running with the updates! Really appreciate it!
deejaysomething 10:33 PM - 31 October, 2011
Ah, sorry, I fucked up the copy and paste. That bodes well, huh.

Those URLs again:
www.dll-files.com
pt.sourceforge.jp
Dj matty k 10:43 PM - 31 October, 2011
Yay its working worked out i need to once i had done the group of files i wanted to analyze then i highlighted all the tracks and went write to tag thats what i was forgeting lol
Nicky Blunt 10:45 PM - 31 October, 2011
man I really wanna get this program to work! Im struggling with these files I need to download.

Wish i wasnt a computer retard!
Dj matty k 11:30 PM - 31 October, 2011
@ deejaysomething

Hi really like this programe but it doesnt seem to want to write to the id3 tags with mp4 files it does the analyzing but wont write to the mp4 just says 0 tag writen ?

Is there a prob or am i doing something wrong ?

cheers matt
blackavenger 6:56 AM - 1 November, 2011
Quote:
Where is everyone saving these keys to? To be able to see them in serato ? cheers

Matt


I've been putting mine in "Grouping", simply because that's where I have been putting them in RE for the past 5 years. I did it for consistency!
deejaysomething 9:36 AM - 1 November, 2011
Quote:
@ deejaysomething

Hi really like this programe but it doesnt seem to want to write to the id3 tags with mp4 files it does the analyzing but wont write to the mp4 just says 0 tag writen ?

Is there a prob or am i doing something wrong ?

cheers matt

As I undertstand it (and certainly according to the tag library KF uses), MP4 files use iTunes metadata structures. not ID3 tags. Only ID3v2 supports the Key field, that's what "limited support" means in that dropdown. So, in short, use one of the other fields for MP4 files =)
WarpNote 12:11 PM - 1 November, 2011
Quote:
There's a Windows version up now. Probably a bit unstable, and only tested on XP so far. But I had to start somewhere =)


Very nice Ibrahim!
I got a Win7, 8 core laptop, SSD & 16Gb Ram, in addition to my mpb 10.5.8.
Will put it through some tests and let you know how it performs.
Dj matty k 1:58 PM - 1 November, 2011
Quote:
Quote:
@ deejaysomething

Hi really like this programe but it doesnt seem to want to write to the id3 tags with mp4 files it does the analyzing but wont write to the mp4 just says 0 tag writen ?

Is there a prob or am i doing something wrong ?

cheers matt

As I undertstand it (and certainly according to the tag library KF uses), MP4 files use iTunes metadata structures. not ID3 tags. Only ID3v2 supports the Key field, that's what "limited support" means in that dropdown. So, in short, use one of the other fields for MP4 files =)


Ah ok cheers nice one :-)
Dj matty k 1:59 PM - 1 November, 2011
Quote:
Quote:
Where is everyone saving these keys to? To be able to see them in serato ? cheers

Matt


I've been putting mine in "Grouping", simply because that's where I have been putting them in RE for the past 5 years. I did it for consistency!


Thats what i think i will do with the mp4s :-)
Weststar 9:37 PM - 4 November, 2011
Hey, deejaysomething!

First off, thanks for this super lightweight package. After having to use RE for years, I got pretty tired at how slow and buggy it was. I was about to bite the bullet and buy MIK until I found this post yesterday and tried out your app. It is great! I do have a small issue however. When I'm detecting/writing tags to small groups of files, it works quickly and easily, but when I try to detect keys for thousands of files at a time (I tried both 5000, and 10,000 at a time) it seems to crash about a quarter to half of the way through. Hope this gets fixed!

Specs:
MBP 2.3 GHz i5 early 2011
4 GB RAM
SSD+HDD
Snow Leopard 10.6.8

Let me know if you need help troubleshooting! :)
deejaysomething 10:38 AM - 5 November, 2011
@Weststar
Thank you, I'm very glad you're finding it useful. However, I can't immediately explain the problem as I've run batches of over six thousand files through it without any trouble.

Could you email me a copy of the KF log? Should be at ~/Library/Logs/KeyFinder.log if I recall correctly (I'm not in front of a machine). Also, if you can remember, you could highlight the time of a crash. That should give us a place to start looking; might be a file it disagreed with.
Nyx 7:44 PM - 5 November, 2011
Seems to be a great little helper. :-) Would it be possible to add m3u or iTunes playlist import? That really would be awful!
SiRocket 9:15 PM - 5 November, 2011
@deejaysomething. GREAT APP!!! i have done my whole library (minus mp4's since i love using the key tag and already use comments and grouping for other things). Thank you!

What i have found that causes the crash are files that have a short playing length... when i took these out (short 10 second samples), everything was great... people can test it themselves with some of their scratch samples, or sp6 airhorns and other stuff and see what the length is that crashes. After that just sort by the length column and do the files from there.

Once again, thank you! I setup my custom codes nicely and its AWESOME
deejaysomething 10:31 PM - 5 November, 2011
@SiRocket

I appreciate the props, thanks. I'm really pleased that you guys are finding it useful.

Your bug diagnosis is probably bang on; I can think of a couple of reasons that might be happening. Doesn't happen on my samples, which tend to be WAVs, so maybe it's the way KF handles short durations with a particular decoder.

Can you maybe send me a file that always causes a crash? With that, it should be a simple matter to fix, he said, foolishly.

And, out of interest, where would you store key in an mp4 if you had a wider choice (say, of all the iTunes-accessible fields)?
deejaysomething 10:36 PM - 5 November, 2011
@Nyx

Actually, yeah, it was a nice-to-have feature that I originally planned, and then forgot about! As I recall m3us are pretty simple, and iTunes playlists can be exported as XML, right? Should be straightforward to grab a bunch of file paths out of those formats.

I'll give it some thought. Cheers.
SiRocket 11:50 PM - 5 November, 2011
@deejay - ill pm you a link to a file that crashes early this coming week (out of office today).

and regarding the video storage i wouldn't mind the label or remixer tag area (if they are available in mp4). I don't use either of them, i already started using composer tag for a few codes.
DJ Skitz (USA) 6:55 PM - 6 November, 2011
First off, great program. Thank you so much for handing it out for nothing. All your hard work is greatly appreciated. It seems to me to be way more intuitive the RE.

I too am having the same problem as Weststar. I get through about 3500 files and it quits. I have been analyzing smaller batches, to get around it.

Other than that, it works great.
DJ Skitz (USA) 7:02 PM - 6 November, 2011
Oh, and specs:

MBP 2.53 i5
4GB ram
Mac OS X 10.6.8
DJ Colotti 3:10 AM - 7 November, 2011
@deejay

Great program! Thank you for the hard work you put into this and willing to share with all of us.
SiRocket 9:50 PM - 7 November, 2011
@skitz...have you tried to organize by file length??... do all the files that are over 1minute long... see if you still have issues.
DJ Skitz (USA) 1:09 AM - 9 November, 2011
ill give it a shot. Thank you
DJ Skitz (USA) 12:55 PM - 9 November, 2011
Ok,I figured out what files were crashing the program. I narrowed it down by analyzing my music in alphabetical order. I started with all the "A" folders then all the "B." eventually i found that i have two old itunes files. I am talking about the 128 kbps aac files with an extension .m4u. those files crash it every time.

So I analyzed my library without those files (that i need to get rid of anyway) and it worked great.

Thank you again.
deejaysomething 12:57 PM - 9 November, 2011
@Skitz

Nice catch. Were they DRM'd by any chance?
And can you email me one of them, maybe? Be very useful to see the nature of the failure.

Cheers
DJ Skitz (USA) 1:07 PM - 9 November, 2011
Sent the email
deejaysomething 6:08 PM - 9 November, 2011
@Skitz
Confirmed that the file crashing your installation was DRM-protected. KeyFinder can't deal with that kinda thing; I might be able to make it deal with them a bit more gracefully though.

Glad you got your batches working.
Solidsnake 7:34 PM - 9 November, 2011
Upon opening the program I am getting the error message:

"You can't open the application KeyFinder because it is not supported on this type of Mac."

I am on a 2006 MacBook Pro - Intel Core Duo running Snow Leopard 10.6.8
deejaysomething 7:47 PM - 9 November, 2011
@Solidsnake

I think that will be the same problem as the guys running 10.5: probably a CPU architecture thing. It seems to run fine on C2Ds (on 10.6 and later), but I don't think older processors or versions like the 64-bit-only architecture.

Sorry. My expertise in this particular area is limited. It should be possible to make a version of KeyFinder that supports i386 as well as x86_64 (requires dual-architecture versions of the libraries) but I haven't got it working yet. If there are any Mac deployment experts lurking out there (or anyone who knows one), please speak up!
Probably the best I could do is switch the entire app and its libraries to 32-bit, which might slow it down for everyone else, so I don't really want to go there.
Solidsnake 7:55 PM - 9 November, 2011
That's what I had figured, this is cool for me to look at as I'm a Computer major too and I'm about to start programming courses next semester...
deejaysomething 8:12 PM - 9 November, 2011
Aha... Well you should feel free to download the source code, and take any C++ modules they offer you ;o)

Best of luck with the course, man. I'm supposed to get the final grade from mine in a couple of weeks...
Daktyl 11:27 AM - 11 November, 2011
Quote:
Upon opening the program I am getting the error message:

"You can't open the application KeyFinder because it is not supported on this type of Mac."

I am on a 2006 MacBook Pro - Intel Core Duo running Snow Leopard 10.6.8

strange, I'm on a 2006 macbook with a core 2 duo running osx 10.6.4 and keyfinder worked fine for me... wonder what the difference is
Sureshot (PA) 11:04 PM - 14 November, 2011
loving this so far. i think i'm done with MIK. it's silly that it's so expensive to upgrade a software i bought two months ago. and even though i decided not to upgrade i've gotta deal with a stupid pop up asking me to upgrade every time i open the program. what if your car wouldn't start after the next year's model came out (a reality for most Kia owners)?

anyway.. wondering if you could make the "Write Tags" function a button rather than a menu option. it would just be a little cleaner in my opinion. had trouble finding this the first couple times i used the program and found it quite frustrating until i did a little reading and figured it out. just a thought.

thanks man!!!
Daktyl 1:05 AM - 15 November, 2011
Quote:
wondering if you could make the "Write Tags" function a button rather than a menu option. it would just be a little cleaner in my opinion. had trouble finding this the first couple times i used the program and found it quite frustrating

+1
deejaysomething 1:13 PM - 15 November, 2011
Quote:
Quote:
wondering if you could make the "Write Tags" function a button rather than a menu option. it would just be a little cleaner in my opinion. had trouble finding this the first couple times i used the program and found it quite frustrating

+1

That would be very easy, though I'm not sure where it would fit, real-estate wise.

I guess I'd like to somehow make it clear that such a button would write to ALL the files that had been analysed, and then the other function could be left in there if you just want to write to a subset.

Sound sensible?
irieproductions 1:14 PM - 15 November, 2011
+1
the SOUNDINSURGENT 2:34 PM - 15 November, 2011
Has anybody got this working on a Vista machine??
irieproductions 3:21 PM - 15 November, 2011
its mac only for now i believe.
tehBEN 4:26 PM - 15 November, 2011
Quote:
its mac only for now i believe.

there's a windows binary but it's not fully tested on all iterations of windows
Solidsnake 5:13 PM - 15 November, 2011
Quote:
Quote:
Upon opening the program I am getting the error message:

"You can't open the application KeyFinder because it is not supported on this type of Mac."

I am on a 2006 MacBook Pro - Intel Core Duo running Snow Leopard 10.6.8

strange, I'm on a 2006 macbook with a core 2 duo running osx 10.6.4 and keyfinder worked fine for me... wonder what the difference is


It's because you have a Core 2 Duo and mine just Core Duo, your laptop has 64-bit architecture while mine sits at 32-bit (also reason why I cannot upgrade to Lion, but that looks to be more of a blessing so far minus missing out on iCloud)
the SOUNDINSURGENT 6:48 PM - 15 November, 2011
Well I got it working on a Vista machine but if I try to add more then 1 track it crashes on me?? Any ideas? An error message pops up and just says something has made the program stop work blah, blah, windows will check for a fix.
deejaysomething 6:57 PM - 15 November, 2011
Quote:
Well I got it working on a Vista machine but if I try to add more then 1 track it crashes on me?? Any ideas? An error message pops up and just says something has made the program stop work blah, blah, windows will check for a fix.

Yeah, that's been reported before but I can't recreate it, sorry. I need access to some different Windows versions. Hopefully there'll be a fix at some point soon; it's probably a pretty straightforward bug.
the SOUNDINSURGENT 7:30 PM - 15 November, 2011
Cool, Thanks for the quick response :-)
Looking forward to a working copy.
Lightning 7:44 PM - 17 November, 2011
I just downloaded it for OSX and it will not unzip on the latest Snow Leopard
Nicky Blunt 8:57 AM - 18 November, 2011
still no joi with this on windows. guess i will use rapid evolution
deejaysomething 11:10 AM - 20 November, 2011
Time for a quick Sunday morning release... a new version is up at ibrahimshaath.co.uk, which should take care of:

* SiRocket's short file crash; increased stability for large batches
* Skitz' crash: it shouldn't break if it comes up against a DRM'd or badly corrupted file.
* M3U playlist support
* _some_ Windows dependency issues

Next priorities:
* Add option to write to tags automatically for Sureshot et al.
* Get a 32-bit Mac build working
* Hopefully fix Windows
* iTunes XML support
DJ506 2:32 AM - 21 November, 2011
~ Downloaded this last week and I love it...Thank U.

The only problem I had with it is that it won't read or analyze tracks that have a different character like "Beyoncé", "Keshia Chanté", "Sigur Rós" or "Blade (200° C Club Remix)". Things like that. :)
deejaysomething 11:20 AM - 21 November, 2011
@DJ506
Hey, glad you like it.
Yeah, I came across this problem with non-ASCII characters in filenames during the original build but haven't found time to research it. It's already on the to-do list!
DJ506 11:33 AM - 21 November, 2011
Quote:
@DJ506
Hey, glad you like it.
Yeah, I came across this problem with non-ASCII characters in filenames during the original build but haven't found time to research it. It's already on the to-do list!


~ Awesome! Thanks again. :)
dirrtyharri 4:40 PM - 21 November, 2011
Hey deejaysomething;

I've downloaded the windows version and unzipped it .. i try to run the .exe and i get this error

"this application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem"

i've downloaded it a couple of times .. and still get this error ..

i'm using windows vista 32 bit .. any thoughts ??
deejaysomething 4:46 PM - 21 November, 2011
Hey dirrtyharri,

This is a known dependency; please look higher up this thread, or at the FAQ: github.com.

Cheers
dirrtyharri 4:49 PM - 21 November, 2011
ok great .. i'll give it a shot .. thanks !
Djstylez23 6:16 PM - 21 November, 2011
Quote:
Hey deejaysomething;

I've downloaded the windows version and unzipped it .. i try to run the .exe and i get this error

"this application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem"

i've downloaded it a couple of times .. and still get this error ..

i'm using windows vista 32 bit .. any thoughts ??


Another thing you can try is downloading the missing DLL file here:

www.dll-files.com

and then placing it where the KeyFinder.exe is at.....
the SOUNDINSURGENT 7:17 PM - 21 November, 2011
Quote:
Hey deejaysomething;

I've downloaded the windows version and unzipped it .. i try to run the .exe and i get this error

"this application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem"

i've downloaded it a couple of times .. and still get this error ..

i'm using windows vista 32 bit .. any thoughts ??


When you do download the dll put it in the folder with the app. That's what I had to do but still it would crash on me if I loaded more then one file at a time. If you do get it to work please let me know though, thanks.
dirrtyharri 7:26 PM - 21 November, 2011
i've got the missing dll .. it's working now .. but i'm having the same issue .. it will crash if i load more than 1 track into it .. also it's not writing the key to the file..
Nicky Blunt 10:23 PM - 21 November, 2011
got the program to load, it appears to be working fine. Ive not tested it fully. But I'm totally stoked. It looks great. Thanks for all your hard work. You are a legend!
irieproductions 10:27 PM - 21 November, 2011
his development pace is faster than serato's, thats a big plus these days :D
AKIEM 10:58 PM - 21 November, 2011
Quote:
his development pace is faster than serato's, thats a given these days :D

fixed :P
SiRocket 9:34 AM - 22 November, 2011
works good!!!! i like the "sirocket add on" :p
deejaysomething 9:38 AM - 22 November, 2011
Cheers gents =)

I can't recreate the crash on adding a second file; it'll probably be something dead simple (that whole section of the code is only about thirty lines IIRC).

Can someone who gets that crash email me some details, maybe a crash report or whatever Windows spits out?
philldafunk 5:48 PM - 29 November, 2011
In regards to using the Camelot system, what are you guys putting in the field for Gb & Gb minor?

Does Camelot simply not use flats for G maj/min, or what?
Konix 6:09 PM - 29 November, 2011
Gb = 2B
Gbm = 11A

G-Flat minor (Gbm) is unusual and not used often, so it's usually replaced with F-Sharp minor (11A). At least that's what I can gather.
philldafunk 6:15 PM - 29 November, 2011
Ok I was thinking just to use the F#'s but I just wanted to be sure. Thanks
Sureshot (PA) 10:56 PM - 1 December, 2011
Gb and F# are the same note
Daktyl 5:02 AM - 3 December, 2011
Quote:
Gb and F# are the same note

there is a theoretical difference, but the difference is musical semantics for lack of a better term
deejaysomething 3:58 PM - 10 December, 2011
Another minor release for you at ibrahimshaath.co.uk, including:

* Option to write to tags automatically (check the box in Preferences>Tags)
* Support for UTF-8 filenames (see DJ506's messages above)
* Bug fixes including some M3U problems
* I stripped out all the crap algorithms now that my project's been marked!

Next priorities:
* Get a 32-bit Mac build working
* One day, fix Windows builds
* iTunes XML support (meh)

Enjoy!
SiRocket 8:26 PM - 10 December, 2011
nice on the auto tags!!!
DJ DennisJ 2:19 AM - 11 December, 2011
GREAT app! Can I make a small feature request to increase the functionality even more? Can you have a toggle for 'skip if tag already exists'? I think I can speak for many of us when I say that some of our tracks do have key info in the key field, and it would be nice to be able to drag/drop an entire folder and have it ignore the ones that have keys.
deejaysomething 12:46 PM - 11 December, 2011
Yeah, I'll take a look at that. It's on the list. =)
DJ DennisJ 5:56 PM - 11 December, 2011
Thanks!
irieproductions 4:00 PM - 12 December, 2011
This might sound dumb but im not very familiar with all the options you have in your tool, i currently use mixed in key which offers very little customization and is very user friendly. Would i get the best results by leaving all of the default options?
irieproductions 4:14 PM - 12 December, 2011
I tested with 2 tracks and with your tool they came up as Cm and with MIK came up as Fm. I left everything default with your tool.
deejaysomething 4:37 PM - 12 December, 2011
If you don't know what an option does, leave it alone. Some will have a huge effect on accuracy, some less so.

On some tracks, MIK will be right and KF wrong, some tracks vice versa. On many, the two systems will agree. But detecting key is not an exact science.

Cm and Fm are exactly a fifth apart and very easily mistaken, even by a human in some cases. They're highly compatible; note how close they are on the camelot wheel.
irieproductions 4:43 PM - 12 December, 2011
Good stuff, thanks for the info.
deejaysomething 4:44 PM - 12 December, 2011
np =)
deejaysomething 1:32 PM - 30 December, 2011
A new release is available at ibrahimshaath.co.uk, including:

* Multicore support! Batch jobs should now be much faster, though your CPU fan may get a little noisy. Mine did. =)
* Fix for handling of Comment tags on FLAC files (not so relevant for Serato, obviously).

Next priorities:
* Get a 32-bit Mac build working
* One day, fix the Windows build

As ever, shout if you have any issues. And if any interested devs are lurking, I could use some help with the Windows build.
blackavenger 5:31 PM - 30 December, 2011
Quote:
* Multicore support! Batch jobs should now be much faster, though your CPU fan may get a little noisy. Mine did. =)

Wooo....hooooo!

8 threads of KeyFinder magic is now the order of the day. Thanks soooo much, Ibrahim!!
deejaysomething 9:10 PM - 30 December, 2011
You're very welcome =)

Anyone getting a group of failures at the beginning of a batch job, I've just uploaded a version with a quick hack that should fix that.
SiRocket 9:26 PM - 30 December, 2011
i'll cop it tonight sir :)
Nicky Blunt 8:10 PM - 31 December, 2011
any devs for windows, I know johnny M knows his way round a windws machne pretty well but idk if he can write code.
tehBEN 5:16 PM - 11 January, 2012
Quote:
any devs for windows, I know johnny M knows his way round a windws machne pretty well but idk if he can write code.

Im a windows dev been meaning to take a crack at it.
Nicky Blunt 7:17 PM - 11 January, 2012
please do ben, this would be totally appreciated, As im having no luck installing it on any of the laptops i have.
deejaysomething 7:23 PM - 11 January, 2012
tehBEN, that is excellent news. You know where to find the source, but shout if you need any help getting libraries etc.
Dj.Mojo 12:33 PM - 12 January, 2012
Can Key-Finder also find my house keys for me? Have been looking for them everywhere...but no luck :-(
ljkurt 2:59 PM - 12 January, 2012
yes all kind of music including House
Nicky Blunt 4:17 PM - 12 January, 2012
^ LOL
Dj matty k 4:32 PM - 12 January, 2012
^^ FPMSL ;-)
SiRocket 8:02 PM - 12 January, 2012
lol at the house question
DJPNUT 5:59 PM - 13 January, 2012
Guys, so this pretty much eliminates purchasing MIK?
blackavenger 6:09 PM - 13 January, 2012
Quote:
Guys, so this pretty much eliminates purchasing MIK?

I like it better, so yeah!
babooza69 7:02 PM - 13 January, 2012
waiting for window fixes!! hehe
Nicky Blunt 8:17 PM - 13 January, 2012
Quote:
waiting for window fixes!! hehe


+1 i deffo want to get it going or imma have to buy MIK & I really dont want to
SiRocket 11:15 AM - 14 January, 2012
windows.... #crickets
Nicky Blunt 6:41 PM - 14 January, 2012
Quote:
windows.... #crickets


+1
ANTHONYDJ 4:28 PM - 15 January, 2012
Hey love the program, however it crashes every time I try an mp4 file, any idea why? Using macbook Pro.
DJPNUT 4:35 PM - 15 January, 2012
Quote:
Hey love the program, however it crashes every time I try an mp4 file, any idea why? Using macbook Pro.


FYI... He is working on the issue as we speak... sit back and hold tight :)

(I have same issue as you)
DJPNUT 5:15 PM - 15 January, 2012
MP4 Issue Resolved!

Thanks deejaysomething!
deejaysomething 5:35 PM - 15 January, 2012
DJPNUT heralds my coming. Sure enough, v1.1.7 is now available for Mac at ibrahimshaath.co.uk

This includes various bug fixes (including for mp4 video decoding, sorry about that one) and newer, hopefully stabler versions of various libraries.

So, in other news, I've been looking at the 32-bit Mac thing with the aid of some very helpful forum members but, in short, it's a real pain. So I wouldn't count on it happening soon. It's still on the list though. I am making some progress on Windows, having finally landed a Win7 license.

Happy new year everyone.
Nicky Blunt 5:52 PM - 15 January, 2012
^^ score!
DJ P Dot 6:06 PM - 15 January, 2012
I just wanted to give a big THANK YOU as I found this tool to be super useful and have keyed all of my dance music!
SiRocket 8:33 PM - 16 January, 2012
shouts to deejay for the hard work on this!

FYI, Kilmore from Incubus is using your software now, we had a session the other day at his pad and i showed him your software and he had to have it :)
blackavenger 10:49 AM - 17 January, 2012
Quote:
shouts to deejay for the hard work on this!

FYI, Kilmore from Incubus is using your software now, we had a session the other day at his pad and i showed him your software and he had to have it :)

Good for you....way to pay it forward, SiRocket :)
deejaysomething 10:56 AM - 17 January, 2012
Quote:
Quote:
shouts to deejay for the hard work on this!

FYI, Kilmore from Incubus is using your software now, we had a session the other day at his pad and i showed him your software and he had to have it :)

Good for you....way to pay it forward, SiRocket :)

Absolutely. Cheers SiRocket. I appreciate the promotion, mate. =)
deejaysomething 9:50 AM - 28 January, 2012
For those who are interested in harmonic mixing, DJTT have posted their annual comparison of key detection software here: www.djtechtools.com

They didn't include KeyFinder, but whatever. =)
deejaysomething 9:51 AM - 28 January, 2012
^ Sorry, not annual, obviously. In fact it's been over two years. Oh, for an edit function.
blackavenger 6:08 PM - 28 January, 2012
Quote:
They didn't include KeyFinder, but whatever. =)

Did you submit it to them? Seeing as how Traktor bias they are, and the fact that they probably never visit this site, they may not even know KeyFinder exists.

Personally, of all the Key Detection software I've used thus far, KeyFinder is my favorite!! So thank you again, Ibrahim ;)
Dj_Roger 7:59 PM - 28 January, 2012
Personally, of all the Key Detection software I've used thus far, KeyFinder is my favorite!! So thank you again, Ibrahim ;)

+100000
SiRocket 8:02 PM - 28 January, 2012
Quote:
Personally, of all the Key Detection software I've used thus far, KeyFinder is my favorite!! So thank you again, Ibrahim ;)

+100000
deejaysomething 9:39 AM - 29 January, 2012
Thank you fellas. Here's my own comparison =)
ibrahimshaath.co.uk

Nope, I didn't submit it, it didn't occur to me.
In a lot of ways (e.g. multicore stability - which I have plans for - and, as ever, Windows support) KF's still very immature; I only wrote it six months ago and it has a developer population of 1. That's pretty small for a project with apparently a few hundred users. But next time there's a high profile comparison, hopefully it'll be a competitor.
deejaysomething 4:28 PM - 29 January, 2012
And what do you know, it's a new version.

New version 1.1.8 is available at ibrahimshaath.co.uk, featuring:
* more stable multicore performance
* the option to disable parallel processing, to reduce CPU load
* support for iTunes XML libraries and playlists
* boring bug fixes.

As always, shout if you have any question, problems, feature requests.
This update is Mac only at present, apologies to Windows heads.
WarpNote 12:14 PM - 30 January, 2012
Quote:
Thank you fellas. Here's my own comparison =)
ibrahimshaath.co.uk

First column correct key, second compatible?
deejaysomething 1:35 PM - 30 January, 2012
Quote:
Quote:
Thank you fellas. Here's my own comparison =)
ibrahimshaath.co.uk

First column correct key, second compatible?

Yup. Really should label the columns individually.

The compatibility score is the MIREX one; their system (if I recall correctly) is that you get 1 point for an exact match, 0.5 for a fifth/fourth out (C>F), 0.3 for a relative key (C>Am) and 0.2 for a parallel key (C>Cm). Seems a pretty fair system.
WarpNote 12:50 AM - 31 January, 2012
Haven't tried the latest builds, same issue for 10.5.8 ?
Been holding off as I'm planning a new mac later this year...
So will probably switch from MIK then.
deejaysomething 9:26 AM - 31 January, 2012
Quote:
Haven't tried the latest builds, same issue for 10.5.8 ?
Been holding off as I'm planning a new mac later this year...
So will probably switch from MIK then.

Yeah, sorry WarpNote. Trying to get a 32-bit Mac build working has been nearly as painful as the Windows build, and that's saying something. I'm sure it's possible, but I just can't prioritise it. =(
WarpNote 12:09 PM - 31 January, 2012
No worries, I will have to upgrade that old mac anyway, just asking.
Stay focused on making the current platform good for the newer OS, cant wait to switch :D
Weststar 2:20 AM - 4 February, 2012
Is there a way to just import songs that don't have anything written in the key or group tags? Sometimes my library fills up and I forget to key the songs individually, so going to every song locations' folder and dragging to KeyFinder takes painstakingly long.
deejaysomething 7:41 AM - 4 February, 2012
Hey Weststar,
Not at present, but it sounds to me like you're describing two problems?

Firstly, yes, KF will analyse all the songs dragged to it, although I'm working on a feature request to skip over songs where tags already exist. Might be in the next release, might not.

Secondly, going to all your song folders and dragging them in... Well that shouldn't be necessary. KF will accept playlists in M3U or iTunes XML formats, and it will also recurse through any folders you give it. So if you are paranoid about missing a track, then (assuming your music is well organised) you can just drag in your top level Music folder and wait for the import to finish.

Hope that helps.
Weststar 8:48 AM - 4 February, 2012
Quote:
KF will analyse all the songs dragged to it, although I'm working on a feature request to skip over songs where tags already exist.


That would help tremendously!

Quote:
KF will accept playlists in M3U or iTunes XML formats.


This is a good feature, but somewhat leads into a problem that the "skip over songs where tags already exist" will ultimately fix.

See, when I import my entire iTunes library and detect those keys, it detects keys for songs that have already been analyzed which takes an unnecessary amount of time. I should have been a bit more specific in my previous post; my problem is that I only want to detect keys for songs that haven't been scanned/don't have keys written in the key/group fields. Right now, it seems the only way to do this is to import the albums/songs individually, and when I happen to let a lot of new tracks build up in my library, importing these individual tracks takes quite a long time.

Does that make sense?

Thanks for the quick response! :D
deejaysomething 9:21 AM - 4 February, 2012
Ah, I see. So you were only describing one problem, in fact! =)

Well, I'm on it. Check the next couple releases, I'm sure it'll be in soon.
Nicky Blunt 10:48 AM - 5 February, 2012
any news on the windows releases????
deejaysomething 11:13 AM - 5 February, 2012
@Nicky Blunt

Some. Nothing much to shout about. Main problem right now is, I got a new build of the decoding library, but it crashes on various file types, and it shouldn't.

On the plus side, I can recreate the crashing-on-adding-two-files bug.

Slow progress, basically. What was the problem you were having, again?
Nicky Blunt 11:15 AM - 5 February, 2012
i will pm you if thats ok to keep from cluttering your thread. :)
deejaysomething 7:40 PM - 5 February, 2012
Good evening ladies and gentlemen,
I'm proud to release KeyFinder v1.1.9, which you can get here: ibrahimshaath.co.uk

Features include:
* GUI enhancements including live tag updating and simpler Preferences window
* option to write to multiple tags
* option to skip files where tags already populated
* parallel (faster) metadata reading for big batch jobs
* use of keycodes in detailed analysis window
* support for Japanese charsets (on the Mac, at least)
* CLI (sort of) and drop-to-dock-icon (Mac)
* all kinds of bug fixes

And this version brings Windows into line with the Mac release, feature wise. I'm sure there are still bugs to iron out but I think it should be more stable now.

Feedback welcome as always. Enjoy.
deejaysomething 11:58 AM - 7 February, 2012
And a timely review at digitaldjtips =)
www.digitaldjtips.com
combo808 2:36 PM - 7 February, 2012
This program is great, appreciate your work. Is there any way you can add rename file names with the key info.?
deejaysomething 3:34 PM - 7 February, 2012
Hey combo808

Theoretically, yes. But this is not something I want to implement; it's just too easy for someone to really screw up their library and blame KF. =)

Seriously, though, anyone with a serious filename schema (as opposed to just using tags) probably already has a copy of MediaRage or similar and can get it done with that, right?

Ib
selkie 10:53 PM - 10 February, 2012
THIS IS GOLD, thank you!!

I use this configuration:

snag.gy

And in ITCH I've made some smart crates for each minor key:

snag.gy

Each one of this crates have 4 filter, one filter for the same key, one for the previous key, one for the next key, and one for the major key (as I mostly have minor keys, I didn't bother in making smart crates for them).

The filters for the smart crate 4A looks like this:

snag.gy

Then if I'm playig a song and want every compatible song in my library I just browse to the corresponding smart crate (that is sorted by bpm) and I'm ready to go.

FANTASTIC!
selkie 10:55 PM - 10 February, 2012
Oh, I added a 0 before the keys because when I was doing the filter if I searched for 1A I would recieve: 1A and 11A
selkie 10:56 PM - 10 February, 2012
Oh, and I used the Windows version without any problem :D
selkie 11:01 PM - 10 February, 2012
I just changed the names of my smart crates to confuse other djs lol:

snag.gy
babooza69 11:49 PM - 10 February, 2012
deejaysomething - in your opinion, besides being free, how do you think yours is better or different than beatunes or mixed in key?
combo808 1:48 AM - 11 February, 2012
Quote:
Hey combo808

Theoretically, yes. But this is not something I want to implement; it's just too easy for someone to really screw up their library and blame KF. =)

Seriously, though, anyone with a serious filename schema (as opposed to just using tags) probably already has a copy of MediaRage or similar and can get it done with that, right?

Ib


Its useful to use for production purposes, re-naming helps organize the keyed loops.
deejaysomething 6:55 PM - 11 February, 2012
@selkie: Glad you're getting some use out of it. Plus that's a creative application of smart crates, I like it.

@babooza69: being free-as-in-speech is more important than being free-as-in-beer I think; I've got nothing against people charging for software but it's best if it can be built on. Being open source is probably KF's main strength; if the algorithm is good now (and it seems anecdotally to be in the same league as the other packages), it can get better if someone smarter comes along to work on it!

@combo808: True. It's a feature I'd consider but I'm not big into it. We'll see how it goes.
psalmon 4:33 PM - 15 February, 2012
hey deejay something,
thanks so much for this software i got it last week and it's been working great. One issue i came across yesterday was that I analysed a batch of files and for some reason the key tag won't change just for a certain batch of my songs - in KF it just says N/A in that column. he files can be analysed and if i change the settings to put the key in the comments tag it works fine but i'd like it to change the key tag which seems to be locked - do you know how i can override the lock? sorry if that's a stupid question.
thanks
deejaysomething 4:37 PM - 15 February, 2012
Hey psalmon,
Those files don't support the Key tag. Not many formats do. See the FAQ on my site.
psalmon 4:42 PM - 15 February, 2012
Good to know, thanks for the quick response - maybe i'll switch to the grouping tag.
DJ Pee 11:35 PM - 15 February, 2012
Quote:
Sorry my Music Theory is a little rusty, are these the correct Camelot codes?

dl.dropbox.com according to this www.harmonic-mixing.com

life saver..... i was scratching ma head man! Thnx

@deejaysomething .... ur definately something 'god' ....(pun intended!)
DJ Pee 11:43 PM - 15 February, 2012
Jeez...almost splashed out on MIK5 for vidz.... this is a god send.
djpuma_gemini 12:07 AM - 16 February, 2012
does key finder write the key to mp4's.
I have been manually copying them over from my MIK5 scans when I have SSL open.
deejaysomething 9:23 AM - 16 February, 2012
@djpuma_gemini
Not to the Key tag (see the FAQ on my site) but to Comment or Grouping, yeah.

In the interest of full disclosure, there is a possible bug with this; two users have reported tags being deleted from a few of their mp4 videos, but only on Windows so far, and very rarely. If you have a backup it shouldn't scare you. I'm investigating it at present.
aireyc 10:20 AM - 16 February, 2012
For tracks that won't write to the key tag, I did the comment code as recommended, but then went into Scratch Live and sorted by the comment field. It was then a simple highlighting of the blocks of tracks that correspond to each key and mass-editing the key field. You have to do it 24 times, but it takes less than 10 minutes for the entire library.
DJ PopRoXXX 5:49 PM - 17 February, 2012
Dope! I have the lastest version of MIK now and have been using it for a while now. Gonna try this out now :)
deejaysomething 8:51 PM - 18 February, 2012
Back once again with the expected behaviour is KeyFinder v1.11, which you can get here: ibrahimshaath.co.uk

Features include:
* Mac OS 10.5 support (at least on Core 2 Duo)
* automatic update notification
* support for higher bit-depth (24-bit/32-bit) audio files
* fixed a segfault that was crashing the Windows build
* improved decoding for most Windows Media file formats
* proper logging solution on Windows
* improved memory management, greater stability
* drag and drop from Serato and Traktor (OK, that was in there before but I didn't realise it...)

Feedback welcome as always, especially if you've been waiting for the Leopard build; let me know how you get on. Is it working on Core Duo machines now?

Future features? I'm finally pretty happy with what KF can do but I've got a few ideas. Let me know if you have any new suggestions.
SiRocket 2:30 AM - 20 February, 2012
#thumbsup!
Nyx 6:25 PM - 20 February, 2012
Quote:
Is it working on Core Duo machines now?

Yes, it does. Now I can use it directly on the MacBook I use for djing. Many thanks for this great piece of software!
Nyx 6:33 PM - 20 February, 2012
Quote:
Future features? I'm finally pretty happy with what KF can do but I've got a few ideas. Let me know if you have any new suggestions.

The important things all work, but maybe these things would add a bit of comfort:
- It would be nice, if the columns remembered their width and their order could be changed.
- The ability to choose an iTunes playlist directly from within KeyFinder (e. g. per popup menu) would be great.
- Sometimes I missed the possibility to remove entries from the list (e. g. using backspace).
Dj Nyce 8:01 PM - 20 February, 2012
Quote:
Back once again with the expected behaviour is KeyFinder v1.11, which you can get here: ibrahimshaath.co.uk

Features include:
* Mac OS 10.5 support (at least on Core 2 Duo)
* automatic update notification
* support for higher bit-depth (24-bit/32-bit) audio files
* fixed a segfault that was crashing the Windows build
* improved decoding for most Windows Media file formats
* proper logging solution on Windows
* improved memory management, greater stability
* drag and drop from Serato and Traktor (OK, that was in there before but I didn't realise it...)

Feedback welcome as always, especially if you've been waiting for the Leopard build; let me know how you get on. Is it working on Core Duo machines now?

Future features? I'm finally pretty happy with what KF can do but I've got a few ideas. Let me know if you have any new suggestions.


dope. extremely accurate and i love the GUI.

what's your paypal so i can give you a donation. i love when creativity and innovation is not stifled by corporate america and their bullshit.
deejaysomething 9:23 AM - 21 February, 2012
Quote:
Quote:
Is it working on Core Duo machines now?

Yes, it does. Now I can use it directly on the MacBook I use for djing. Many thanks for this great piece of software!

Sweet. Great news.

Quote:
- It would be nice, if the columns remembered their width and their order could be changed.
- The ability to choose an iTunes playlist directly from within KeyFinder (e. g. per popup menu) would be great.
- Sometimes I missed the possibility to remove entries from the list (e. g. using backspace).

Damn, those are really good ideas. =) The third is certainly doable and I'll research the other two.

Quote:
dope. extremely accurate and i love the GUI.

what's your paypal so i can give you a donation. i love when creativity and innovation is not stifled by corporate america and their bullshit.

Much appreciated, man, thank you. There's a little yellow Donate button in the left panel of my site ibrahimshaath.co.uk. I'm glad the app's working out for you.
deejaysomething 12:16 PM - 4 March, 2012
Good morning sir, good afternoon madam, good evening all, how d'you do?

Any existing users should get an automatic notification, but here nonetheless is KeyFinder v1.12, which you can get from my site as usual: ibrahimshaath.co.uk

Features include:
* Automatic library integration with Serato, Traktor and iTunes (you can specify file paths in Preferences)
* The ability to remove rows from the drag and drop list, either with the Delete key or right-click menu

Beware: loading even short playlists from a large iTunes library can take a while. You may want to use other methods. But I thought I'd include it for the sake of completeness.

Feedback welcome as always.
nik39 1:20 PM - 4 March, 2012
How far is the mp4 support?
deejaysomething 1:30 PM - 4 March, 2012
Quote:
How far is the mp4 support?

In what sense, nik?
MP4s work fine over here, both audio and video. There is an occasional bug re their metadata but it's hard to track down.
Are you having a particular issue?
nik39 1:34 PM - 4 March, 2012
Oops. Looks like I've missed it. Thought it could not do it properly.

What do you mean when saying you read the sl and traktor library?
deejaysomething 1:38 PM - 4 March, 2012
For Serato, it will read subcrate and smartcrate files from a path relative to the database v2 file, and for Traktor, it will read the collection.nml file. In each case it will present them as playlists in the new library widget.

Not sure exactly how stable this feature is yet, but it works on all my test machines.
nik39 2:12 PM - 4 March, 2012
Ah, so your app is able to read and parse the database file and the crates files?
deejaysomething 2:13 PM - 4 March, 2012
It doesn't read the Serato db, just the crates. That was painful enough =)
nik39 2:15 PM - 4 March, 2012
;-)
Johnny Cinco 3:54 AM - 8 March, 2012
Hi, I'm getting the errors below when I attempt to run batch analysis on my serato crates, Serato Ver 2.3.3.7. Apparently your app does not point to the correct file location, however, I can drop them in the app and it works really great. Is there a way I can manually fix this issue?

My files are stored in F:\music\

Keyfinder V1.12 preference for Serato set to: F:/_Serato_/database V2

Log Excerpt:

2012-03-08 19:52:12.578 Debug: TagLib returned NULL File for /Music/Culture Shock Collection/Culture Shock Rock[Current]/The Police - Roxanne (135).mp3

2012-03-08 22:47:37.000 Critical: Failed to open audio file: /Music/X-Mix Collection/X-Mix ChartBusters/X-Mix - Chartbusters 24/Alacranes Musical - Por Amarte Asi.mp3 (-2)
deejaysomething 7:57 AM - 8 March, 2012
That'll be the F: ... can you send me the crate file please? It's stored in a folder called subcrates; I should be able to fix it if I can see how Serato refers to the root when it's not C:
nik39 11:03 AM - 8 March, 2012
djsmthng, the path is always relative to the root of that drive. So a referenced file "/a/b/c/d/here.mp4" stored on the x: drive translates to

x:\a\b\c\d\here.mp4
deejaysomething 11:09 AM - 8 March, 2012
Cheers nik, I figured it must be something like that.

Just thinking edge cases: I'm assuming, then, that it doesn't do crates that mix files from different mount points?

I'll try and patch it over the weekend, anyway.
deejaysomething 9:42 PM - 8 March, 2012
@Johnny Cinco,
I got bored and patched the Windows version on the site, and it should take care of that bug. =)

Let me know if not.
Johnny Cinco 3:59 AM - 9 March, 2012
Thanks Deejaysomething....It's works now....Great Job!!
slimmjimm 4:59 PM - 11 March, 2012
Pretty much a computer dummy, can't get this to unzip, is it because I'm using 10.6.3?
deejaysomething 5:46 PM - 11 March, 2012
slimmjimm, I just tested the zip file and it's fine, so yours may have corrupted. Please try downloading it again.

Snow Leopard is more than capable of running KeyFinder.
slimmjimm 9:24 PM - 11 March, 2012
Quote:
slimmjimm, I just tested the zip file and it's fine, so yours may have corrupted. Please try downloading it again.

Snow Leopard is more than capable of running KeyFinder.


Got a full DL after a few tries. Thanks, my wife was giving me the stink eye for using both laptops.

Quick question, I might have skipped over it in the thread, are there any problems with analyzing .wl files?
deejaysomething 9:41 PM - 11 March, 2012
I have absolutely no idea what a wl file is, sorry. I've certainly never tested one, but you might get lucky!
Nicky Blunt 11:34 PM - 11 March, 2012
.wl is the file type for whitelabel.net seratos promo site
deejaysomething 2:07 PM - 12 March, 2012
Ah, gotcha.
Well, if VLC can play it, KF should be able to analyse it. They use the same decoding library.

IIRC whitelabel files include an unencrypted lower quality version for most media players, right? If so, KF should use that for analysis. In theory.
Nicky Blunt 6:07 PM - 12 March, 2012
the reason they asked is because MIK was corrupting .wl files because they are encoded differently. Im not really much a computer wizz, so I dont really understand other than unless u play them via erato they play @ 32kbs but with serato hardware plugged in @ 320. So i figure they were asking about the corruption issue? Maybe take a look on the .whitelabel forums & take a peek @ the thread about it. U will prob pick up more from there than u will from me.
deejaysomething 5:05 PM - 15 March, 2012
Cheers Nicky, that sounds about right.
It's possible KF would have the same effect as MIK, but it all depends on whether wl files conform to the standards as implemented in TagLib and LibAV.

What about it slimmjimm - did it work on whitelabel files?
Nicky Blunt 2:22 PM - 16 March, 2012
what ive been doing with whitelabel files is downloading them twice, run one set through, then manually tag the results of the fresh ones.

Seems to be working out ok so far.
AKIEM 8:59 AM - 19 March, 2012
Nicky, you mean making a copy instead of downloading twice right?
slimmjimm 2:30 PM - 19 March, 2012
Seems to be working OK, not sure if some of the older ones retain their quality. I ran the MSTRKRFT remix of D.A.N.C.E and it seems kind of distorted, I have to find it on my backup drive and compare.
Nicky Blunt 10:18 AM - 20 March, 2012
that distortion is exactly what we were talking about!

@ akiem, shamefully no! I actually did download it twice! lol wont be doing that again now tho!

:)
AKIEM 10:23 AM - 20 March, 2012
:)
sweet
babooza69 2:39 PM - 20 March, 2012
hi i haven't used this before but am thinking about it after this trip i'm on, quick ? for mac - am i able to select an entire crate in serato or folder in itunes and scan all files and have it write key to tags?
funkyfresh2012 3:04 PM - 20 March, 2012
I just got ahold of this a couple of weeks ago...

@deejaysomething
Thanks for this! You are the man!
funkyfresh2012 3:10 PM - 20 March, 2012
Quote:
hi i haven't used this before but am thinking about it after this trip i'm on, quick ? for mac - am i able to select an entire crate in serato or folder in itunes and scan all files and have it write key to tags?


Currently, you cannot pull files directly from itunes. BUT, you can pull the original music files outside of itunes and add it to the S/W
deejaysomething 4:29 PM - 20 March, 2012
Quote:
Quote:
hi i haven't used this before but am thinking about it after this trip i'm on, quick ? for mac - am i able to select an entire crate in serato or folder in itunes and scan all files and have it write key to tags?

Currently, you cannot pull files directly from itunes. BUT, you can pull the original music files outside of itunes and add it to the S/W

Actually, the most recent versions have some integration with other libraries, so you can analyse/tag the contents of an iTunes playlist or Serato crate. But you have to refresh the tags when you reenter the parent app.
slimmjimm 5:04 PM - 20 March, 2012
Quote:
that distortion is exactly what we were talking about!


I thought it was actually fucking with the file so it would not play @320, no idea there was distortion involved.

I mentioned probs with an older .wl file because I thought that Serato changed something so there would be no problems with MIK, was it the other way around?
deejaysomething 5:13 PM - 24 March, 2012
Oi oi.
The new version 1.14 is up at ibrahimshaath.co.uk.

This includes:
* a slightly smarter GUI (you can resize the two panes, and it remembers where you left it)
* a bunch of bug fixes (including for iTunes Comment tags)
* by popular demand, the option to write keys to filenames. Do not come crying to me if you fuck up your library.

This version also marks the arrival of LibKeyFinder, a C++ library of KeyFinder's algorithm. This is open sourced under the GPL, so any geeks out there can integrate it into their own stuff.

As always, intelligent feedback gratefully received.
Karl W 7:33 PM - 24 March, 2012
Thanyou! Love your work!
Karl W 7:33 PM - 24 March, 2012
^^^^^opps Thankyou:)
EdT2000 7:31 AM - 25 March, 2012
Hi deejaysomething, just downloaded 1.14 for Windows and it is now writing both custom key codes and standard ones to the Comments and Keytag fields, even though I just have the option to write custom codes selected.

The program is awesome by the way!
bkpsu 2:39 PM - 25 March, 2012
Hello,

Great program, and much appreciated! Just wanted to bring up a few issues I've come across.

1. Running 1.14 on Win7/x64 with Core 2 Duo & 4GB Ram, I'm noticing that during a large batch job (400+) files, the memory usage of the program goes and stays up. After file 300 or so, the rest of the files started failing with Memory Errors, then the program crashed. Restarted, and ran the remaining files, and still noticed a large amount of memory committed to the program. Looks like a possible memory leak.

2. I've noticed that changing & saving preferences (such as switching between Serato DB files on different drives) doesn't take effect unless the program is restarted.

3. Drag & Drop functionality doesn't work, as dropping a file onto the program window has no effect.

4. Are Smart crates not supported?

5. Where are the preferences stored? I'm wondering if the Camelot Easymix codes I've entered into the Custom Codes will get saved when I install new revisions of the program.

Thanks again and great job!

-B.K.
deejaysomething 8:30 AM - 26 March, 2012
Quote:
Hi deejaysomething, just downloaded 1.14 for Windows and it is now writing both custom key codes and standard ones to the Comments and Keytag fields, even though I just have the option to write custom codes selected.

Bizarre bug. My mistake, I know where it is and I'll try and get it patched in the next couple days.

Quote:
1. Running 1.14 on Win7/x64 with Core 2 Duo & 4GB Ram, I'm noticing that during a large batch job (400+) files, the memory usage of the program goes and stays up. After file 300 or so, the rest of the files started failing with Memory Errors, then the program crashed. Restarted, and ran the remaining files, and still noticed a large amount of memory committed to the program. Looks like a possible memory leak.

Looks that way. I don't know where it's coming from but I think it's been in for a few versions. I'm on it, but debugging in Windows is horrible (there's no leak on Unix that I can see).

Quote:
2. I've noticed that changing & saving preferences (such as switching between Serato DB files on different drives) doesn't take effect unless the program is restarted.

Prefs are applied as soon as possible; switching between serato dbs only needs a new batch window (ctrl+shift+N) to be applied. But I might look at changing that behaviour.

Quote:
3. Drag & Drop functionality doesn't work, as dropping a file onto the program window has no effect.

Errr, no idea. Works fine on my Windows VMs. But I'll take a look I guess.

Quote:
4. Are Smart crates not supported?

I thought they were. Has there been a serato update? My smart crates load fine but I'm not exactly keeping up with SL at the moment.

Quote:
5. Where are the preferences stored? I'm wondering if the Camelot Easymix codes I've entered into the Custom Codes will get saved when I install new revisions of the program.

Prefs are stored in the registry on Windows, I believe. I always try my best to ensure backwards compatibility with old preferences.

I am beginning to lose patience with developing for Windows. It takes (as an estimate) five times as long as for the Mac, and is no fun (important when you're not getting paid). Seriously, there must be a Windows dev out there who wants to take care of it...
deejaysomething 10:13 PM - 26 March, 2012
Quote:
Hi deejaysomething, just downloaded 1.14 for Windows and it is now writing both custom key codes and standard ones to the Comments and Keytag fields, even though I just have the option to write custom codes selected.

The program is awesome by the way!

Just uploaded a patched version. Download 1.14 again and you should be fine. Apologies for the daft bug.
EdT2000 7:44 PM - 27 March, 2012
Quote:
Quote:
Hi deejaysomething, just downloaded 1.14 for Windows and it is now writing both custom key codes and standard ones to the Comments and Keytag fields, even though I just have the option to write custom codes selected.

The program is awesome by the way!

Just uploaded a patched version. Download 1.14 again and you should be fine. Apologies for the daft bug.


I think you should work for Serato, see if you can sort them out to fix their bugs as quickly. Will download tonight and test it, great work, thanks.
EdT2000 9:16 AM - 29 March, 2012
All working as expected now. Great work, thanks for the quick fix.
bkpsu 2:54 AM - 30 March, 2012
Quote:



Quote:
1. Running 1.14 on Win7/x64 with Core 2 Duo & 4GB Ram, I'm noticing that during a large batch job (400+) files, the memory usage of the program goes and stays up. After file 300 or so, the rest of the files started failing with Memory Errors, then the program crashed. Restarted, and ran the remaining files, and still noticed a large amount of memory committed to the program. Looks like a possible memory leak.


Looks that way. I don't know where it's coming from but I think it's been in for a few versions. I'm on it, but debugging in Windows is horrible (there's no leak on Unix that I can see).


Yeah, garbage collection isn't as automatic on Windows as it is in other platforms...Anyway, I compiled and ran your source code and found at least one culprit. In asynckeyprocess.cpp the audio object wasn't getting released after every file processed. Adding "delete audio;" before the return did the trick. I tested by running a large batch, and the memory usage isn't increasing nearly as much as it was before.

Quote:

Quote:
2. I've noticed that changing & saving preferences (such as switching between Serato DB files on different drives) doesn't take effect unless the program is restarted.


Prefs are applied as soon as possible; switching between serato dbs only needs a new batch window (ctrl+shift+N) to be applied. But I might look at changing that behaviour.


I see it now...Automatic reload would be useful for someone like me, with multiple DBs spread over both local & network drives.

Quote:

Quote:
3. Drag & Drop functionality doesn't work, as dropping a file onto the program window has no effect.


Errr, no idea. Works fine on my Windows VMs. But I'll take a look I guess.


This one may be related to the QT library version...I used 4.8.0 (VS2010 compatible) and it worked from the first build...yours are at 4.7.4.

Quote:

Quote:
4. Are Smart crates not supported?


I thought they were. Has there been a serato update? My smart crates load fine but I'm not exactly keeping up with SL at the moment.


My mistake - didn't realize that Serato stores the smart crates in the main DB (local drive) not the network drive on my setup. Though, possible new feature would be to show the distinction between Smart & Regular crates (like the blue/brown icons Serato has).

Quote:

Quote:
5. Where are the preferences stored? I'm wondering if the Camelot Easymix codes I've entered into the Custom Codes will get saved when I install new revisions of the program.


Prefs are stored in the registry on Windows, I believe. I always try my best to ensure backwards compatibility with old preferences.


Cool!
deejaysomething 9:15 AM - 30 March, 2012
Quote:
In asynckeyprocess.cpp the audio object wasn't getting released after every file processed. Adding "delete audio;" before the return did the trick. I tested by running a large batch, and the memory usage isn't increasing nearly as much as it was before.

Can't believe I missed that delete (and that valgrind didn't pick it up). Must've been when I switched to the library-ised KeyFinder. Good catch. That will probably be 99% of the memory problem as the audio objects get really big.

Quote:
I see it now...Automatic reload would be useful for someone like me, with multiple DBs spread over both local & network drives.

It's a headache though; you'd have to cycle through open windows, do validation to make sure you weren't interfering with running batches, yada yada. I might take a look at it. Feel free to patch it yourself though.

Quote:
This one may be related to the QT library version...I used 4.8.0 (VS2010 compatible) and it worked from the first build...yours are at 4.7.4.

Actually drag and drop got worse in 4.8 on all my machines; it wouldn't accept symlinks any more. But if it works for you, cool.
deejaysomething 12:05 PM - 31 March, 2012
1.15 is up at ibrahimshaath.co.uk

It includes:
* Custom sorting in the table widget; just click a column header
* Big dumb memory leak fixed - props to bkpsu =)
* Another couple of bugfixes
Karl W 9:23 PM - 3 April, 2012
After scanning about 5000 mp4s last night I went to work and noticed I had corrupted a fair few mp4's, maybe 150 or so :( It was an older version of Keyfinder so not sure if you've fixed it but yeah, Thought I would let you know those tracks were playing in 2.3.3 before I scanned in keyfinder yesterday.
sacrilicious 9:03 PM - 25 April, 2012
Oops didn't see to grab 1.15 but just started a batch job on about 4gb of new tunes and it seems to be running 3-5x faster than Mixed in Key
sacrilicious 9:16 PM - 25 April, 2012
Feature suggestion: ability to automatically skip tracks over a certain length. I tend to dump a few new mixtapes into my library as Scratch Live is my primary audio player, and skipping over a few 40-120m mixes would've increased the batch analysis' speed dramatically (I could work around this, but I find it easier to just dump all of my downloaded tunes into a "new" folder then analyze that)
tim7even 4:26 AM - 30 April, 2012
deejaysomething

thnx a lot for this cool app
the only thing I need help with is after "write key to a file"
I go to my SSL library how to integrate key to a "comments" or "key"?

and have u tried contacting Serato to sell ur app?
deejaysomething 8:48 AM - 30 April, 2012
Quote:
the only thing I need help with is after "write key to a file"
I go to my SSL library how to integrate key to a "comments" or "key"?

Sorry, I don't understand. Can you rephrase?
tim7even 6:31 PM - 30 April, 2012
sorry
how to make it work with Serato Scratch Live?
deejaysomething 7:24 PM - 30 April, 2012
Write the results to the file (I recommend the Grouping tag), then re-read the id3 tags in SL.
djfrequency 9:41 PM - 30 April, 2012
thanks for this!! way better then mixed in key worked faster and reads my serrate crates!!
Res-Q 10:57 PM - 30 April, 2012
yes Key Finder is dope!!!
SiRocket 10:13 AM - 1 May, 2012
thumbs up!
deejaysomething 10:24 AM - 1 May, 2012
Cheers gents. Not been working on it at all in the last month or so; way too much Real Life happening. But it's energising to see that people are still getting into it.

Will sit down and try to fix the Windows build at some point; quite a few users having bizarre crash trouble. Plus I have a few plans for the future of the software.
DJ Dynamite - NJ 1:02 PM - 1 May, 2012
I don't used software like this to DJ but it comes in very handy for doing remixes. Good work!
tehBEN 2:22 PM - 1 May, 2012
Quote:
way too much Real Life happening

i hear you on that one good sir, i've been in the same boat with work. I downloaded the source code to tinker on windows but I realized Im several iterations behind lol. I'll set a reminder to check out the newest iteration of the source sometime this weekend and get to coding!

I wish I did something like this for my senior project in college but Digital DJing wasn't even mainstream back then, now I feel old.
DJ JT Stevens 10:49 PM - 4 May, 2012
Just wanted to say thank you deejaysomething for this great tool. I've never used Mixed In Key so I can't compare the two but your program works amazingly well and is very accurate from what I can see so far. I'm in the process of key tagging my entire library (crate by crate) and can't believe how quickly it's going by.

Kudos to you for writing a very nice piece of software. I will definitely be donating. Cheers.
Marv Incredible 5:30 AM - 5 May, 2012
^^ Real Talk
tim7even 1:49 PM - 8 May, 2012
Could you please help me to make this cool app to write keys in to my Scratch Live

thnk you
Solidsnake 8:21 PM - 16 May, 2012
deejaysomething... couple of things...

Firstly, awesome app, loving it. I'm on 32-bit and it now works pretty well for mp3's. My .mp4's however won't analyze program just closes after an error message. I'll post more about it later exactly what it says.

My other concern is and this is open to anyone, I use iTunes to organize my music library. Now I went through by dragging the artist folders from my iTunes/iTunes media/music folder. Now that I have my whole library scanned, what is recommended to scan new songs? Do I need to go through by dragging all of the artists folders to the program again? Will it re-write over songs that have already been tagged or can I turn this off? Just looking for an efficient way to go about tagging new songs without having the re-analyze the entire library.
tim7even 11:22 PM - 18 May, 2012
Quote:
Write the results to the file (I recommend the Grouping tag), then re-read the id3 tags in SL.


"then re-read the id3 tags in SL" how to make this happen?
Karl W 7:16 AM - 20 May, 2012
^^^ LOL click rescan tags?! :) box unplugged
tim7even 8:44 AM - 20 May, 2012
=))))) super funny! долбаёб!
Dj Nyce 10:08 AM - 21 May, 2012
with the latest version 1.15 it will detect keys, but not not write them.

my steps
add a few files
click run batch analysis
KF finds keys
select all (ctrl-a)
right-click and select (Write tags to files) or click cmd-t
window pops up: Data Written to 0 tags and 0 filenames

this happens no matter which files i analyze. Also "Skip files.." is disabled.
deejaysomething 10:16 AM - 21 May, 2012
Quote:
with the latest version 1.15 it will detect keys, but not not write them.

my steps
add a few files
click run batch analysis
KF finds keys
select all (ctrl-a)
right-click and select (Write tags to files) or click cmd-t
window pops up: Data Written to 0 tags and 0 filenames

this happens no matter which files i analyze. Also "Skip files.." is disabled.

Can you post a shot of your Preferences screen?
Dj Nyce 10:33 AM - 21 May, 2012
deejaysomething 10:35 AM - 21 May, 2012

Thanks, that all looks good. Can you maybe email a couple of tracks it refuses to write to? I'll take a look as soon as I can.
Nicky Blunt 8:14 PM - 23 May, 2012
does this work for aiff files?

If yes awesome, If not is there anything thats does?