What's new?

  • 2013-11-27: New version 1.25 is now available for Windows as well as Mac. Should work on OSX Mavericks, and fixes a small Key tag bug.
  • 2013-07-23: Mixvibes have just launched CrossDJ 2.5, which uses KeyFinder for key estimation.

Get involved!

Do you have language skills? Head over to Transifex and you can help localise the KeyFinder GUI.

And of course, KeyFinder is maintained, distributed and supported for free, so donations are always gratefully received. Click the button on the left.

KeyFinder is an open source key detection tool, for DJs interested in harmonic and tonal mixing. Designed primarily for electronic and dance music, it is highly configurable and can be applied to many genres. It supports a huge range of codecs thanks to LibAV, and writes to metadata tags using TagLib.

It's intended to be very focused: no library management, no track suggestions, no media player. Just a fast, efficient workflow tool.

The accuracy of the algorithm is pretty good. Here's a comparison with some other packages. A hundred tracks is not enough to draw any significant conclusions, and I don't claim that KeyFinder is better than other software, but I think it shows that the algorithm is in the same league.

The standard KeyFinder interface performs batch jobs, detecting the keys of a group of files quickly and simply. There is also a detailed analysis interface, which can be used to visualise chord structures, melodies and key changes in a single recording.

 
KeyFinder's batch interface KeyFinder's detailed interface
 

I originally developed KeyFinder in 2011 as part of my MSc in Computer Science. The algorithms, design and implementation are described in some detail in my project report, which you can download, though it's a bit heavy going.

Please contact me if you have any questions, or if you want to get involved.

KeyFinder is licensed under the GPL version 3, and is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Older versions

v1.24 (Mac OS)  UK Primary
v1.23 (Mac OS)  UK Primary
v1.22 (Mac OS)  UK Primary
v1.21 (Mac OS)  UK Primary
v1.20 (Mac OS)  UK Primary
v1.19 (Mac OS)  UK Primary
v1.17 (Mac OS)  UK Primary
v1.24 (Windows)  UK Primary
v1.23 (Windows)  UK Primary
v1.22 (Windows)  UK Primary
v1.21 (Windows)  UK Primary
v1.20 (Windows)  UK Primary
v1.19 (Windows)  UK Primary
v1.17 (Windows)  UK Primary
v1.16 (Windows)  UK Primary