FORMANTS

From STX Wiki
Jump to navigationJump to search

FORMANTS - formant extraction

Usage:

FORMANTS F A M F0 N B T MODE TABLE COL

Inputs:
F, A peak frequencies (Hz) and magnitudes (dB); vectors of same length
M number of peaks in current frame
F0 fundamental frequency (in Hz, used for voiced/unvoiced decisions, optional)
N maximum number of formant candidates to be saved
B bandwidth (bias) for tracking (in Hz)
T minimum track duration (in frames)
MODE output mode
TABLE name of parameter table
COL first column of table to be used for formant data
Outputs:

None; output values are stored in the table

Function:

This module extracts formant tracks from the input peak data. The input vectors F and A are the frequencies and magnitudes of local maxima (peaks) of the LPC- or cepstrum-smoothed spectrum (of a speech signal). While the atom is active (running) the input data is collected and stored in a time-frequency matrix. When the atom is stopped the tracking algorithm is applied to the matrix.

The tracking algorithm tries to create non-crossing formant tracks using a forward/backward search and connection method with a minimum peak-frequency distance criterion. Isolated peaks and chains with a duration shorter than T frames are removed from the matrix. The extracted and sorted formant tracks are stored in the table.

If the F0 input is connected, formants tracks are only computed for voiced frames (with F0>0).

Table 9: Format of formant data table selected by input MODE

value of MODE values stored in table

(track index: i = 0..N-1, frame index: t = 0,1,..)

number of cols.
0 frequencies:TABLE[t,COL+I] = fi N
1 frequencies and magnitudes:TABLE[t,COL+2i]=fi and TABLE[t,COL+2i+1]=ai 2N
2 frequencies and magnitudes:TABLE[t,COL+i]=fi and TABLE[t,COL+N+i]=ai 2N

The bias B is used in the tracking method for the distance computation:

1234.png

with:

fi frequency of formant candidate in frame t fj frequency of formant candidate in frame t+1 di,j distance of formant candidates

Navigation menu

Personal tools