本页目录
用 Fish Audio 在线音色生成播报
对应页面:音色与短句
场景:你不想在本机安装语音模型(或者显卡一般,本地生成太慢),想直接用 Fish Audio 音色库里现成的音色。平时的播报都用一个中文音色,只有「蒂娜好了」这一条想换成日文音色,念日文。
音频只在生成时请求一次,保存到本地后,游戏中播报不联网。使用 HTTP 服务不需要安装语音模型,但仍要在 总览与播放 中打开 启用语音播报。
第 1 步:准备密钥和音色 ID
- 登录 Fish Audio,在 API Keys 页面创建一个密钥并复制下来。API 按用量计费,价格以官网为准。
- 在音色库中打开想用的中文音色。地址栏形如
https://fish.audio/m/0f08cacd3e354471a4b94dd00b4cc4a3,/m/后面这一串就是音色 ID。 - 用同样的方法再找一个日文音色,记下它的 ID,例如
c5c17c9709384ba9a4b294662a2af0b1。
第 2 步:添加服务
打开 ,在 HTTP 语音服务 中选择预设 OpenAI 兼容接口,点击 添加服务。这个预设已经是 POST、JSON 请求体和
Bearer {secret} 鉴权,只需要改下面几项:| 项目 | 填写 |
|---|---|
| 名称 | fish audio |
| 并发数 | 2(默认) |
| 方法 | POST |
| URL | https://api.fish.audio/v1/tts |
| 密钥 | 第 1 步复制的密钥 |
| 请求头 | 保留 Authorization = Bearer {secret};点 添加请求头,添加 model = s2.1-pro |
| 请求体 | 编码选 JSON,内容见下 |
| 响应 | 直接返回音频 |
请求体:
{
"text": "{text}",
"reference_id": "{voice}",
"format": "mp3"
}{text}会替换成短句文本,{voice}替换成下面按语言填写的音色 ID,引号和换行会自动转义。format填mp3或wav。Fish Audio 也能返回opus和pcm,但应用不支持这两种格式。model请求头决定使用哪个模型,可选值以 Fish Audio 接口文档 为准。
在表单底部按语言填写
{lang} 和 {voice}:| 语言 | {lang} | {voice} |
|---|---|---|
| 中文 | zh | 0f08cacd3e354471a4b94dd00b4cc4a3 |
| 英文 | en | 0f08cacd3e354471a4b94dd00b4cc4a3 |
| 日文 | ja | c5c17c9709384ba9a4b294662a2af0b1 |
这个请求体没有用到
{lang},照填即可。没有专门的英文音色时,英文可以和中文填同一个 ID。第 3 步:试听并保存
- 在 测试 中选择 中文,保留默认文本,点击 生成并试听。能听到声音,下方显示成功和时长,就说明配置正确。
- 换成 日文,输入一句日文(如「ティナ、準備完了」)再试一次,确认用的是日文音色。
- 点击 保存。
试听失败时,表单下方会显示服务返回的状态码和原因:
| 提示 | 原因 |
|---|---|
HTTP 401 | 密钥不对,或者 Authorization 的值不是 Bearer {secret}(Bearer 后面有一个空格) |
HTTP 402 | Fish Audio 账户余额不足 |
其他 HTTP 4xx | 音色 ID 或请求体写错,按返回的原因修改 |
| 音频解码失败 | format 填成了 opus 或 pcm,改回 mp3 |
| 连接失败或超时 | 本机访问不了 api.fish.audio,检查网络 |
第 4 步:让播报默认使用 Fish Audio
- 打开 短句库,在 批量生成 中选择 HTTP 服务,再选「fish audio」。
- 勾选要生成的短句,点击 开始生成。
- 这个选择会被记住。之后在 播报总览 点击 一键生成缺失语音,也会用 Fish Audio 生成。
每条短句按自己的语言选用对应一行的音色。界面是中文时,自动生成和自定义文本的播报都是中文短句,所以都会用中文那一行的音色。
第 5 步:只给「蒂娜好了」换日文音色
- 打开 ,展开 语音播报,找到「蒂娜CD」(配置方法见 蒂娜 CD 转好时语音提醒)。
- 在 失效时播报 中,文案选 自定义文本,输入「ティナ、準備完了」。
- 生成音色 选「fish audio」,生成语言 选 日文。
- 点击 生成语音,生成后点 试听。
这一条会使用日文那一行的
{lang} 和 {voice},其他播报仍然按第 4 步的设置生成。自动生成 的播报也能单独选 生成音色,但只有 自定义文本 能改 生成语言,所以这里用自定义文本;想改回来时,把 生成音色 选回 跟随全局设置。