メインコンテンツへスキップ

概要

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

機能表

FeatureSupportedDescription
VOICEVOX Client公式 VOICEVOX エンジン API に HTTP でアクセスします。FFI は不要です。
VOICEVOX CoreVOICEVOX Core for PHP を通して VOICEVOX CORE の動的ライブラリを利用します。
Laravel styleFacade、ヘルパー、config/voicevox.php.env で Laravel らしく扱えます。
Laravel AI SDK 統合Laravel AI SDK の Audio ワークフローからも利用できます。
VOICEVOX Engine⚠️Laravel アプリ内に VOICEVOX 互換 API を内蔵します。未対応部分は公式エンジンへフォールバックします。
VOICEVOX Engine / OpenAI互換TTS API/v1/audio/speech voiceはAI SDKと同様にスタイルIDの他に「ずんだもん」などのエイリアスに対応しています。
VOICEVOX Editor⚠️macOS用のソング特化アプリを開発しましたがアプリストアで公開・配布する予定はありません。いつかGitHubでコードが公開されたらXcodeでビルドして使用できます。

要件

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

モード一覧

モード実行方法FFI主な用途ガイド
クライアント Talk公式エンジンへ HTTP リクエスト不要テキスト音声合成client-talk
クライアント Song公式エンジンへ HTTP リクエスト不要歌声合成client-song
ネイティブ TalkVOICEVOX CORE を FFI で直接呼び出し必要ローカルでのテキスト音声合成native-talk
ネイティブ SongVOICEVOX CORE を FFI で直接呼び出し必要ローカルでの歌声合成native-song
エンジン APILaravel アプリ内で互換 API を提供必要VOICEVOX 互換 API の内蔵installation

tap() が合う理由

このパッケージは talk() / song() の直後に Audio Query オブジェクトを返し、generate() の前に調整フェーズを差し込めます。 そのため tap() を使うと、戻り値を変えずにクエリーだけを調整する 書き方が自然です。
use Revolution\Voicevox\Client\TalkAudioQuery;
use Revolution\Voicevox\Voicevox;

$response = Voicevox::talk('タップで調整できるのだ', id: 1)
    ->tap(function (TalkAudioQuery $talk) {
        $talk->audioQuery['speedScale'] = 1.2;
    })
    ->generate(id: 1);
  • 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日