Fundamental Tracking


The term fundamental tracking means that when humans hear a harmonic overtone series with a missing fundamental, we hallucinate the missing fundamental. I would like to develop a fundamental tracking DSP application that synthesizes these fundamentals that humans hallucinate. The purpose is to replace missing information in the deep bass of the music.

How would one program this kind of pattern recognition into a signal analyzer?


First of all, I think ‘perceive’ describes this phenomena better than ‘hallucinate’ :wink:
There is a variety of papers about fundamental pitch tracking, e.g. Klapuri did a lot of research in that field.

I think starting with an FFT and calculating an autocorrelation of the magnitude spectrum would be a good start as harmonics are (ideally) multiples of the fundamental frequency. The ‘lag’ of the highest peak should give a good guess for the fundamental frequency.

In theory, it should be also possible to actually generate that fundamental frequency (and many more :smiley: ), assuming an ideal harmonic structure and only one source present, by just distorting the sound and hoping for the difference tones lining up nicely. However, in general I expect this approach to be messy :slight_smile:

So better rely on some published research! :wink: