Skip to main content

概觀

revolution/laravel-voicevox 是從 Laravel 使用 VOICEVOX 的套件。 可以用相同的 Laravel 風格處理透過 HTTP 連線至官方引擎的 Client 模式,以及結合 VOICEVOX Core for PHP 透過 PHP FFI 直接合成的 Native 模式。
若想先整理 FFI 前置知識,請參閱 PHP FFI;核心 library 本身的設定請參閱 VOICEVOX Core for PHP用法

功能表

需求

  • PHP 8.3+
  • Laravel 12+
  • ext-zip
  • 使用 Native 模式 / Engine API 時需 ext-ffi
  • 本機 CLI 環境
包含 Laravel Cloud 在內的一般 Web 伺服器環境中,FFI 大多為停用狀態,因此 Native 模式與 Engine API 請以 本機 CLI 為前提

模式一覽

tap() 之所以合適的原因

本套件在 talk() / song() 之後回傳 Audio Query 物件,可在 generate() 之前插入調整階段。 因此使用 tap() 可以自然地寫成 不改變回傳值,只調整 query 的形式。
  • Talk 中可調整 speedScalepitchScale 等。
  • Song 中可以 sync() 重新計算 F0 與音量。
  • 可完美地串接到 generate() 傳回的 VoicevoxResponse
tap() 本身的觀念整理於 tap() helper 與 Tappable trait。本套件是特別容易理解的實用範例。

文件

安裝

確認僅 Client 的導入、使用 FFI 的導入、發佈設定檔、準備引擎資源。

Client Talk

開始使用官方 VOICEVOX 引擎進行文字語音合成。

Client Song

建立 ScoreNote 進行歌聲合成。

Native Talk

以 PHP FFI 與 VOICEVOX CORE 進行本機合成。

Native Song

透過 FFI 直接使用歌聲模型。

VOICEVOX Core for PHP

確認核心 library 的設定與 Pure PHP 端的用法。

參考連結

最後修改於 2026年8月2日