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.
- Breathy sources produce a steeper roll-off: more low-frequency energy relative to high-frequency energy.
- Pressed sources produce a shallower roll-off: less low- frequency emphasis.
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):
- H1*-A3* — corrected H1 minus corrected A3 (the third formant's amplitude), following Iseli, Shue & Alwan (2007), Eq. 1. Sensitive to F3 estimation.
- Corrected H1*-H2* — H1 minus H2, each corrected for formant influence using the same digital resonator correction.
- 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:
- Alpha ratio — mean energy from 1–5 kHz minus mean energy from 50 Hz–1 kHz, in dB. Higher = more high-frequency energy (brighter, less breathy).
- Hammarberg index — max level 0–2 kHz minus max level 2–5 kHz, in dB. Higher = stronger low-band peak relative to high-band.
- Spectral slope — linear-fit slope across 100 Hz–5 kHz, in dB/octave. More negative = steeper roll-off.
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:
- Local jitter — average period-to-period F0 perturbation, shown as a percentage.
- Local shimmer — average period-to-period amplitude perturbation, shown as a percentage.
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
- F0 above 175 Hz — raw H1-H2 is suppressed; the ladder falls back to rung 1/2/3 with a low confidence badge. If none of those are computable either, the tile becomes unavailable.
- F0 close to F1 — source-filter coupling biases harmonic amplitude estimates and therefore biases every rung of the ladder.
- SNR below the warning threshold — HNR, CPPS, and spectral-tilt corrections all degrade first under noise.
- Sample rate below 16 kHz — the voice-quality pipeline is skipped entirely.
See Methodology for the full warning code enumeration.
References
- Iseli, M., & Alwan, A. (2004). An improved correction formula for the estimation of harmonic magnitudes and its application to open quotient estimation. ICASSP 2004.
- Simpson, A. P. (2012). The first and second harmonics should not be used to measure breathiness in male and female voices. Journal of Phonetics 40(3), 477–490.
- Chai, X., & Garellek, M. (2022). On H1–H2 as an acoustic measure of linguistic phonation type. The Journal of the Acoustical Society of America 152(3).
- Hillenbrand, J., & Houde, R. A. (1996). Acoustic correlates of breathy vocal quality: dysphonic voices and continuous speech. Journal of Speech and Hearing Research 39(2), 311–321.
- Heman-Ackah, Y. D., Michael, D. D., & Goding, G. S. (2003). The relationship between cepstral peak prominence and selected parameters of dysphonia. Journal of Voice 17(1), 20–27.
- Klatt, D. H., & Klatt, L. C. (1990). Analysis, synthesis, and perception of voice quality variations among female and male talkers. The Journal of the Acoustical Society of America 87(2), 820–857.
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.