什麼是預設集
使用預設集功能可將常用的語音合成參數組合儲存起來重複使用。將語速、音高、抑揚等一併管理,可在產生多個語音時保持一致的品質。
概觀
Laravel VOICEVOX 的預設集功能是使用 VOICEVOX Core 的 Native 實作。預設集資料以 JSON 格式持久化於storage/voicevox/presets.json。
由於使用與官方 VOICEVOX 引擎獨立的儲存,Laravel 端建立的預設集不會反映到官方引擎端(反之亦然)。
設定
預設會儲存於storage/voicevox/presets.json。若要使用其他路徑,可於 config/voicevox.php 變更。
預設集結構
預設集為以下結構。基本用法
建立預設集
以preset() helper 的 add() 建立預設集。
取得所有預設集
搜尋預設集
更新預設集
刪除預設集
使用預設集進行語音合成
使用talk() helper 或 Engine API 的 /audio_query_from_preset endpoint。
talk() helper
在 talk(preset:) 指定預設集 ID。此時一般的 style ID 會被忽略。
透過 Engine API 存取
若有啟動 Laravel VOICEVOX 的 Engine 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(結尾靜音,秒)
注意事項
- 預設集 ID 指定為
0時,會自動編號未使用的 ID。 - 預設集請同時包含
speaker_uuid(UUID 字串)與style_id(整數)。
疑難排解
預設集未儲存
- 請確認 storage 目錄的寫入權限
- 請確認
storage/voicevox/presets.json是否正確建立