Vowel gestures calibrated by measurement; exporter sample rate from callers #18
Loading…
Reference in a new issue
No description provided.
Delete branch "aqua/tract-voice"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Stacked on #17 (harmonic source + Kelly-Lochbaum ladder). Recalibrates the authored vowel gestures by measurement, keeps the lip radiating aperture open for vowels, fixes the radiation highpass at 200 Hz, passes the exporter sample rate from callers, and feeds
tools/WordRenderfrom Weksa's phones line. Nothing here has been heard by anyone.Weksa phones in (
WeksaPhones.cs):WeksaPhonesReader.Parsereads the{language, source, phones:[{ipa, stress none|primary|secondary}]}line of Weksa PR 16 (weksa lower --phones, commit a7bc2478). It refuses malformed JSON, missing/extra/null/mistyped keys, unknown stress and empty phones.WeksaWordPlan.Fromchecks every phone against the DSL's own IPA table (PatchScript.TryIpaDescriptor, the tablephoneme_gesturealready used) and, if any phone is outside it, lists them and plans nothing:WordRenderexits 4 and renders nothing (exit 3 for a refused file). Durations (vowel 180 ms, other 95 ms) and flat 140 Hz pitch stay AquaSynth's; stress only sets gesture intensity (primary 1.2, secondary 1.1, none 1.0). Fixture copied from Weksa PR 16 with provenance intests/AquaSynth.Dsl.Tests/Fixtures/Weksa. 25 tests pass; 8 hand mutants (extra keys allowed, unknown stress to none, empty phones allowed, unsupported approximated, stress lengthens duration, stress ignored, stress on every phone, null ipa allowed) each fail at least one test.Measured (WordRender from the Weksa fixture, 140 Hz, LPC order 12, median of 30 ms frames, vowels held 0.2-0.6 s):
Inside /ˈnibu/: i 277/2352/2390, u 393/869/2629 (same as isolated).
Vowels differ in measured F1/F2. Script, WAVs and table: /opt/commons/handoff/aqua-nibu-first-render-20261108-weksa/render. Listening kit (new, the earlier kit is untouched): /opt/commons/handoff/aqua-nibu-first-render-20261108-weksa/kit/listen.html.
Weak spots
GestureDescriptorstill falls back to an alveolar approximant for hand-written scripts that name an unknown phone.ProbeTimelineReportcarries no formants and itsdelay_samplesstill hardcodes 48000;FaustExportOptionsstill defaults to 48000 (FaustRenderedSpeechLossSurface, AquaLower and the wasm compile path pass no rate).VocalTractFormantTestsand the four daemon/store tests that failed in this sandbox before were not re-run in this pass.🤖 Generated with Claude Code
Maintainer pass (2026-11-10). Stacked on #17 (merged); retargeted to main. Full suite at this tip: only the 3 failures main has (Zyn pinned source absent, FaustLoader platform-name, CultMesh leased workers) plus the four native daemon tests, fixed on main by #25. Merged as the base of #19, which supersedes its Gaussian-tongue area model with Story 2008 measured areas but keeps the Kelly-Lochbaum ladder, the calibrated gestures and the exporter sample rate. Unheard. Merging as provenance, not approval; nothing deployed.