Direct the performance,
not just the words.
Fish Audio's most emotive and controllable voice model. Tell it how a line should feel in plain language, shape it word by word, and generate whole scenes in one call.
What's new
One line. Five ways to direct it.
Same voice, same words. Each version changes one thing in the script. Other models generate a read; Drama 3 takes direction.
[barely holding it together, forcing a smile] I'm fine. Really. Go on without me.
Natural-language direction
Same words. Five performances.
One voice, one line: “I can't believe you actually came back.” Each take changes only the direction in brackets, written in plain English. No emotion presets, no SSML.
Change mid-line
Calm to panic, inside one take.
Directions can change partway through a line. The voice carries the turn itself, so nobody stitches separate takes together.
[calm, reassuring flight attendant] Ladies and gentlemen, there's nothing to worry about. Just a little turbulence. [hesitant, noticing something is wrong] Although that's... not a sound I've heard before. [panicked, shouting] Everybody heads down! Brace, brace!
Sounds, pauses, single words
A sigh, a laugh, a whisper, exactly where you put it.
Brackets drop a sound or a pause at that spot. A paired tag changes only the words it wraps.
So I told her, [laughs] I told her, it's fine, nobody will notice. [short pause] <whisper>Everybody noticed.</whisper> <fast>And now I can never go back to that restaurant again.</fast>
Alright. [sigh] One more time. This time, <emphasis>do not</emphasis> touch the red button. [small laugh] <whisper>I'm serious.</whisper> <slow>Do. Not. Touch it.</slow>
Paired tags · words inside only
Sounds & pauses · anywhere
[sigh] [laughs] [shaky breath] [small laugh] [short pause]
Multi-speaker dialogue
A whole scene. One API call.
One voice per character, a tag at each turn. Every speaker keeps their own voice and reacts to the line before.
[low, patient, a detective who already knows] You were there that night.
[defensive, too quick] I was home. [short pause] Asleep.
[skeptical, sliding a photo across the table] Then why is your coat still wet?
[long exhale, the act falling apart] Okay. Okay. I was there. <whisper>But I didn't touch her.</whisper>
[quietly, almost kind] Then who did?
// POST /v1/tts · model: drama-3 "reference_id": [ "<adrian-id>", "<delia-id>" ], "text": " <|speaker:0|>[low] You were there… <|speaker:1|>[defensive] I was home.… <|speaker:0|>[skeptical] Then why is… …"
In the Fish Audio app: add speakers in Text to Speech, give each one a voice, and let Auto Tag write the directions.
Word editing + Auto Tag
Fix one word. Keep the take.
An audiobook can run ten hours. One wrong name shouldn't mean regenerating a chapter, so Drama 3 regenerates only what you select.
Honestly? The premiere was a total disaster.
- Select the words.
- Rewrite them, or change the direction.
- Regenerate the selection only. The audio on both sides stays: same voice, same mood, same rhythm.
Write plain dialogue and Auto Tag adds the directions. Keep what works, rewrite the rest.
I was home. Asleep.
[defensive, slightly uneasy tone] I was home. [pause] Asleep.
Multilingual
Any language. Even mid-sentence.
Wrap a phrase in a language tag to switch for those words only. Directions can be written in the speaker's own language.
<english>To say you're going to do something, a good construction is</english> <spanish>voy a.</spanish> <english>You use it with the infinitive, like</english> <spanish>voy a comer,</spanish> <english>or, I'm going to eat.</english>
[像是在强忍着眼泪,却努力笑着] I'm fine. Really. Go on without me.
Chinese direction, English line · Sheila<japanese>[震える声で、涙をこらえて] 大丈夫。本当に大丈夫だから。先に行って。</japanese>
Japanese direction, Japanese line · Sheila[warm, a little conspiratorial] Every voice tells a story. This one speaks your language.
Pronunciation
Number one at saying it right.
Names, numbers, dates, codes and emails are where text-to-speech breaks in production. Drama 3 ranks first in Artificial Analysis' pronunciation robustness test.
Or pin it yourself with phoneme tags
I am an EH1 N JH AH0 N IH0 R.
stress: EN-jun-eerI am an EH0 N JH AH0 N IH1 R.
stress: en-jun-EERLong-form
One performance, start to finish.
A narrator and two characters, fifty seconds, one request. Drama 3 holds the whole script as one performance instead of stitching separate requests together.
Built for
For anyone shipping voice content.
Drama 3 is built for audio you render once and keep: stories, scenes, characters, courses and video.
Shift emotion mid-sentence, and fix a word instead of re-rendering a chapter.
Whole scenes in one call, every character in their own voice.
Directed character lines and party banter, rendered once and kept.
Directions are plain text, so they drop straight into prompt boxes and node graphs.
Intimate, reactive delivery for scripted moments and stories.
Language tags for tutors, and storytelling with real wonder in it.
Launch offer
Start directing now.
Two offers for launch. Full pricing is at fish.audio/plan.
Get started
Same endpoint. One header.
If you already call Fish Audio's text-to-speech API, Drama 3 is a header change. Directions, sounds and tags all work in API requests.
- Get an API key at fish.audio/app/api-keys.
- Set the model header to drama-3 on POST /v1/tts.
- Write directions in brackets, the way you'd brief an actor.
curl https://api.fish.audio/v1/tts \
-H "Authorization: Bearer $FISH_API_KEY" \
-H "model: drama-3" \
-d '{
"text": "[breathless, urgent] Turn off the lights. <emphasis>Do not open that door.</emphasis>",
"reference_id": "<voice-id>"
}'