Designing Synthetic Voices: Text Descriptors Beat Voice Clones
Cloning third-party voice catalogs creates licensing ambiguity and acoustic artifacts. Designing bespoke synthetic voices from text descriptors delivers unencumbered audio.

Key takeaways
- Designing synthetic voices from descriptive text prompts creates original studio-owned vocal assets without catalog risks.
- Local acted TTS runs in realtime (RTF 0.97) on Fish Audio Drama 3 using audio.cpp with cpu_expert_layers set to 20.
- Auditioning 6 candidate seeds through automated filters reveals that 1 to 2 seeds per character fail measurement criteria.
- The design-wide, clone-to-refine pattern corrects vocal timbre, dropping nasal energy ratio from 2.73 to 1.92.
- Stage direction tags indicating stops, like [breaks off], are obeyed literally as terminal cutoffs, requiring non-terminal prose.
The strategic trap of commercial voice cloning
In generative episodic entertainment and AI micro-drama production, creators typically default to commercial cloud voice cloning platforms. The standard workflow involves selecting a pre-existing voice sample from an online voice library, uploading a thirty-second reference clip, and generating character dialogue through a cloud API. While this approach offers immediate gratification, it introduces profound strategic and legal liabilities for commercial studios. Commercial voice libraries are frequently burdened with complex licensing restrictions, vague third-party likeness rights, and recurring compute fees that scale aggressively with episode volume.
More critically, cloning an external voice catalog frequently introduces persistent acoustic defects. Pre-recorded reference clips inevitably carry room reflections, microphone coloration, compression artifacts, and background noise from the original recording session. When an AI voice model attempts to clone an imperfect reference, it faithfully replicates these acoustic flaws across every generated line, resulting in audible high-frequency hiss, robotic phasing, and unnatural vocal transitions. To overcome these constraints, OMNI Studio abandoned external voice cloning in favor of pure vocal synthesis: designing original character voices entirely from text descriptions.
Local acted TTS on Fish Audio Drama 3
The foundation of our synthetic vocal pipeline is Fish Audio Drama 3, an open-weights 35B-A3B mixture-of-experts foundation model running locally on our dedicated workstations via the audio.cpp engine. On our primary RTX 5060 Ti 16GB GPU, the quantized Q4 GGUF model operates completely locally with zero cloud subscription fees or API meter charges. On the objective Artificial Analysis TTS leaderboard, Drama 3 Preview registered an impressive 1244 Elo, visibly outperforming legacy commercial cloud alternatives like ElevenLabs v3, which measured at 1180 Elo.
Achieving real-time local performance required meticulous kernel tuning. During our studio benchmarking evaluations, our pipeline team discovered that runtime speed is governed entirely by the cpu_expert_layers parameter rather than raw VRAM allocation. When cpu_expert_layers was set to 8, the runtime spilled computational tensors into shared system memory, causing synthesis to run 8.5x slower than real time. Raising the parameter to cpu_expert_layers=20 completely resolved memory bottlenecks, achieving blazing real-time synthesis with a real-time factor (RTF) of 0.97. Under this configuration, complex multi-line dialogue scenes render in real time without dropping speech tokens. Beyond raw throughput, the local Q4 architecture fits comfortably within our 16 GB hardware budget on the RTX 5060 Ti workstation. The engine provides abundant memory capacity for multi-turn dialogue scenes where successive character lines react dynamically to preceding vocal takes.
The voice design workflow: from text to locked anchor
Our voice creation workflow begins with text-based character design rather than audio sampling. Under the voice design protocol instituted by our executive producer, character directors author comprehensive vocal briefs within prompt description tags. These briefs define vocal timber through precise physiological and emotional adjectives, specifying age, vocal register, speech cadence, pitch modulation, and tonal resonance. For example, a character card might specify: young American woman, low-mid pitch, unhurried, dry delivery, minimal pitch modulation, with warmth reserved exclusively for the final clause.
The generator dispatches the design prompt across 6 candidate seeds. Rather than requiring human directors to listen to every raw take, an automated Python QA script pre-screens the batch:
- Word accuracy: running faster-whisper (large-v3-turbo) to verify that zero scripted words were dropped or hallucinated.
- Pitch stability: calculating fundamental frequency contours via pyin to confirm the vocal pitch falls within target bounds.
- Acoustic noise: analyzing frequency bands above 4 kHz to reject takes exhibiting background hiss above a -52 dB threshold.
Our measurements demonstrate that 1 to 2 of 6 seeds fail these automated criteria. The remaining clean takes are presented to the executive producer, who selects the final anchor by ear. Once selected, this pristine synthetic take becomes the permanent reference anchor for all future episodes.
The design-wide, clone-to-refine pattern
A major breakthrough in our vocal engineering methodology occurred during the production of our episodic drama series. While auditioning character voices, our executive producer favored candidate seed s9518 for character Maren due to its excellent cadence and emotional weight, but observed that the actor sounded excessively pinched and nasal. In traditional workflows, attempting to eliminate a nasal tone requires rerolling dozens of random design seeds, hoping by chance to stumble upon a cleaner variant.
Instead, our audio team formulated the design-wide, clone-to-refine pattern. Using seed s9518 as an initial reference anchor, the team submitted a clone generation pass with explicit corrective direction: same voice, same pace, and same pitch, but open and clear, resonant from the chest and open mouth, not nasal, not pinched. The refined candidate take preserved Maren's exact pacing and pitch while completely eliminating the nasality. Analyzing the audio frequency spectra revealed that the crude nasal energy ratio—measuring acoustic resonance across nasal formant bands—plummeted from 2.73 down to 1.92. Designing wide to find the character's soul, then cloning natively to refine acoustic quality, represents our most powerful vocal production tool.
Directing performance: pacing and the stop directive trap
Directing dialogue performance in conversational multi-speaker scenes requires an acute understanding of how neural language models interpret stage directions. In Fish Audio Drama 3, directors inject expressive stage directions in brackets, such as [dry, almost kind] or [a quiet amused breath through the nose], prompting the model to execute subtle non-verbals. However, our post-mortems identified a catastrophic prompt trap: stage directions that describe a character pausing or stopping are obeyed by the model as literal termination commands.
During an early scene recording, inserting the prompt direction [breaks off] caused the model to abruptly truncate character Cole's line mid-sentence, dropping the remaining dialogue entirely. The diffusion text-to-speech engine interpreted the directive as an end-of-sequence signal. Production scripts must describe hesitation using non-terminal phrasing, such as [voice catches, then pushes on]. Furthermore, unmanaged pacing tags cause severe tempo collapse: while unprompted reads run at a rapid 151 words per minute, inserting explicit [pause] tags causes delivery to collapse into an agonizing crawl between 36 and 81 words per minute. Limiting pacing instructions to a single opening adjective keeps dialogue flowing at a crisp, natural conversational pace without unnatural drag.



