I currently have an array full of data which from what I believe is the Amplitude of my wave file. It is currently at a low -32768 and at a high 32767.
I also have the SampleRate which was 16,000hz.
My understanding of sound isn’t very good; does anyone know from this how I can calculate the Frequency?
Help greatly appreciated,
Monkeyguy.
What exactly is it that you’re wanting to do? The method will depend entirely on what you’re hoping to achieve. Do you have a signal that contains a single sinusoid, eg a detector from a piece of mechanical equipment? Or more likely, are you wanting to play/sing into a microphone and transcribe the music?
In both cases, the FFT will be your first port of call. In the first case this may be pretty much all you need, as FFTs are good for isolated steady-state sinusoids. In the latter case, you have got a very long road ahead of you in order to get any useful results at all. Pitch recognition is a difficult problem, and merely throwing some FFTs won’t get you very far. You’ll need to have a good grounding in digital signal processing and also the characteristics of musical signals, and then probably your best bet is to use an autocorrelation based method instead.
See my previous answer on a related subject for some links which may be useful: Algorithms for determining the key of an audio sample