Skip to main content

概要

revolution/laravel-voicevox は、Laravel から VOICEVOX を扱うためのパッケージです。 HTTP 経由で公式エンジンに接続するクライアントモードと、VOICEVOX Core for PHP を組み合わせて PHP FFI から直接合成するネイティブモードを同じ Laravel スタイルで扱えます。
FFI の前提知識を先に整理したいなら PHP FFI を、コアライブラリ自体のセットアップは VOICEVOX Core for PHP使い方 を参照してください。

機能表

要件

  • PHP 8.3+
  • Laravel 12+
  • ext-zip
  • ネイティブモード / エンジン API を使う場合は ext-ffi
  • ローカル CLI 環境
Laravel Cloud を含む一般的な Web サーバー環境では FFI が無効なことが多いため、ネイティブモードとエンジン API は ローカル CLI 前提 で考えてください。

モード一覧

tap() が合う理由

このパッケージは talk() / song() の直後に Audio Query オブジェクトを返し、generate() の前に調整フェーズを差し込めます。 そのため tap() を使うと、戻り値を変えずにクエリーだけを調整する 書き方が自然です。
  • Talk では speedScalepitchScale などを調整できます。
  • Song では sync() で F0 とボリュームを再計算できます。
  • generate() が返す VoicevoxResponse へきれいにチェーンできます。
tap() 自体の考え方は tap() ヘルパーと Tappable トレイト で整理しています。このパッケージは実用例として特に分かりやすいケースです。

ドキュメント

インストール

クライアントのみの導入、FFI を使う導入、設定ファイル公開、エンジンリソースの準備を確認します。

クライアント Talk

公式 VOICEVOX エンジンを使ったテキスト音声合成を始めます。

クライアント Song

ScoreNote を組み立てて歌声合成を行います。

ネイティブ Talk

PHP FFI と VOICEVOX CORE でローカル合成します。

ネイティブ Song

FFI 経由で歌声モデルを直接使います。

VOICEVOX Core for PHP

コアライブラリのセットアップと Pure PHP 側の使い方を確認します。

参考リンク

最終更新日 2026年5月26日

関連トピック

VOICEVOX for Laravel