owntentowntentCreator-owned AI studio
DocsBlogPricingLog in

How do you dub AI videos so every character keeps the same voice?

Published 2026-08-27

Direct answer first: you keep AI character voices consistent the same way you keep faces consistent - by casting once and locking the configuration, not by re-describing the voice each time. Concretely: assign each character one TTS preset (or cloned voice) plus a fixed random seed, store that pair in a casting table, and generate every line of that character from the same pair. Style and emotion go into a per-line instruction; identity stays in the locked voice-plus-seed. Described-from-scratch voices drift between sessions exactly like described-from-scratch faces.

The voice-casting workflow

  1. Audition before casting. Generate the same two test lines (one calm, one emotional) across every candidate preset. Pick per character, considering contrast between characters who share scenes - two similar male voices in one dialogue reads as one person arguing with himself.
  2. Lock voice + seed in a casting table. Ours is literally a JSON map: character, preset, seed, default style note. Every dubbing run reads it; nothing about identity is decided at generation time.
  3. Direct with instructions, not with new voices. Per-line acting ("whispered, out of breath", "cold, threatening") goes into the instruction field. The voice stays put; the performance changes. This split is what makes 10 episodes sound like one cast.
  4. Batch with a resumable manifest. Dubbing a series is hundreds of lines; engines fail on a few. Generate against a manifest that records completed lines so retries do not regenerate - and re-audit any engine after an update, because presets can shift.

Placement and the mix

Dubbing quality dies at the mix more often than at the TTS:

  • Place dialogue on cut boundaries. We align each line to its cut's start plus a small offset, nudging collisions apart - dialogue that straddles a cut reads as bad ADR.
  • Sidechain-duck the ambience. Route dialogue as the sidechain key against the ambient/music bed. Our working values: threshold low, ratio around 8:1 - measured effect is dialogue sitting 7-23 dB above the bed only while someone speaks.
  • Keep subtitles as overlays, not burn-ins. The dub and the subtitle system should be independent layers, so adding a language later never re-renders video.

Traps we hit so you do not

  • Some engines read malformed emotion parameters out loud - a formatting bug becomes a character saying "excited tone" on screen. Validate instruction strings.
  • Short commands hallucinate extra words on some engines; pad very short lines with punctuation or regenerate with a longer instruction.
  • License-check the engine for commercial dubbing before you commit a series to it. We auditioned several engines and retired one mid-production over exactly this - swapping voices mid-season is the audio equivalent of recasting a lead.

All 40+ dubbed episodes on our catalog run this exact chain, and the same casting-table idea drives our character-image consistency - one doctrine, two media.

What we could not verify

We have not run listener studies on voice-identity perception (whether audiences notice seed-level drift the way they notice face drift) - our bar is that we, editing daily, stopped being able to tell takes apart. Formal ABX testing is on the list.

← All posts
owntentowntentCreator-owned AI studio

Make it with AI. Own your fans. A creator-owned short-drama & webtoon studio.

Use cases

  • How it works
  • Script to film
  • Webtoon to film
  • Compare services

Product

  • Pricing
  • Account

Resources

  • Privacy
  • Terms
  • Acceptable use
  • Copyright
© 2026 owntent, All Rights ReservedSupport: support@owntent.com

owntent's AI features are powered by third-party AI models (such as Seedance, Kling, and GPT-Image). owntent is an independent product, not affiliated with or endorsed by these model providers; model names are trademarks of their respective owners. Generation results vary with model capability.