Take a look at my Voice to MIDI (pitch recognition) work in progress

Status
Not open for further replies.

Andy Belov

Well-known member
Here: http://www.youtube.com/watch?v=lTb-eU1CPKY&feature=youtu.be

It kind of works, but still needs improvements. The pitch recognition is fast and about 95% accurate for now. I think I need to work with the "probability" and ignore results below 0.9. I'll try that next.
Also, I need to improve the playback of "converted" sounds after the pitch recognition. There is a lag in playFrequency(), I think.

But still, I'm very excited. I think I can make it work acceptably, especially when I get my new shield for Teensy 4.0 and the Audio Shield. The 4.0 is more than 5 times faster than the 3.6 I'm using now, so maybe the lag will not be as noticeable.
I'll keep you posted, if anybody cares.

The code is here: https://github.com/quantograph/Instrument/blob/master/Arduino/AudioBoard.ino
Look for "AudioSynthWavetable::freqToNote(..."
More here: http://quantograph.com/
And here: https://github.com/quantograph/Instrument/tree/master/Arduino
 
Last edited by a moderator:
@Andy - followed the link to video yesterday - very cool.

- also just moved the links into OP - post edit window closes 2 hours after posting.
 
Andy - that looks very interesting - congratulations on your success. I suspect it may have a variety of uses for different people.
One thing that comes to mind is interval recognition training / ear training.
Did you have a specific application or use in mind when you started this work?
Is it able to detect the individual notes within a chord?
Nice work - nice art work too!
 
Thank you for your kind words, EddieLeo. The idea is to make a smart musical instrument which you can play and use for music learning.

One feature would be an "electronic music teacher", which understands what notes you are playing. Can be used to show you how to play a song from a MIDI file and let you know when you don't play it right.
Also, can it can show you how to play a scale on a flute or saxophone and let you play the next note only after you play the current one right.
Can be used for singing lessons, too, to make sure you sing it right. Ear training, like you said.
And the notes it recognizes can be sent over bluetooth to a phone or a computer as MIDI input into any other software which can take it.

I'll update my website when I have more things to share.
 
Status
Not open for further replies.
Back
Top