> 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. 在底部的提示栏中，将模式切换为“音频”，并选择“语音”。
4. 选择你的音频模型：“ElevenLabs”或“MiniMax”。
5. 从语音选择器中选择一个声音和语言。
6. 根据你选择的模型，使用对应的情绪控制格式编写提示词（见下文）。
7. 点击提示栏中的蓝色按钮。

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#> 这很重要。
```

### 提示

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

***

如果您遇到任何问题或有任何疑问，欢迎随时联系我们。我们很乐意为您提供帮助。请写信至 [**support@morphic.com**](mailto:support@morphic.com)**.**


---

# 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.
