Re: Finding audio frequency
Re: Finding audio frequency
- Subject: Re: Finding audio frequency
- From: Ian Kemmish <email@hidden>
- Date: Tue, 26 Jan 2010 15:29:23 +0000
On 26 Jan 2010, at 09:46:27 -0500, Paul Bruneau <email@hidden>
wrote:
And it will then return a value representing a "best estimation" of
the frequency (here is my question).
I am only concerned with the "base" or "foundation" frequency--that
is, I don't care about harmonics, I only care about how many times per
second the string is "vibrating" (for lack of a better term).
Actually, for best results, you probably do :-)
My analysis/resynthesis module needs accurate estimates of frequency.
What I do is take several FFTs at different times. Find some peaks in
each FFT. Sort the peaks roughly into bins (one for each harmonic,
basically). Throw out any obvious outliers in each bin. Calculate
the media frequency for each bin. Then look at the median frequencies
you have left, and see if they form an obvious harmonic series. If
they do, the harmonic is the least common difference between them.
In the real world, remember that you have to deal with situations
where the fundamental is not necessarily the loudest harmonic. And
for plucked string instruments, the frequency of oscillation is
falling ever so slightly for as long as the string sounds (the time-
averaged tension of the string is reducing as the amplitude
decreases). And for stiff strings the partials aren't *quite*
harmonically related (which is also why looking for zero crossings in
the time domain isn't the best idea - the shape of the waveform
changes gradually).
Hope this gives you some ideas to try.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
Ian Kemmish 18 Durham Close, Biggleswade, Beds
SG18 8HZ
email@hidden Tel: +44 1767 601361 Mob: +44 7952
854387
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden