ZOYKU火线榜

jamesondh/chimera-vocal-synth技术文档

the ultimate vocal synthesizer - sing, speak, beatbox, and more

目录大纲 (TOC) (4 章节)▾
多语言回退提示:当前仓库原作者暂未发布本地化文档,已为您无缝切换至官方英文原版(English),排版及代码实例完整保真。
极速安装
cargo add chimera-vocal-synth

CHIMERA

A physical-modeling voice synthesizer in the browser. Every sound comes from a simulated airway (lungs, vocal folds or syrinx, a branched vocal tract, lips, nose), not from samples. The engine is Rust, compiled to WebAssembly for an AudioWorklet; the same code runs natively for tests and the chimera CLI.

What it does

  • Play: drag the tongue, lips and jaw in a live cutaway of the head; vowel pad, encoders, computer keyboard and Web MIDI.
  • Speak: English text (CMUdict with a letter-to-sound fallback) or IPA, turned into gestures and prosody, with the gestural score and a consonant chart on screen.
  • Sing: piano roll with lyrics per note; consonants land before the beat.
  • Beatbox: pads and a step sequencer, every drum an articulatory gesture.
  • Bestiary: songbird (two-voice syrinx), seal, alligator and elephant.
  • Duet (?show=<id>): two 3D heads replay a pre-rendered song.

Male, female and child bodies blend continuously. Everything on screen animates from live engine state: pressure in the airway, airflow, the vocal folds, spectra and formants.

Run it

Needs Rust with the wasm32-unknown-unknown target, and Bun.

bun install
bun run dev        # builds the wasm, then Vite on 127.0.0.1:5317
bun run test       # wasm build, cargo test --workspace, bun test tests

The AudioWorklet needs a secure context, so open it on localhost or over HTTPS (for example tailscale serve). Vercel builds it with vercel.json.

Offline renders and measurement:

cargo run --release -p chimera-cli -- render speech|text|song|notes|beatbox|creature|vowels …
cargo run --release -p chimera-cli -- diagnose       # nasal leakage, formants, bandwidths, pitch
cargo run --release -p chimera-cli -- compare csd    # against a real singer (docs/csd-comparison.md)
cargo run --release -p chimera-cli -- compare tsp    # against 23 real speakers (docs/speech-comparison.md)
bun tools/spectrogram.ts in.wav out.png
bun tools/musicxml-to-notes.ts score.mxl P1 --out p1.json   # a score's part → `render notes` melody

Docs

Agents: see AGENTS.md.

License

MIT. Bundled third-party files keep their own licenses: the CMU Pronouncing Dictionary (public/data/CMUDICT-LICENSE.txt) and the fonts (public/fonts/).

文档镜像归档自 GitHub 官方源路径 · 访问原项目 GitHub
最后同步快照:2026-11-09