[kln2-devel] pitch(tune) input and extra clefs
Brought to you by:
wiecko
From: Marek W. <Mar...@fu...> - 2004-07-19 01:47:57
|
Hi e-body, I just wanted to let you know I committed two updates into kln2 CVS. The first is adding extra alto and tenor clefs. Only one comment: I erased the "octave bias" option from the midi_setup dialog [nobody understood what's this about anyway ;) ] and added a treble clef with octave sign instead. The other thing is a big one. I added pitch (tune) recognition and a guitar tuner. You can now answer questions with your own instrument or sing right tune to your mic! Great isn't it? I guess it was Javier's idea long time ago. It turned out, that adding pitch input cannot be based on existing guitar tuners. The main problems was higher harmonics. Whenever you pluck a string generated sound spectrum is quite complicated. E0 string makes a bit of an octave higher sound E and a bit of B... Because of finite resolution of frequency recognition the main peak may be lost and the harmonics may seem more powerful. Looking for the most powerfully frequency may lead to a misrecognition. Now, this is not important for a guitar tuner (you can tune the harmonics as well as the main tune - it doesn't matter). But it is not acceptable as pitch input (imagine hordes of angry users whose right answers were considered wrong...). Anyway, I wrote it from scratch. I did some basic filtering and tried to account for the harmonics problem. Look into the new files if you want to know details. It eventually seems to work really well. :) At least for me. Big request: could you please test it? Does it compile and not crash? Does it recognize your instrument's sounds? How about humming or singing to your mic? Anyway, I hope you'll like it. Many small things still need doing. I'll write a message on this in a moment. Regards, Marek -- \/ /|\ Marek Wieckowski ##### | | | = . . = \|/ Institute of Theoretical Physics U | Warsaw University / ~ \___ | <| | | > . < | http://www.fuw.edu.pl/~wiecko <<___>> | http://klearnnotes2.sourceforge.net |