Every line voiced including the ones nobody planned.
0.1-1.2
prosody dial, continuous, per request
A cast is a folder of ten-second clips, not forty contracts, and a held seed means a rebuilt dialogue bank speaks the same lines it spoke yesterday. Game scripts are enormous and mostly unheard, and voicing all of it is a build step here.
The lines that never get recorded
What you can afford to record decides which lines exist. A guard with three lines is cheap. A guard who reacts to the time of day is a session nobody booked, so the writing shrinks to fit.
audio
an NPC gate line, spoken in place
generated 2026-08-05
English
“Turn around. I have told you three times now, and I am not going to tell you a fourth, the gate stays shut until the captain says otherwise, and the captain is not here. I do not care what you were promised at the harbour, or who promised it. Come back at dawn with something signed and I will read it. Come back tonight without one and you will be talking to somebody far less patient than me.”
Leo · 19.4 s · game dialogue · gate guard
Directing a performance from the request
- One continuous prosody dial per request, so the same NPC can read tired, clipped or wide-open without a second voice, and a held seed makes the take you liked repeatable.
- Five prosody dials. One sets melodic range, continuous, so the read can sit anywhere between recited and performed.
- Reproducible seeds, so a rebuilt dialogue bank does not silently change lines the player has already heard.
Notes
Can one voice cover a whole cast?
No, and it should not. Each character wants its own reference clip, cloning is instant and carries no per-voice fee, so a cast of forty is forty clips rather than forty contracts.
Can dialogue be generated at runtime?
Yes. One socket per session, and audio starts streaming before the render finishes. A baked bank uses the bytes endpoint instead.
A key and one stream to build this on, the same production API this page measures.
Get a key for this use case