跳转到主要内容

什么是预设

使用预设功能,你可以将常用的语音合成参数组合保存并复用。
将语速、音高、抑扬等一并管理,即使生成多段语音也更容易保持品质一致。

概览

Laravel VOICEVOX 的预设功能是基于 VOICEVOX Core 的原生实现。预设数据以 JSON 形式持久化到 storage/voicevox/presets.json 它使用与官方 VOICEVOX 引擎分开的存储,因此在 Laravel 侧创建的预设不会同步到官方引擎侧(反之亦然)。

配置

默认保存在 storage/voicevox/presets.json。若想使用其他路径,可在 config/voicevox.php 中修改。

预设的结构

预设的结构如下。

基本使用

创建预设

通过 preset() helper 的 add() 创建预设。

获取所有预设

查找预设

更新预设

删除预设

使用预设进行语音合成

使用 talk() helper 或引擎 API 的 /audio_query_from_preset 端点。

talk() helper

talk(preset:) 中指定预设 ID。此时通常的 Style ID 会被忽略。
应用预设时,普通的语音合成流程完全相同。仅是默认 AudioQuery 的值被预设替换。

通过引擎 API 访问

如果已启动 Laravel VOICEVOX 的引擎 API,就可以通过 HTTP 操作预设。

获取所有预设

添加预设

更新预设

删除预设

使用预设生成 audio query

参数详情

  • speedScale:0.5 ~ 2.0(语速)
  • pitchScale:-0.15 ~ 0.15(音高)
  • intonationScale:0.0 ~ 2.0(抑扬)
  • volumeScale:0.0 ~ 2.0(音量)
  • prePhonemeLength:0.0 ~ 1.5(起始静音・秒)
  • postPhonemeLength:0.0 ~ 1.5(结束静音・秒)

注意事项

Laravel 版的预设与官方 VOICEVOX 引擎的预设是分开管理的。添加、更新、删除会立即保存到 JSON 文件。
  • 将预设 ID 指定为 0 时会自动分配未使用的 ID。
  • 预设中请同时包含 speaker_uuid(UUID 字符串)与 style_id(整数)。

故障排查

预设未保存

  1. 请确认存储目录具有写入权限
  2. 请确认 storage/voicevox/presets.json 已被正确创建

不清楚预设文件的位置

想重置预设

最后修改于 2026年7月18日