在客户端模式下让它唱歌
客户端模式的歌声合成使用官方 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 详解
了解帧长计算与 JSON 管理模式。
原生 Song
在通过 FFI 的原生模式下使用相同的
Score。VOICEVOX Core for PHP 用法
了解仅使用核心库时的语音合成流程。