← LinguistCore

PhonoLens

Live IPA sound analyser
Microphone off

Detected sound — fps

·
Waiting for input
start the microphone or run a self-test
confidence
—

Measurements

Voicingunvoiced
F0—
F1—
F2—
F3—
B1 / B2—
Level—
Floor—
SNR—
Input—
Centroid—
Peak—
Flatness—
HF ratio—
Periodicity—
Last VOT—
voice modelgeneric (speaker scale)
target match
—

Self-test (synthetic sounds)

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.