We help IT Professionals succeed at work.

# Getting the frequancy of a corrently playing tone using Microphone.

on
I want to get the frequancy of a the tone that my microphone captures, for examples, when when playing a musical note on piano... how to get the frequancy of that played note using the microphone?
Comment
Watch Question

## View Solution Only

Commented:
That's a relatively tough one, and it's not very delphi-specific. Actually, what you need is to compute what frequencies are present in the sample you have. This can be done using a fast fourier analysis algorithm. However, be waware that this also does not yet output what you are looking for since there are many frequencies mixed in a piano tone which make the piano sound as piano to our ears.

Commented:
well, it's true about piano, but piano tone was just an explaination! i want to check for static frequences like Dial Tones (1,2,.. etc) as an example.

Commented:
DTMF tones are always two frequencies mixed, one for the row and one for the column:
http://www.commlinx.com.au/DTMF_frequencies.htm

Commented:
i tryed to go to http://www.commlinx.com.au/DTMF_frequencies.htm
but the page cannot be displayed! guess it's an error with their server, to say the truth i dont know who do DTMF works and this is the 1st time to know that it is mixed, all what i got is the wave that comes from the mic, is it possible to detect the pressed DTMF tone from that? and how? i do programming, but i dont with frequences!! :P
Commented:
Ok, so try this:
http://www.rfcafe.com/references/electrical/dtmf.htm

Actually, this can be done; take a wave samlple, run a simple frequency analysis over it (so that you get sort of the output of an "equalizer") and check which two frequencies dominate, resolve this using the provided DTMF table and you're done ;-)

Commented:
And this link may also be interesting for you:
http://www.ece.utexas.edu/~mason/codesign/

Commented:
LoneReck:
EXPERTS:
Post your closing recommendations!  No comment means you don't care.
CERTIFIED EXPERT

Commented:
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is: