1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

New open source key detection tool

Dieses Thema im Forum "General DJ Forum" wurde erstellt von ibsh, 9. Oktober 2011.

  1. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    The short version: have a free key classifier for Mac OSX. :D

    Hey all,

    I just finished a computer science course and built a key detection tool for DJs, called KeyFinder, as my final project. It's designed to work primarily with EDM, but it's highly tweakable and I've had decent results with various genres. If you're into harmonic mixing you may want to give it a try.

    In addition to a batch key detection interface which can write to metadata tags, it includes a musical visualisation tool called a chromagram. I've found this 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.

    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 the results verified. 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 the community finds it useful. It's a bit basic, and for Mac only at present, but it should be pretty simple to port to Windows if there's interest. Plus if anyone wants to do that themselves, the source code is available.

    If you want to try it you can download a Mac binary here. 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 feedback or questions, feel free to get in touch here (I'm a new Traktor user so I don't think I can get PMs on the forum yet) or by using the email address on that page.

    Cheers
     
  2. rainerh

    rainerh Well-Known Member

    Beiträge:
    2.465
    This sounds great. I ilke the user interface. Cool, that it is free. Pitty that it does not support Windows (yet).
     
  3. Fedor K

    Fedor K New Member

    Beiträge:
    4
    any version for windows?
     
  4. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    @Fedor K;

    Sorry, not yet. I only have access to a crappy old XP laptop, Windows-wise. I intend to give it a shot in a few weeks. I don't think it'll be particularly difficult; it's written in Qt which is a cross-platform framework.
     
  5. partymix

    partymix New Member

    Beiträge:
    11
    Keep us posted if Windows version is available. Eager to give it a try. Right now i'm using the Mixed in Key which pretty decent in detecting keys.
     
  6. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    @partymix
    Will do.

    Yeah, MIK is good. But it's closed source, and costs money =)

    Rapid Evolution is good too; it's what I used to use before I wrote KF.
     
  7. malzfreund

    malzfreund NI Product Owner

    Beiträge:
    2.495
    ibsh,

    really appreciate that you made your project public :)

    rapid evolution is cool, too; but i don't like that it's written in java (RE just doesn't feel snappy) and i don't think they are open-source (not sure what exact license they use). MIK is just a no-no for me. needs to be connected to the internet/call home all the time, costs money, etc. not good.

    as you've written your tool in Qt, i really hope somebody ports it to win or linux. (i don't have an os x box.) unfortunately, i don't have the expertise to help on a port myself but i'd certainly be happy to test in case somebody goes ahead with it
     
  8. OpaDirty

    OpaDirty NI Product Owner

    Beiträge:
    251
    Thanks for sharing that :)
     
  9. Anselm.

    Anselm. NI Product Owner

    Beiträge:
    151
    it's clean, it's cool, wanna try that, but I'm a pc ;)
     
  10. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    I'm working on the Windows version, I promise =)

    I have a working build but it's still probably at least two weeks away, even if I don't screw it up some more...
     
  11. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    Hey all,

    I was able to get a Windows version working earlier than I thought.

    It may be a bit unstable (and it's only been tested on XP so far) but if you want to try it, you can find it here.

    Please let me know if you find any bugs, or if you have any other feedback, either here or using the email link on that page.
     
  12. dj_eddie_gr

    dj_eddie_gr Forum Member

    Beiträge:
    166
    Nice job man ! thumbs up!
     
  13. partymix

    partymix New Member

    Beiträge:
    11
    Hi ibsh,

    An error encountered upon executing your program.

    [​IMG]

    By the way, I'm using Windows 7.
     
  14. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    @partymix

    Here's some advice offered by Windows 7 users on a couple of other forums: I will try and take care of these dependencies in the next version I upload, but that might not be very soon.

    Issue 1:
    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."

    Issue 2:
    mingw10.dll is missing
    "Extract this into the KeyFinder folder"

    Issue 3:
    libgcc_s_dw2-1.dll is missing
    "Put this in the KeyFinder folder"
     
  15. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    There's a new version up, with some fixes and M3U playlist support.
    Some of these Windows dependencies are resolved, too, but not all of them.
     
  16. partymix

    partymix New Member

    Beiträge:
    11
    Still not working on my Windows 7 :-(
     
  17. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    @partymix
    Can you be more specific, mate? Have you tried the dependency files mentioned on the FAQ?
     
  18. partymix

    partymix New Member

    Beiträge:
    11
    See screenshot:

    [​IMG]
     
  19. ibsh

    ibsh NI Product Owner

    Beiträge:
    75
    OK. That version of the DLL must not be for your version of Windows. Try installing the relevant runtime linked in this thread.
     
  20. Mystic38

    Mystic38 NI Product Owner

    Beiträge:
    2.325
    hi.. what key notation do you use? F#, 2B or 7d..

    ie standard notation, camelot (copyrighted), or open key notation?..

    windows 7/64 here