# Copy of Voice emotion control

Add emotion, reactions, and delivery direction to your generated speech. How you write your prompt directly controls how the voice performs.

Morphic supports two speech models — **ElevenLabs** and **MiniMax**. Each uses a different syntax for emotion control. Select your model, then write your prompt using the format below.

## ElevenLabs

ElevenLabs uses **bracket tags** written directly in your prompt. Wrap any emotion, reaction, or direction in square brackets and the model will interpret it as a performance cue — not spoken text.

### How it works

```
[tag] Your dialogue text here.
```

Tags affect everything after them until a new tag appears. You can combine multiple tags and place them anywhere in your text.

```
[excited] We just hit a million users!
[whispers][tense] Don't let them hear you.
[tired] I've been working for 14 hours straight. [sigh] I can't even feel my hands anymore.
```

### You can use any tag

ElevenLabs is **open-ended**. There is no fixed list — write any emotion or direction inside brackets and the model will try to interpret it. Tags like `[jealous]`, `[romantic]`, `[awkward]`, `[suspicious tone]`, or `[continues after a beat]` all work.

The tags below are commonly used and reliably effective, but you're not limited to them.

### Emotions

`[excited]` · `[happy]` · `[cheerfully]` · `[sad]` · `[sorrowful]` · `[angry]` · `[nervous]` · `[frustrated]` · `[calm]` · `[tired]` · `[curious]` · `[sarcastic]` · `[playful]` · `[mischievously]` · `[deadpan]` · `[flatly]`

**Nuance:** `[hesitant]` · `[relieved]` · `[tense]` · `[warm]` · `[resigned tone]` · `[stammers]` · `[regretful]` · `[sympathetic]` · `[reassuring]` · `[professional]` · `[questioning]`

### Reactions

Non-verbal sounds that add realism.

`[laughs]` · `[giggles]` · `[sigh]` · `[gasps]` · `[gulps]` · `[crying]` · `[clears throat]` · `[light chuckle]`

### Delivery

`[whispers]` · `[shouts]` · `[quietly]` · `[loudly]` · `[rushed]` · `[drawn out]` · `[dramatic tone]`

### Accents

Switch accents without changing voice.

`[American accent]` · `[British accent]` · `[French accent]` · `[Southern US accent]` · `[strong Russian accent]` · `[strong X accent]`

### Characters

`[pirate voice]` · `[old man voice]` · `[robot voice]`

### Multi-character dialogue

`[interrupting]` · `[overlapping]`

### Pauses

ElevenLabs does **not** support explicit pause durations. Pause length is inferred from context, tags, and punctuation:

| Write this    | Effect                                  |
| ------------- | --------------------------------------- |
| `[pause]`     | Dramatic silence (model decides length) |
| `...`         | Hesitant trailing pause                 |
| `—`           | Short, sharp pause                      |
| ALL CAPS      | Emphasis on the word                    |
| New paragraph | Clear pause + intonation reset          |

```
"I... yeah, I guess so."
"Wait — what's that noise?"
"I said NOW!"
[pause] And then it happened.
```

### Tips

* Tags work best when they match the text. `"No... please [crying] don't go."` works better than adding `[crying]` to neutral text.
* Combine tags: `[whispers][tense]` or `[hesitant][nervous]`.
* The voice you choose matters — a calm voice won't shout well, and a hyped voice won't whisper well.
* Use **Creative** or **Natural** stability for best tag responsiveness. **Robust** is more consistent but less expressive.
* Prompts under \~250 characters may produce inconsistent results. Longer is better.

## MiniMax

MiniMax uses **parenthetical sound tags** in your prompt and a separate **emotion selector** in Morphic's UI.

### Emotion

Select the emotion from the dropdown when generating. This sets the overall tone of the entire output.

| Emotion   | Effect                                                         |
| --------- | -------------------------------------------------------------- |
| Auto      | Model reads the text and picks the best emotion (default)      |
| Happy     | Upbeat, positive                                               |
| Sad       | Downcast, melancholic                                          |
| Angry     | Forceful, aggressive                                           |
| Fearful   | Anxious, scared                                                |
| Disgusted | Repulsed, averse                                               |
| Surprised | Startled, astonished                                           |
| Calm      | Relaxed, serene                                                |
| Fluent    | Clean, broadcast-style — ideal for news or technical narration |
| Neutral   | No emotional bias                                              |

### Sound tags

Add non-verbal sounds directly in your prompt using parentheses. These are **preset only** — only the tags listed below are supported.

```
That's incredible (laughs) I can't believe it actually worked.
The results were... unexpected. (sighs) Let me explain.
```

| Tag              | Tag         | Tag              |
| ---------------- | ----------- | ---------------- |
| `(laughs)`       | `(chuckle)` | `(coughs)`       |
| `(clear-throat)` | `(groans)`  | `(breath)`       |
| `(pant)`         | `(inhale)`  | `(exhale)`       |
| `(gasps)`        | `(sniffs)`  | `(sighs)`        |
| `(snorts)`       | `(burps)`   | `(lip-smacking)` |
| `(humming)`      | `(hissing)` | `(emm)`          |
| `(whistles)`     | `(sneezes)` | `(crying)`       |
| `(applause)`     | `(yawns)`   |                  |

> Unlike ElevenLabs, you **cannot** invent custom tags. Writing `(nervous)` or `(jealous)` won't work — the model will speak them as text. Use the emotion selector for emotional tone.

### Pauses

Insert timed silences using `<#x#>` where `x` is seconds (0.01–99.99).

```
The results were unexpected. <#1.2#> Let's walk through why.
We need to talk. <#0.5#> It's important.
```

### Tips

* Use sound tags sparingly — too many can sound unnatural.
* Set emotion to **Auto** for most cases. Override manually when you need consistent tone across long text.
* Punctuation matters — commas and periods guide the model's pacing and intonation.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://morphic.com/docs/audio/voice-emotion-control-1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
