[vox-tech] Marking Audio file based on Freq.

Jeff Newmiller jdnewmil at dcn.davis.ca.us
Tue Mar 11 02:25:52 PDT 2008


Alex Mandel wrote:
> Fun challenge if anyone is up for it.
> 
> How do I locate all instances of a particular frequency in an audio file?
> 
> Don't worry about format.
> Preferred solution will use Audacity, Octave, R or some other FOSS 
> software. More points the easier it is to use (really a Audacity plugin 
> at least in concept would be great)
> 
> Bonus if it flags all the points in say the marker track of audacity, 
> which would make it easy for me to shuffle through and listen to the 
> identified segments.
> 
> 
> Really any ideas on how to approach this would be welcome.

Some ideas:

Multiply the waveform both by a sinewave of the desired frequency,
and by a cosinewave of the same frequency, obtaining two multiplied
waveforms.
Compute moving averages of each of these multiplied waves with a
window of time long enough to detect the signal. This interval should
be "many" cycles long.  At each timestep, compute the squares of the
averages, add them, and take the square root.  The result should be
a time profile showing roughly how well the sample data matches the
desired frequency.  The longer the averaging interval, the better
the selectivity of the frequency match will be, but the poorer the
identification of "when" the frequency matched will be.

Also, audacity has an "FFT filter" function, which could be configured
as a bandpass filter, and the amplitude of the filtered signal could
represent the frequency match with the bandpass filter frequency.

-- 
---------------------------------------------------------------------------
Jeff Newmiller                        The     .....       .....  Go Live...
DCN:<jdnewmil at dcn.davis.ca.us>        Basics: ##.#.       ##.#.  Live Go...
                                       Live:   OO#.. Dead: OO#..  Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.  rocks...1k
---------------------------------------------------------------------------


More information about the vox-tech mailing list