# F0AC

#### F0AC - F0 detection using autocorrelation

The autocorrelation function is first applied to all `N`

windowed frames. The maximum number of candidates (`MaxNCandidates`) are stored for each frame. The result is a `MaxNCandidates` x `N`

matrix. The cheapest path through this matrix is found using the Viterbi algorithm. The output is a shell table item which contains the f0-values and the center window positions.

The algorithm used is described in detail in: BOERSMA, Paul (1993): Accurate Short-Term Analysis of the Fundamental Frequency and the Harmonics-To-Noise Ratio of a Sampled Sound. Proceedings of the IFA. Vol 17. pp 97-110

##### Usage:

`FOAC `

`WaveItem DeltaT MinimumPitch PeriodsPerWindow MaxNCandidates SilenceThreshold VoicingThreshold OctaveCost OctaveJumpCost VoicedUnvoicedCost MaximumPitch F0Table`

##### Inputs:

`WaveItem`

- The id of the wave item to analyse.

`DeltaT`

- The window shift in seconds (expert parameter!; If 0, then
`DeltaT`is computed automatically by`F0AC`

)

`MinimumPitch`

- The lower pitch boundary in Hz.

`PeriodsPerWindow`

- The number of periods to fit in an analysis window.

`MaxNCandidates`

- The maximum number of autocorrelation candidates for every frame. For every frame a number of f0-candidates (including voiceless candidates) are computed. The atom searches finally one trace through these candidates.

`SilenceThreshold`

- The value for the computation of the strengths of the f0-candidates.

`VoicingThreshold`

- The value for the computation of the strengths of the f0-candidates.

`OctaveCost`

- The value for the computation of the strengths of the f0-candidates.

`OctaveJumpCost`

- The value for the computation of the strengths of the f0-candidates.

`VoicedUnvoicedCost`

- The value for the computation of the strengths of the f0-candidates.

`MaximumPitch`

- The upper pitch boundary in Hz.

`F0Table`

- The shell table item for the result (has to be a 2-column table), column
`0`

contains f0-values, column`1`

the center window positions.

##### Outputs:

`NFrames`

- The number of frames.

`NSampWindow`

- The number of samples for the analysis window.

`DeltaTOut`

- The
`DeltaT`which was actually used (useful if`DeltaT`was automatically calculated).

`x1`

- The position of the first frame.