Skip to content
Ibrahim Sha'ath edited this page Jul 5, 2013 · 74 revisions

KeyFinder: Frequently Asked Questions

Expected behaviour

Why does KeyFinder produce the wrong key for this song? Also, why does it disagree with Mixed in Key/Traktor?

Music is not an exact science. Not every song in the world has one true key, and I've seen talented musicians disagree very loudly over whether a particular tune was in C major or A minor. Moreover, none of the key estimation algorithms out there are perfect, or even 85% accurate, this one included. Very few of them consider anything other than diatonic keys, for example.

However, all that being said, make sure you didn't change anything in KeyFinder's advanced preferences. They really are advanced, and you shouldn't screw with them unless you understand them. They will significantly affect the app's accuracy, and probably not for the better.

Why doesn't KeyFinder write to my files during analysis?

If you want this automatic behaviour, go to Preferences (or Preferences > Tags , prior to v1.9) and check the relevant box. Alternatively, once you've run a batch job, select all the files you want to write to and then right-click > Write key to tags.

Why doesn't KeyFinder use any sharps?

Every sharp is also a flat*. Look at a piano keyboard: the black key between C and D can be called either C# or Db, dependent on context. I just use all flats in KeyFinder because "b" looks better in more fonts than "#". It's also one keystroke fewer =)

* For the sake of simplicity, and with apologies to any music theorists.

Why doesn't KeyFinder use the Camelot codes?

Because they're the intellectual property of Mixed In Key. KeyFinder allows you to specify custom codes in the Preferences pane.

Can you tell me how to fill in the Camelot codes?

If you can't figure this out from the circle of fifths, you may not have done enough reading to be mixing harmonically. Please pay some respect to the people who came before you, by learning how your tools and techniques work. It should only take a half-hour of research. If you're still feeling lazy, users on the Serato and DJTechTools forums have posted images of how to get this done.

Can I use KeyFinder on the command line?

Sort of. Call the executable with the command line arguments -f filepath to have the key estimate printed to stdout (and/or any errors to stderr). If you also use the switch -w it will try and write to tags. Preferences from the GUI are used to determine the exact operation of the CLI.

Don't forget that the Mac binary is buried in the .app bundle, so your command line will look something like: ./KeyFinder.app/Contents/MacOS/KeyFinder -f ~/Music/my_track.mp3 [-w]

Where does KeyFinder store my preferences?

At the moment, they're in ~/Library/Preferences on the Mac and in the registry on Windows.

Crashes and bugs

KeyFinder crashed! What do I do?

You know when you're DJing, and the dancefloor's packed and good times are all about, and that one guy comes up and asks, with a totally straight face, "can you play something good"?

Receiving this question can feel a little like that. Of course you want everyone to have a great night, and of course I want to find bugs in KeyFinder and fix them, but the way in which the question is asked often provokes one reaction above all others. It is commonly abbreviated WTF.

So, if you're having trouble with KeyFinder, either raise an issue here on github, or send me an email, but make sure it's detailed. If I can't understand your message, and can't recreate your problem, I usually can't fix it. So the best thing is to recreate it for yourself, and describe exactly what you did, unambiguously, step-by-step.

  • Tell me the KeyFinder version number. You can get it from the About screen.
  • Tell me which OS and version you're using.
  • Are there any error messages? Does the application close down? Does the OS show any messages? If you can't describe something, how about a couple of screen shots?
  • If you do the same operation multiple times, does it always fail in the same way, or on the same file?
  • And finally a quote, from a very good article on this subject: Above all, be precise. Programmers like precision.
Clone this wiki locally