dialogue-and-voice

Installation
SKILL.md

Dialogue and voice

Every voice in a Cinefoundry film is designed from words, never recorded from or cloned of a real person. A designed reference clip is made once per voice - for each of the casting library's voices, and for a character no library voice fits - and every line is cloned from that one clip, so the voice never changes within a film or a season. In narrative films the line is synthesised first and the picture is generated to it: LTX-2.5 lip-sync takes the dialogue audio, encodes it and freezes it, and only the picture is sampled, so the mouth follows the words (workflows/ltx25_fast_lipsync.json). The audio is the performance; a flat read makes a flat face.

The casting library

deploy/voices/library.json holds 52 designed voices: English (General American) and Mandarin (标准普通话), female and male, 13 of each per language, across five adult age bands - 18-25, 26-35, 36-50, 51-65, 66+. Each entry has an id (en-f2635-warm-velvet, zh-m3650-…), its ageBand, age, timbre, the VoiceDesign design it is made from, a casting description, and its uses: announcer (ads), narrator (documentary and story narration), presenter (creator shorts), character (drama roles). The library also fixes one neutral reference text per language and the pitch range per gender (female 150-300 Hz, male 80-180 Hz).

A voice is castable only once its reference clip has passed QC on this machine: castableVoices in src/lib/voices.ts lists a voice only when voices/<id>.wav exists in the audio work folder, and only QC writes that file.

What the tools do today

Installs
1
GitHub Stars
10
First Seen
Oct 30, 2026