Pitch Training Program

Jul 23, 2013 at 11:01am

Pitch Training Program

Hello,

Basically, this is what I imagined my program to do:

Step 1: User selects their Vocal Range (aka Soprano, Alto, Tenor, Bass)
Accordingly, that allows for them to hear/play a corresponding note/pitch (aka C)

Step 2: User practices hitting that pitch
So I need to record them for x amount of seconds and plot their pitch (or F0 = fundamental frequency) in real time in order for them to have visual feedback.

Step 3: User receives an evaluation
At this point I want the user to receive an evaluation for how close to the pitch they got. For example, they hit it 70% of the time.
This requires us to compare the played pitch to the recorded pitch.

My progress:
I have Step 1 pretty much done no problem.
Step 2 I am stuck with the plotting part.
I have a simpler Step 3 set up so that it gives binary Did Well vs Did Poorly but would like a more complex one as described above.

Please help!

#256937
Jul 23, 2013 at 11:36am

Have you searched the forums around?

A search on “pitch recognition” ( http://cycling74.com/search-results/?q=pitch%20recognition )would be very helpful to start with. Objects like [fiddle~], [pitch~], [analyzer~] and [sigmund~] can be interesting to play around with.

Also look around for “guitar tuner” patches, plenty around and pretty much doing what you’re looking for.

About the percentage, simply count how many times they got the note correct and divide that by how many times they tried in total, and voila. If you want a “you were within 5% of the pitch”, then check the guitar tuners :)

#256944
Jul 23, 2013 at 3:19pm

Step 2: I would run the output of fzero~ into a multislider in line scroll mode.

#256964
Jul 24, 2013 at 5:08am

1. I don’t know how to load those external objects… Im using Mac OSX 10.7.5 and Max 6.1
I put them in the Cycling ’64 folder on my computer… I can’t open .mxo files… I can’t search them.

2. I tried to plot the fzero~ first output (Fundamental Frequency) its not quite working… In the help file it plots the fzero~ second output (Amplitude) but I don’t need that.

PS. I just started using Max 3 days ago… So I am a total beginner!

#257001
Jul 24, 2013 at 9:26am

Then you should go through all the tutorials, well at least most of the max tutorials and most of the msp tutorials. These will give you the ground-floor knowledge you need, and it will help you formulate specific questions pertaining to your project, too.

#257020
Jul 24, 2013 at 1:00pm

I meant something like this:

<code>

– Pasted Max Patch, click to expand. –

</code>

(paste into a max patch)

But, Wetterberg is right. Max has a bit of a learning curve, and it’s good to start with the basics.

#257039

You must be logged in to reply to this topic.