Thanks David...
Maybe is the time to move Sandra's formant tracking to the main repository.
You could be doing things that are already done. So it is better to show you
the code. I just joined all the related clam-draft folders in a single one so
it can be moved to a public repository.
So, Xavi, Pau, where an how do i move it.
I'd be glad to see it and possibly save myself some work...
I can't help you so much. I just ported the LPC to ports based behaviour and i
don't have much more insight on the algorithm than what you are explaining.
Sandra code has a class named PolynomialRootsFinder. In the LPC there is an
algorithm called Levinson Durbin which also computes roots but i am not sure
is that what you are looking for.
From what I understand, the Levinson-Durbin is a preceding step. Let
me explain it b/c I think it helps me understand it better and also b/c
maybe someone will catch me if I'm making a mistake...
The general procedure is
windowing->autocorrelation coefficients->LPC coefficients->formants.
The Levinson-Durbin recursion is the step that goes from the
autocorrelation coefficients to LPC coefficients. For a linear
prediction order of p, you use the previous p samples in a linear model
to predict the p+1 sample. The p coefficients of this linear model are
the LPC coefficients. To get these, you do the Levinson-Durbin
algorithm which uses the auto correlation coefficients to recursively
solve the LPC coefficients from 1 (first order filter) to p (pth order
filter).
To get the formants, you have to solve the linear model of the LPC
coefficients, which I think is just finding the roots of a polynomial or
the poles of the filter. The LPC coefficients are real valued, but the
roots are complex. The arg/angle of the root/pole is the formant
frequency and the magnitude is the formant bandwidth.
I've read up on it the first week of the SoC, so I think I understand
it, but if I'm mistaken or missing something let me know.
Matrix code could be considered deprecated as it is almost not used, not
tested and FOSS software libraries around can do linear algebra faster.
Are there any particular libraries that I should look at?
Thanks,
Abe
begin:vcard
fn:Abe Kazemzadeh
n:Kazemzadeh;Abe
org:University of Southern California;Computer Science
email;internet:[EMAIL PROTECTED]
title:PhD Student
tel;work:213-740-3477
x-mozilla-html:FALSE
url:http://www-scf.usc.edu/~kazemzad
version:2.1
end:vcard
_______________________________________________
Clam-devel mailing list
Clam-devel@llistes.projectes.lafarga.org
https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/clam-devel