Hi Mohamed,

Key Detection is part of the exciting Music Information Retrieval research
field. So the best place to start getting thorough information on this
topic is to browse the archives of related conference : ISMIR
(International Society for Music Information Retrieval).

Prior to the annual ISMIR conference, researcher are invited to evaluate
their algorithm proposals against the MIREX procedures. Here it is for Key
Detection in 2011:
http://www.music-ir.org/mirex/wiki/2011:Audio_Key_Detection (rules) and
http://nema.lis.illinois.edu/nema_out/mirex2011/results/akd/ (results).

One thing to keep in mind when talking about M.I.R. is the nature of the
input. Consider you are a musician reading a score. Using some music theory
you could find the key by analysing relations between notes, by infering
chords, etc. In this case, the nature of the input is symbolic (notes),
providing a high abstraction level. On the other hands, when listening to
the same score being played, you will have to turn what you hear (pressure
variation) into spectral and temporal information using your ears and brain
before being able to guess the key.

Mixxx takes audio files as input (i.e. WAVE files for instance, not MIDI
files), so you will have to apply some transformation on these low level
data to jump to a higher level of representation. A widespread practice is
to compute a kind of musical note histogram, providing a harmonic profile
which can then be compared to the 24 known key profiles. (in related
papers, the term "chroma" designates a 12-dimensional vector -- 1 value per
semi-tone, from A to G# -- and the key profiles are referred to as
Temperley pitch profiles).

Here is an example of paper dealing with key detection:

http://recherche.ircam.fr/equipes/analyse-synthese/peeters/ARTICLES/Peeters_2006_ISMIR_KeyHPS.pdf

...and an open source software with a serious project report:
  http://www.ibrahimshaath.co.uk/keyfinder/KeyFinder.pdf
  http://www.ibrahimshaath.co.uk/keyfinder/

I hope this was helpfull.

Regards,

Maxime



2012/3/19 Mohamed Waheed <[email protected]>

>  hello , i want to work on this idea ( Key Detection for Harmonic Mixing )
> , but i don't know whats the required background and i don't know how to
> start , i would like anyone to push me towards the right direction , one
> more thing , i noticed that i will use an open source library to do the key
> detection , i also want to know how to do key detection in a low level way
> , with native code without libraries :)
>
> here is my background :
>
> C++ , computer graphics , physics simulation , game development ,
> programming contests ( acm and such ) , studied music & audio engineering
> and been working as a mixing engineer, music producer & dj for 7 years.
>
> i appreciate any help :)
>
>
> ------------------------------------------------------------------------------
> This SF email is sponsosred by:
> Try Windows Azure free for 90 days Click Here
> http://p.sf.net/sfu/sfd2d-msazure
> _______________________________________________
> Mixxx-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>
>
------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to