[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: separating odd/even harmonics



On Thu, Jul 18, 2002 at 11:16:02AM +0200, gia_BERLIN wrote:
> Hi all,
>
> I am in need of Matlab code to separating odd/even harmonics of
> quasi-periodic complex sounds (saving them in two Wav files) for use as
> experimental stimuli, while preserving the temporal dynamics. Who has some
> matlab code for their favorite technique?

Hi Chen-Gia,

Sorry, I don't have matlab or octave.org code for it, however I would
think that it is possible to implement a 'comb filter' which will do
exactly  what you require.
A comb filter is a type of filter which has maxima points seperated by
minima points in the frequency spectrum. It looks like this :
http://www.audionica.com/Audionicaen/images/comb.gif
Where the x label should be 'Frequency' and the y label should be
'Amplitude'.

If you design a comb filter which has minima seperated by 2f, where f is
the fundamental frequency (of the harmonic spectrum), then you will have
a filter which will remove the odd (even) harmonics.
Your next step would be to invert the filter in some way such that you
would have a comb filter which would have minima where maxima previously
were, and vice versa. This would seperate out the even (odd) harmonics.

Unfortunatly I don't have time to help you implement this as I am in
the middle of writing up my PhD thesis, but next year I should !

good luck
Matt

>
> Thanks,
>
> Chen-Gia Tsai

--
http://mffm.darktech.org

WSOLA TimeScale Audio Mod  : http://mffmtimescale.sourceforge.net/
FFTw C++                   : http://mffmfftwrapper.sourceforge.net/
Vector Bass                : http://mffmvectorbass.sourceforge.net/
Multimedia Time Code       : http://mffmtimecode.sourceforge.net/