Plays a synthesised sound through the analyser to verify the pipeline without a microphone. Formant values follow adult-male reference data.
Articulator movement & camera speak slowly · hold each sound ~1 s
place —manner —voicing —velum —lips —
Camera off — start it to compare your lips and jaw with the detected sound.
Jaw opening—
Lip spread ↔ rounding—
Lip closure—
Match with detected sound—
Spectrogram 0 – 8 kHz · 2048-pt FFT
F1F2F3F0 (bottom strip)
Spectrum & LPC envelope — Hz
FFT magnitude (noise-subtracted)LPC envelopeformants from LPC roots
Waveform last 43 ms
Transcription
Segments appear here once confirmed; each label is decided from the whole segment, not a single frame.
Vowel space (F1 × F2) generic
Click a reference vowel to set it as a practice target. Greyed vowels are outside the selected inventory.
Pulmonic consonants
Click a symbol for its description.
How it works
Method & limits
Formants: 14th-order LPC (autocorrelation / Levinson–Durbin) on pre-emphasised audio decimated to 12 kHz; formants are the complex roots of the predictor polynomial (Durand–Kerner), kept only when bandwidth < 400 Hz, then median-smoothed over 5 frames.
Vowels: Gaussian model per vowel in log-Hz (F1, F2, weighted F3), posterior by softmax over the selected inventory; speaker adaptation by F0-based scaling or, better, Calibrate my voice (fits log-linear F1 and F2 maps from your ee / ah / oo).
Segments: frames of the same class are pooled; the label is the candidate with the highest average probability across the whole segment, so momentary flicker does not change the answer.
Voice only: the room's noise spectrum is learned (1 s at start, or Learn room noise), tracked by minimum statistics and subtracted from every frame. A frame counts as speech only if it clears the noise floor by the gate margin and is harmonic (F0 70–450 Hz) or a broadband burst/frication in 1.5–9 kHz. Hum, fans and rumble are ignored; isolated clicks are dropped.
Fricatives: soft scoring on centroid, spectral peak, sibilant band ratios, flatness and relative level (s ≈ 6–8 kHz, ʃ ≈ 2.5–4.5 kHz, ç/x compact mid peaks, f/θ diffuse and weak, h formant-shaped).
Plosives & nasals: place combines the burst/murmur spectrum with the F2/F3 transition into the following vowel (labial: F2 rises; alveolar: F2 locus ≈ 1.7–1.8 kHz; velar: F2–F3 pinch). Voice-onset time decides voiced / voiceless / aspirated.
Articulator view: a mid-sagittal model driven by the detected sound — tongue body from the measured F1/F2 for vowels, constriction place and manner from the IPA description for consonants, velum lowered for nasals, vibrating folds when voiced; it glides between targets so you see the movement.
Camera: lip corners, inner-lip gap and face size come from a 468-point face mesh when the model can load (standalone file in Chrome); otherwise a built-in colour tracker finds the lips inside the guide oval. Jaw opening and lip spread/rounding are measured relative to your neutral mouth, then checked against what the detected sound needs. Speak slowly and hold each sound.
Single-channel acoustics cannot separate every contrast (f vs θ in isolation, for instance) — candidates are ranked with probabilities rather than forced. Sustain each sound ~½ s, ~20 cm from the mic, in a quiet room; calibrate once per speaker.