Internal soundgen function.
findVoicedSegments(
pitchCands,
shortestSyl,
shortestPause,
step,
samplingRate,
minVoicedCands,
pitchMethods,
manualV = NULL,
manualTryToV = NULL,
manualUnv = NULL
)
matrix of possible pitch values per column. One column is one fft frame, one row is one pitch candidate
the smallest length of a voiced segment (ms) that constitutes a voiced syllable (shorter segments will be replaced by NA, as if unvoiced)
the smallest gap between voiced syllables (ms): large value = interpolate and merge, small value = treat as separate syllables separated by an unvoiced gap
you can override overlap
by specifying FFT step, ms (NB:
because digital audio is sampled at discrete time intervals of
1/samplingRate, the actual step and thus the time stamps of STFT frames
may be slightly different, eg 24.98866 instead of 25.0 ms)
sampling rate (Hz)
a frame is considered to be voiced if at least this many pitch candidates are not NA. Defaults to 2: since dom is usually defined, in practice this means that we also want at least one other pitch candidate (autocor, cep or BaNa)
methods of pitch tracking in analyze()
index of frames that should definitely be voiced (manual candidates)
index of frames that should be treated as voiced as long as they have any candidates at all (even <minVoicedCands)
index of frames forced to be unvoiced
Returns a dataframe specifying where each voiced segment starts and ends (in fft frames, not ms!)
Internal helper function for postprocessing of pitch contours. Merges voiced
segments at least shortestSyl
ms long and separated by less than
shortestPause
ms. Called by analyze