在 Client 模式讓角色歌唱
Client 模式的歌聲合成使用官方 VOICEVOX 引擎的sing_frame_audio_query 與 frame_synthesis API。
與 Talk 不同,需要先建立 Score 與 Note。
事前準備
建立 Score 與 Note
基本用法
teacher 與 id
teacher: 傳給sing_frame_audio_query的 style ID。目前只有 6000 一個,故預設為 6000。generate(id:): 傳給frame_synthesis的 style ID
singers() 取得。
使用 tap() 調整 F0 與音量
Song 中 tap() 的用途特別清楚,可以先調整 SongAudioQuery 後再送入 generate()。
tap() 也很方便。
tap() 的觀念已整理於 tap() helper 與 Tappable trait。VOICEVOX for Laravel 是「不改變回傳值,只調整中間物件」的典型範例。下一步閱讀
Score 與 Note 詳解
確認 frame length 計算與 JSON 管理模式。
Native Song
以 FFI 的 Native 模式使用相同的
Score。VOICEVOX Core for PHP 用法
確認核心 library 單獨的語音合成流程。