Vocal Analyzer Docs

← Back to app

Voice quality

Voice quality is the dimension that describes whether a voice sounds breathy, pressed, or somewhere in between, and — in acoustic terms — how much energy sits at the low end of the spectrum relative to the high end. Vocal Analyzer treats voice quality as a family of descriptive cues rather than a single number, because no one measure captures the full picture reliably across recording conditions and F0 ranges.

The source-filter model in ~200 words

Your voice starts at the vocal folds as a periodic pulse train (the source) and is then shaped by your vocal tract (the filter) before it reaches the air. Most of the timbre information a listener uses to perceive voice quality lives in the shape of the source spectrum — specifically, how quickly the harmonics roll off as frequency increases.

All of the "spectral tilt" family of measurements (H1-H2, H1-A3, their corrected variants, CPPS, and the LTAS complements) are different proxies for that source-spectrum roll-off, each with different assumptions about which parts of the spectrum are reliable.

The preferred-metric ladder

The analyzer computes several spectral-tilt variants and picks the most reliable one as the preferred value shown on the dashboard tile. Fall-through order (most preferred first):

  1. H1*-A3* — corrected H1 minus corrected A3 (the third formant's amplitude), following Iseli, Shue & Alwan (2007), Eq. 1. Sensitive to F3 estimation.
  2. Corrected H1*-H2* — H1 minus H2, each corrected for formant influence using the same digital resonator correction.
  3. Raw H1-H2 — uncorrected H1 minus H2; biased by the first formant.

The dashboard label identifies the selected variant. Residual H1* is no longer computed: the former within-recording regression discarded absolute H1* level and was not the population-reference measure described by Chai & Garellek (2022). Historical residual values may remain in saved results, but are not comparable to a validated population residual measure.

High-F0 suppression

Above 175 Hz (the HIGH_F0_SUPPRESSION_HZ constant in engine/voice_quality.py), raw H1-H2 is suppressed entirely — the dashboard shows the tile as unavailable rather than promoting a value the pipeline has flagged as unreliable. The corrected metrics still render when computable because they correct for the factors that destabilise raw H1-H2 at high F0, but their confidence badge drops to low.

Caveat: Voice quality is the most variable secondary metric. Expect the selected rung to differ between recordings from the same speaker depending on F0, SNR, and sample rate. That is the ladder doing its job, not a regression.

CPPS

CPPS (Cepstral Peak Prominence — Smoothed) measures vocal periodicity and clarity. Higher values indicate a cleaner, more periodic signal; lower values indicate noise or roughness. CPPS is often reported as a more robust voice-quality cue than spectral tilt because its cepstrum-domain peak search does not depend on per-harmonic amplitude estimates.

See Hillenbrand & Houde (1996) for the original definition and Heman-Ackah et al. (2003) for the smoothing extension that is the basis of the CPPS field Vocal Analyzer reports.

CPPS appears as its own tile ("CPPS (Vocal Clarity)") rather than as part of the spectral-tilt ladder because it answers a different question — "how periodic is this signal?" — rather than the roll-off question the tilt family answers.

LTAS complements

The Long-Term Average Spectrum (LTAS) summarises the frequency distribution of energy across the whole recording. Vocal Analyzer reports three LTAS-derived cues as their own tiles:

These are descriptive complements to the spectral-tilt ladder: they answer similar questions but in integrated form across the full recording, so they are more stable in short recordings and less sensitive to per-frame harmonic estimation.

Perturbation measures

Vocal Analyzer also reports two Praat cycle-to-cycle perturbation measures when a periodic point process can be estimated:

Both are descriptive acoustic cues. They are sensitive to pitch tracking, background noise, clipping, short recordings, and sample-rate limits, so the dashboard treats them as supporting timbre context rather than entries on the H1-H2 / CPPS preferred-metric ladder.

PVQD perception

When the bundled pvqd-perception-v1 artifact is available, the dashboard can show a PVQD-validated voice-quality perception tile. It predicts CAPE-V severity, roughness, breathiness, and strain on the same 0-100 rating scale used by the published PVQD human ratings, and shows the typical held-out error (MAE) on PVQD, not a per-recording interval.

This tile is deliberately narrow. It is validated only against PVQD CAPE-V voice-quality ratings, not perceived gender, diagnosis, pathology screening, treatment outcome, or a clinician's judgement for an individual recording.

Reference bands

Vocal Analyzer does not overlay a gender reference band on the voice-quality tile. Published sex differences for H1-H2 and CPPS are in the range of a few dB and heavily overlap between groups (Klatt & Klatt 1990). The dashboard reports voice quality descriptively instead — value, unit, and confidence — and leaves interpretation up to the reader and their voice teacher.

Legacy spectral-tilt bands still exist in src/vocal_analyzer/models/ranges.py for backward compatibility with older displays, but the dashboard does not render them.

Caveats

See Methodology for the full warning code enumeration.

References

Independent availability

CPPS, LTAS, jitter, and shimmer are measured independently of harmonic correction. An unavailable H1-H2 measurement (including an invalid median pitch or a second harmonic above Nyquist) does not suppress these complements. Each still needs its own valid inputs: LTAS needs the relevant frequency bands, CPPS needs a valid cepstral measurement, and jitter/shimmer need a usable periodic point process. Unavailable values stay missing.

PVQD perception limits

The optional model estimates CAPE-V listener ratings within the PVQD recording protocol and population. It is not validated as a perceived-gender score, diagnosis, treatment outcome, or across arbitrary microphones, recording tasks, languages and noise conditions. “Typical held-out error (MAE) on PVQD” is population evaluation error, not an uncertainty interval for your recording.

Prediction requires at least 80% finite acoustic features and measured HNR, CPPS, local jitter and local shimmer. Missing artifacts, feature-schema mismatch, and inadequate feature coverage return an unavailable result with a reason. Recordings with estimated SNR below 30 dB, detected clipping, duration below one second, or voiced fraction below 20% are also refused. These conservative eligibility rules do not establish external validity for other protocols. Predictions requiring imputation are marked experimental.

HNR is unavailable when Praat supplies no valid harmonicity frames; unavailable values are not zero dB and are exported as missing features.