Ibrahim Sha'ath edited this page Oct 24, 2016 · 74 revisions

KeyFinder: Frequently Asked Questions

Will you be releasing KeyFinder 2 on Windows?

No. I no longer have the resources or knowledge to build and release for Windows. All the code is still cross-platform and publicly available, so if the community wants to find someone with the skills and the time, I can certainly help him or her out with what I've learned, if that helps get you all back on track. But for now, there are no plans in that direction.

Fine, but running an old version on Windows still tells me that new versions are available.

Yeah, sorry about that. I suggest using Windows Firewall or similar to stop KeyFinder calling out to the web. This should stop the new version notification without otherwise affecting the app.

Can you help me with KeyFinder on Windows/Linux?

Nope. Please don't email me requesting support for KeyFinder if you're not on a Mac.

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

Music is not an exact science. Not every song in the world has one true key, and I've seen talented musicians and musical theorists disagree very loudly over whether a particular tune was major or minor, not to mention all of the modal and esoteric scales that none of the currently available software detects. Moreover, none of the key estimation algorithms out there are perfect, this one included. Many assume that Beatport get their key information from the artist/label: they don't. They use another fallible piece of software, though they don't publicise which one.

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 or hit Cmd+T.

Why aren't my keys showing up in Serato/Traktor/iTunes/whatever?

You've got to make sure KF is writing to tags (see above), and that those tags are of a kind that your software reads (bear in mind that support for the actual "Key" tag is pretty limited). Then hit "rescan id3 tags" in Serato, or "check consistency" in Traktor, or "Get Info" in iTunes, or something similar.

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?

Check out EvanPurkhiser's keyfinder-cli.

Otherwise, 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]

Can I run KeyFinder on Linux?

Probably. One user suggested that the following works for Ubuntu 13.10, but I can't verify it or support it:

sudo apt-get install qt5-qmake qt5-default libqt5xmlpatterns5-dev libboost-all-dev libfftw3-dev libavutil-dev libavcodec-dev libavformat-dev libtaglib-ocaml-dev
git clone https://github.com/ibsh/is_KeyFinder.git
cd is_KeyFinder/
git clone https://github.com/ibsh/libKeyFinder.git
mv libKeyFinder/ keyfinder
cd keyfinder
sudo make install
cd ..
sudo make install

Where does KeyFinder store my preferences?

In ~/Library/Preferences on the Mac and in the registry on Windows.

Where does KeyFinder store its log file?

It's called KeyFinder.log, and it's in ~/Library/Logs on the Mac and in the executable's directory on Windows.

It doesn't work! 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 version of OSX you're using: if you're running Windows or Linux, please don't email me; I cannot help.
  • 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?
  • Most importantly, from a very good article on this subject: Above all, be precise. Programmers like precision.
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.