合成
合成页:选模型、选音色、输入文本、设置风格与参数,查看计划,合成或边生成边播放,以及处理结果。
合成 页把文本变成语音。页面从上到下依次是 模型、音色、文本、风格(模型支持时)、参数 和 结果;合成 按钮固定在页面底部。各部分只显示所选模型支持的选项,换模型后界面会随之变化。
模型
点 模型 打开选择器,可以搜索。列表包含所有语音合成引擎的全部模型(包括还没安装的),每项显示引擎、变体、大小和所需显存,并用标记说明还缺什么:演示(演示引擎)、不可用(引擎还缺需要安装的内容)、许可(需要接受许可)、模型状态(如 未下载)、推荐。
模型下方的标签列出它的能力,例如 克隆音色、预置说话人、指令、流式输出、长文本。
第一次打开时,界面选择 设置 › 语音 › 默认模型;没有设置时选第一个已就绪的模型。之后记住你上次的选择。
模型还没准备好时
没准备好的模型也可以选。此时底部的 合成 按钮会换成它缺少的第一步,点一下就开始,并显示进度:
| 按钮 | 原因 |
|---|---|
| 启用 | 该引擎在 模型 › 引擎 中被停用了 |
| 接受 引擎名 的许可 | 需要接受许可的引擎(Fish Speech、IndexTTS),打开许可对话框 |
| 引擎名 需要 torch…,附安装命令 | 引擎不可用:torch 或需要接受许可的引擎的发行包还没安装。请把它装到 Mizuoto 所用的 Python 中,然后重启 Mizuoto |
| 下载 模型名(大小) | 模型还没下载 |
都完成后 合成 按钮回来。
音色
模型取得音色的方式不同,音色 部分会列出它支持的几种:
| 方式 | 用法 |
|---|---|
| 音色库 | 从音色库中选一个音色 |
| 一段音频 | 上传或录一段参考音频,克隆它的声音 |
| 预置说话人 | 选择模型自带的说话人(如 Qwen3-TTS CustomVoice、CosyVoice 300M SFT) |
| 描述音色 | 用文字描述(Qwen3-TTS VoiceDesign、VoxCPM2),或从固定的属性中选择(OmniVoice) |
| 自带音色 | 不指定音色,模型用自己的声音说话 |
换模型后,界面会自动选一个合适的方式:如果之前选的音色库音色适合新模型就保留它,否则依次尝试预置说话人、描述、一段音频。
音色库
选择器中每个音色都带有标记,说明这个模型能否、以何种方式使用它:克隆、克隆(无文本)、预置说话人、设计 等;需要额外处理时另有 先识别文本(参考音频缺少文本,合成前先转写)或 裁剪以适配(音频太长,会被截短)。不能使用的音色显示为灰色并附带原因。音色库为空时可以点 新建音色。
一段音频
- 把音频拖到 将音频文件拖放到这里,或点击选择文件(WAV、FLAC、MP3、M4A、OGG 等)。也可以:
- 点 录音 用麦克风录一段,录音时显示 输入电平,提示 参考音频以 3 到 30 秒的清晰语音为佳;点 停止并添加 或 放弃。浏览器只在 HTTPS 或本机(localhost)上允许使用麦克风。
- 点 服务器文件 选择服务器上的文件(只在服务器本机的浏览器中可用)。
- 点 之前的结果 选择一个合成结果。
- 在 音频中说的内容 中填写音频的文本。可以点 识别文本 让语音识别现在就填好,再自己修改。
参考文本与语音识别
多数模型克隆时需要参考音频的文本。文本留空时:
- 设置 › 语音 › 自动识别没有文本的参考音频 打开、且已安装语音识别:Mizuoto 先查转写缓存,没有就在合成任务中先转写(计划中显示 先识别文本)。音色库音色的转写结果会保存回音色。
- 没有语音识别:模型支持无文本克隆时按 克隆(无文本) 处理;否则报错,并提示如何安装语音识别。
参考音频超出模型允许的时长时,按 设置 › 语音 › 参考音频对模型来说过长时 处理:默认 裁剪以适配(在限制之前最安静的位置截断,原文本随之作废),也可以改为 拒绝。
文本
- 文本 框最多 20000 个字符。在框中按 Ctrl+Enter 直接合成。
- 语言:自动识别,或模型支持的某种语言。
- 每行一个结果:支持批量的模型(Qwen3-TTS、GPT-SoVITS、OmniVoice)才有这个开关;打开后每行文本各生成一个结果。
- 停止输入片刻后,文本框下方会显示 Mizuoto 将如何切分长文本(N 段,每段一个标签);如果模型自己处理长文本,则显示 引擎会自行切分长文本。段与段之间的停顿由参数 段间停顿(毫秒) 决定。
风格
模型支持指令或情感时才显示。
- 怎么说:一句风格指令,例如“开心地,稍快一些”(Qwen3-TTS 1.7B CustomVoice、CosyVoice 2 和 3、CosyVoice 300M Instruct)。
- 情感(IndexTTS-2 和 2.5)有三种给法,按模型支持的显示:
- 情感权重:每种情感一个 0–1 的滑块(高兴、愤怒、悲伤、恐惧、厌恶、忧郁、惊讶、平静)。
- 来自音频:一段 情感参考音频,只借用它的情感,不借用它的音色;强度 0–2。
- 文字描述:在 描述情感 中用文字写出来。
参数
参数 部分只列出这个模型接受的参数;不动的参数不会发送,由引擎使用自己的默认值。引擎特有的选项收在 引擎选项 中。
- 种子:留空表示 每次使用新的种子;填一个数则 保持这个种子,同样的输入会得到同样的结果。骰子按钮 随机一个种子,解锁按钮回到每次新种子。
- 输出:格式(WAV、FLAC、MP3、OGG、M4A)、采样率(模型原生,或 16–48 kHz)和 音量均衡(峰值、响度、不处理)。默认值来自 设置 › 语音。
预设
点 预设 打开菜单:
- 列表中的预设点一下即应用(标有 默认 或 所有模型)。
- 另存为预设…:填 预设名称;勾选 仅用于 模型名 则保存全部参数,否则只保存通用参数,适用于所有模型(含有引擎选项的预设只能用于当前模型)。勾选 选中此模型时自动应用 则设为该模型的默认预设。
- 管理预设…:设为默认、取消默认、删除。
选中一个模型时,界面自动应用它的默认预设;所选音色有自己的默认预设时优先用音色的。
计划、合成与流式播放
- 计划:不真正合成,只显示 将要执行的操作:模型、音色方式、语言、设备、分段数、发送的参数、每段参考音频(以及是否 先识别文本)和 提示。参数不合适时在这里就会报错。
- 合成:提交一个合成任务。任务卡片显示在页面底部,完成后结果出现在 结果 中。有多个任务时,它们收成一行 … 个任务,显示运行中和排队的数量(… 个运行中 · … 个排队)、总体进度和一个全部取消的按钮;展开后在可滚动的列表中显示每个任务的卡片。默认跨所有引擎和设备一次只运行一个合成任务,其余任务按顺序排队,显示 等待其他合成任务(设置 › 计算 › 同时运行的合成任务)。
- 流式:打开这个开关(位于 计划 和 合成 旁)后,合成 会边生成边播放。悬停可以看到当前模型的方式:CosyVoice 在首批词语生成后即开始播放;其他引擎每句生成好就播放;或由 Mizuoto 拆分文本,每段生成好就播放。播放条显示 已播放 … · 已就绪 …,可以 停止。模型跟不上时播放会暂停等待,不会丢掉语音;完整的结果照样保存在 结果 中。
结果
结果 列出本次在合成页生成的语音。每条显示文本、时长、波形(点击跳转)、模型、耗时、实时率(RTF)和种子,以及警告和许可声明。右侧菜单:
| 操作 | 作用 |
|---|---|
| 收藏 / 取消收藏 | 在历史中可以只看收藏 |
| 下载 | 下载文件 |
| 在文件夹中显示 | 只在服务器本机的浏览器中出现 |
| 用作参考音频 | 把这条结果作为 一段音频 的参考,文本一并填入 |
| 保存为音色 | 输入 新音色的名称,把它存进音色库 |
| 用这些设置重新运行 | 把生成它的模型、音色、文本和参数载回合成页 |
| 删除 | 删除这条结果 |
结果多于一条时,全部下载 打包下载。
命令行
mizuoto speak "你好。" -m qwen3tts/1.7b-base --voice narrator -o hello.wav
mizuoto speak "你好。" -m qwen3tts/1.7b-base --ref me.wav --ref-text "参考音频的文本" -o me.wav
mizuoto speak "你好。" -m qwen3tts/1.7b-custom-voice --preset vivian --instruct "开心地说" --plan
mizuoto speak "边生成边播放。" -m cosyvoice/cosyvoice2-0.5b --voice narrator --stream | ffplay -nodisp -
mizuoto speak "今天真开心!" -m indextts/v2 --ref me.wav --emotion happy=0.8
mizuoto preset save Calm -m cosyvoice/cosyvoice2-0.5b -p speed=0.9 --defaultmizuoto speak --help 列出所有选项(--describe、--attr、--emotion-audio、--batch、--use-preset 等),完整参考见命令参考。