> For the complete documentation index, see [llms.txt](https://morphic.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://morphic.com/docs/zh/yin-pin/voice-emotion-control.md).

# 语音情绪控制

Morphic 的语音情绪控制可让你塑造生成语音的听感，从情绪语气到反应、节奏和表达风格都能控制。只要用合适的提示词写出指令，语音就会按你的要求表现。

## 如何使用语音情绪控制

下面是一个关于如何在 Morphic 中使用语音情绪控制的快速教程：

1. 打开 Morphic 并进入你的项目。
2. 创建一个新文件或打开现有文件。
3. 在底部的提示栏中，将模式切换为“Audio”，并选择“Speech”。
4. 选择你的音频模型：“ElevenLabs”或“MiniMax”。
5. 从语音选择器中选择一种语音和语言。
6. 使用所选模型的情绪控制格式编写提示词（见下文）。
7. 点击“Generate”。

Morphic 支持两种语音模型。每种模型的情绪控制语法都不同。先选择你的模型，然后按照下面的指南进行。

## ElevenLabs

ElevenLabs 直接在提示词中使用方括号标签。将任何情绪、反应或指令放入方括号中，模型会把它理解为表演提示，而不是朗读内容。

### 其工作方式

```
[tag] 你的对话文本写在这里。
```

标签会影响其后所有内容，直到出现新的标签为止。你可以在文本中的任意位置放置标签，并按顺序组合多个标签。

| 无标签                | 有标签                            |
| ------------------ | ------------------------------ |
| `我拿到那个角色了。我真的拿到了。` | `[excited] 我拿到那个角色了。我真的拿到了。`   |
| `我们得走了。现在。`        | `[whispers][tense] 我们得走了。现在。`  |
| `我觉得这不会成功。`        | `[sad][hesitant] 我觉得这不会成功。`    |
| `宝藏埋在那座老礼拜堂下面。`    | `[pirate voice] 宝藏埋在那座老礼拜堂下面。` |

ElevenLabs 是开放式的，没有固定列表。将任何情绪或指令写在方括号中，模型会尝试理解它。诸如 `[jealous]`, `[romantic]`, `[awkward]`, `[suspicious tone]`，或 `[continues after a beat]` 都可以。

下面这些标签是常用且效果可靠的，但并不局限于此。

### 标签

**情绪**

| 标签             | 作用          |
| -------------- | ----------- |
| `[excited]`    | 高能量、充满热情的表达 |
| `[happy]`      | 温暖、轻快的语气    |
| `[cheerfully]` | 轻盈、明亮的表达    |
| `[sad]`        | 低落、压抑的语气    |
| `[sorrowful]`  | 深沉的悲伤、哀痛    |
| `[angry]`      | 尖锐、有力的表达    |
| `[nervous]`    | 不确定、略带颤抖    |
| `[frustrated]` | 紧绷、没有耐心的语气  |
| `[calm]`       | 平稳、放松的表达    |
| `[tired]`      | 精力不足、疲惫不堪   |
| `[curious]`    | 好奇、询问的语气    |
| `[sarcastic]`  | 干涩、带讽刺意味的表达 |
| `[playful]`    | 轻松、调侃的语气    |
| `[deadpan]`    | 平板、毫无感情的表达  |

试试看：

```
[excited] 我们刚拿到融资。我简直不敢相信。 [nervous] 但现在我们真的得把事情做出来。 [calm] 一步一步来。我们会解决的。
```

**情绪细微变化**

用于更细腻的语气变化。这些会为台词增加层次，但不会完全改变整体表达。

| 标签                | 作用         |
| ----------------- | ---------- |
| `[hesitant]`      | 犹豫、不太确定    |
| `[relieved]`      | 如释重负、紧张感释放 |
| `[tense]`         | 紧绷、戒备着什么   |
| `[warm]`          | 温柔、关怀的语气   |
| `[resigned tone]` | 认命、接受失败    |
| `[stammers]`      | 说话结巴、局促不安  |
| `[regretful]`     | 希望事情能有所不同  |
| `[sympathetic]`   | 富有同情心、善解人意 |
| `[reassuring]`    | 安抚人心、稳定    |
| `[awe]`           | 被惊奇或震撼所打动  |

试试看：

```
[tense] 有点不对劲。我能感觉到。 [relieved] 哦，是你啊。谢天谢地。 [warm] 过来吧。我刚才很担心你。
```

**反应**

在台词之间或之中加入非语言声音，以增强真实感。

| 标签                | 作用             |
| ----------------- | -------------- |
| `[laughs]`        | 大笑             |
| `[giggles]`       | 轻柔、短促的笑        |
| `[light chuckle]` | 简短、克制的笑        |
| `[sigh]`          | 因疲惫、如释重负或沮丧而呼气 |
| `[gasps]`         | 倒吸一口气，表示惊讶或震惊  |
| `[gulps]`         | 紧张地吞咽          |
| `[crying]`        | 带泪、声音哽咽        |
| `[clears throat]` | 快速清嗓           |

试试看：

```
[laughs] 你在开玩笑吧。 [gasps] 等等，你是认真的？ [clears throat] 好吧。我们认真谈谈这个。
```

**表达方式**

控制语音在生理上的台词表现方式，与情绪无关。

| 标签                | 作用          |
| ----------------- | ----------- |
| `[whispers]`      | 轻柔、气声、贴近的表达 |
| `[shouts]`        | 响亮、外放的声音    |
| `[quietly]`       | 低音量、克制      |
| `[loudly]`        | 提高音量、强势     |
| `[rushed]`        | 快速、紧迫的节奏    |
| `[drawn out]`     | 缓慢、拉长的表达    |
| `[dramatic tone]` | 戏剧化、张力更强    |

试试看：

```
[whispers] 他们就在门外。 [rushed] 我们现在得动身，没有时间了。 [shouts] 快跑！
```

**口音与角色**

在不改变语音的情况下切换口音，或者给语音赋予一个角色人设。

| 标签                        | 作用            |
| ------------------------- | ------------- |
| `[American accent]`       | 标准美式英语        |
| `[British accent]`        | 标准英式英语        |
| `[French accent]`         | 带法语口音的英语      |
| `[Southern US accent]`    | 美国南方口音        |
| `[Australian accent]`     | 澳大利亚英语        |
| `[strong Russian accent]` | 浓重的俄语口音       |
| `[strong X accent]`       | 将 X 替换为任意国籍   |
| `[pirate voice]`          | 粗哑、海盗般的角色音色   |
| `[old man voice]`         | 年迈、沧桑的表达      |
| `[robot voice]`           | 机械感、合成感的语气    |
| `[fantasy narrator]`      | 史诗感、童话式旁白     |
| `[film noir narrator]`    | 黑暗、忧郁、愤世嫉俗的旁白 |
| `[sarcastically]`         | 干涩、带讽刺意味的角色朗读 |

试试看：

```
[pirate voice] 宝藏藏在老礼拜堂下面，埋在三寻深的地方。 [old man voice] 我记得那时这个镇子只有土路和诚实的人。 [robot voice] 警告。结构完整性受损。立即撤离。
```

### 多角色对话

在一个提示词中写有两个或更多角色的场景时，使用这些标签来塑造台词之间的互动方式。

| 标签               | 作用            |
| ---------------- | ------------- |
| `[interrupting]` | 在对方话说完前插入     |
| `[overlapping]`  | 在另一个声音拖尾时开始说话 |

试试看：

```
所以我想说的是 [interrupting] 不，别说了。你不能这样解释过去。 [overlapping] 但如果你能先听我说一秒……
```

### 停顿与节奏

ElevenLabs 不支持显式的停顿时长。停顿长度由上下文、标签和标点推断。

| 这样写       | 作用             |
| --------- | -------------- |
| `[pause]` | 戏剧性停顿（时长由模型决定） |
| `...`     | 犹豫、拖尾式停顿       |
| 全大写       | 强调这个词          |
| 新段落       | 清晰的停顿并重置语调     |

试试看：

```
"我……嗯，我想是吧。"

"[pause] 然后它就发生了。"

"我说了，现在！"
```

### 获得更好结果的技巧

| 技巧                        | 为什么有效                                                              |
| ------------------------- | ------------------------------------------------------------------ |
| 让标签与文本匹配                  | `[crying] 别离开我。` 听起来更自然。把 `[crying]` 添加到一句随意的句子中则不会。模型会读取整行以获取上下文。 |
| 组合标签                      | `[whispers][tense]` 或 `[hesitant][nervous]` 会给模型两个提示，让它融合出更细腻的输出。  |
| 选对语音                      | 平静的声音不会说出有说服力的喊叫。高能量的声音也不擅长耳语。让语音与角色匹配。                            |
| 使用 Creative 或 Natural 稳定度 | 这些设置会给模型更多空间来表现标签。Robust 更稳定，但表达性较弱。                               |
| 把标点当作节奏提示                 | 逗号会放慢节奏。句号会形成明显停顿。省略号会拖尾。模型会读取并响应标点。                               |

## Google Gemini 3.1 Flash TTS

Gemini 3.1 Flash TTS 可提供富有表现力的多语言旁白，并能在广泛语言范围内精细控制语气、语速和口音。你可以通过两种方式来指挥它：使用自然语言指令，以及在脚本中写入行内提示。

### 其工作方式

Gemini 会读取你用自然语言写下的指令，并据此塑造表达方式。先写指令，再写台词。

| 无指令              | 有指令                                     |
| ---------------- | --------------------------------------- |
| 暴风雨已经过去了。你现在安全了。 | 用温柔、缓慢的语气说这句，像是在安慰一个孩子：暴风雨已经过去了。你现在安全了。 |

你也可以在方括号中插入行内提示，以添加反应并在台词中途切换表达方式。Gemini 会表演这个提示，而不是把它读出来。

试试看： `我简直不敢相信你做了那个 [laughs]。今年最棒的惊喜。`

### 标签

把提示直接放在你希望它出现在台词中的方括号位置。Gemini 会表演这个提示，而不是把它读出来，而且你可以在一个脚本中使用多个提示。

反应和声音：

| 标签                  | 作用         |
| ------------------- | ---------- |
| \[laughs]           | 加入自然的笑声    |
| \[laughs nervously] | 加入紧张的笑声    |
| \[sighs]            | 加入叹气       |
| \[gasps]            | 加入倒吸一口气    |
| \[exhales]          | 加入可听见的呼气   |
| \[scoffs]           | 加入不屑的嗤笑    |
| \[clears throat]    | 在台词前加入清嗓   |
| \[crying]           | 带着泪水说出这句台词 |

表达方式与语气：

| 标签              | 作用         |
| --------------- | ---------- |
| \[whispering]   | 把声音降到耳语    |
| \[normal voice] | 恢复正常说话声音   |
| \[softly]       | 让表达更柔和     |
| \[shouting]     | 把声音提高到喊叫   |
| \[slowly]       | 放慢节奏       |
| \[excited]      | 增加能量和兴奋感   |
| \[nervously]    | 加入紧张、犹豫的语气 |

试试看： `[whispering] 别出声。 [normal voice] 好，清场了。`

如果想控制语气、能量或口音，请在台词前用自然语言描述你想要的效果。Gemini 支持在其语言范围内进行口音控制。

试试看： `用英式口音读这句：今天天气真好，不是吗？`

### 多说话者对话

Gemini 可以在一次生成中演绎两位说话者之间的来回对话，并为每位说话者赋予不同的声音。先为每一行标注说话者姓名，然后在生成前为每位说话者分配一个声音。Gemini 每段对话最多支持两位说话者。

试试看：

```
Maya：你收到那份工作的回复了吗？
Tom：收到了。我周一开始。
Maya：太棒了，恭喜你。
```

| 元素         | 要做什么                  |
| ---------- | --------------------- |
| 说话者标签      | 每一行都以说话者姓名开头，后接冒号     |
| 每位说话者对应的声音 | 在生成前为每个已命名的说话者分配各自的声音 |
| 说话者上限      | 一段对话中最多两个不同说话者        |

### 停顿与节奏

使用省略号来加入一个短暂停顿，并在指令中说明你想要的节奏。

| 方法       | 示例                         |
| -------- | -------------------------- |
| 用省略号表示停顿 | `等等…… …… …… 你听到了吗？`        |
| 在指令中说明节奏 | `这样慢慢、刻意地读：每。个。字。都。很。重。要。` |

### 获得更好结果的技巧

| 技巧        | 它为什么有帮助                                    |
| --------- | ------------------------------------------ |
| 把指令放在台词之前 | Gemini 会将指令应用到其后面的文本上                      |
| 设置场景      | 类似这样的上下文 `以自然纪录片旁白的方式，平静而轻声地说：` 会塑造语气和表达方式 |
| 组合使用方法    | 在同一个脚本中同时使用自然语言指令和行内方括号提示                  |
| 让语言与声音匹配  | 在生成前，选择适合你脚本的声音和语言                         |

## MiniMax

MiniMax 使用 **括号音效标签** 在你的提示词中，以及一个单独的 **情绪选择器** 在 Morphic 的界面中。

### 情绪

在生成时从下拉菜单中选择情绪。这会设定整个输出的总体语气。

| 情绪 | 效果                   |
| -- | -------------------- |
| 自动 | 模型读取文本并选择最合适的情绪（默认）  |
| 开心 | 轻快、积极                |
| 悲伤 | 低落、忧郁                |
| 愤怒 | 强势、具有攻击性             |
| 恐惧 | 焦虑、害怕                |
| 厌恶 | 反感、排斥                |
| 惊讶 | 受惊、惊奇                |
| 平静 | 放松、宁静                |
| 流畅 | 干净、播音风格——非常适合新闻或技术旁白 |
| 中性 | 没有情绪偏向               |

### 音效标签

使用括号直接在提示词中加入非语言声音。这些是 **仅预设可用** ——只支持下面列出的标签。

```
这太不可思议了 (laughs) 我简直不敢相信真的成功了。
结果是……出乎意料。 (sighs) 让我解释一下。
```

| 标签        | 标签      | 标签     |
| --------- | ------- | ------ |
| `(笑)`     | `(轻笑)`  | `(咳嗽)` |
| `(清嗓)`    | `(呻吟)`  | `(呼吸)` |
| `(喘气)`    | `(吸气)`  | `(呼气)` |
| `(倒吸一口气)` | `(吸鼻子)` | `(叹气)` |
| `(哼鼻)`    | `(打嗝)`  | `(咂嘴)` |
| `(哼唱)`    | `(嘶嘶声)` | `(嗯)`  |
| `(吹口哨)`   | `(打喷嚏)` | `(哭泣)` |
| `(掌声)`    | `(打哈欠)` |        |

> 不像 ElevenLabs，您 **不能** 创建自定义标签。写入 `(紧张)` 或 `(嫉妒)` 这样不会起作用——模型会将它们作为文本读出。请使用情感选择器来设置情感语气。

### 停顿

使用以下方式插入定时静音： `<#x#>` 其中 `x` 表示秒数（0.01–99.99）。

```
结果出乎意料。 <#1.2#> 让我们来看看原因。
我们需要谈谈。 <#0.5#> 这很重要。
```

### 提示

* 请谨慎使用声音标签——太多会听起来不自然。
* 将情感设置为 **自动** 适用于大多数情况。当您需要在长文本中保持一致的语气时，可手动覆盖。
* 标点很重要——逗号和句号会引导模型的节奏和语调。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://morphic.com/docs/zh/yin-pin/voice-emotion-control.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
