Übersicht
revolution/laravel-voicevox ist ein Paket zur Nutzung von VOICEVOX aus Laravel. Sowohl der Client-Modus, der über HTTP eine Verbindung zur offiziellen Engine herstellt, als auch der Native-Modus, der VOICEVOX Core für PHP verwendet und direkt über PHP-FFI synthetisiert, lassen sich im gleichen Laravel-Stil verwenden.Wenn Sie zunächst die Grundlagen von FFI ordnen möchten, siehe PHP FFI; zur Einrichtung der Core-Library selbst siehe VOICEVOX Core für PHP und Verwendung.
Feature-Tabelle
Anforderungen
- PHP 8.3+
- Laravel 12+
ext-zip- Für Native-Modus / Engine-API:
ext-ffi - Lokale CLI-Umgebung
Modusübersicht
Warum tap() passt
Dieses Paket gibt direkt nach talk() / song() das Audio-Query-Objekt zurück, sodass Sie vor generate() eine Anpassungsphase einfügen können.
Deshalb ist mit tap() das Schreibmuster natürlich, den Rückgabewert nicht zu ändern, sondern nur die Query anzupassen.
- Bei Talk können Sie
speedScale,pitchScaleusw. anpassen. - Bei Song können Sie mit
sync()F0 und Lautstärke neu berechnen. - Sie können sauber an das von
generate()zurückgegebeneVoicevoxResponseweiterketten.
Die Idee hinter
tap() selbst ist unter tap()-Helper und Tappable-Trait zusammengefasst. Dieses Paket ist ein besonders anschaulicher praktischer Anwendungsfall.Dokumentation
Installation
Reine Client-Einrichtung, FFI-basierte Einrichtung, Veröffentlichung der Konfigurationsdatei, Vorbereitung der Engine-Ressourcen.
Client Talk
Text-Sprachsynthese mit der offiziellen VOICEVOX-Engine starten.
Client Song
Score und Note zusammenbauen und Gesangssynthese durchführen.Native Talk
Lokale Synthese über PHP-FFI und VOICEVOX CORE.
Native Song
Nutzung des Gesangsmodells direkt über FFI.
VOICEVOX Core für PHP
Einrichtung der Core-Library und Nutzung auf reiner PHP-Seite.
Referenzlinks
- GitHub: invokable/laravel-voicevox
- VOICEVOX Core für PHP: /de/packages/voicevox-core-php
- Verwendung von VOICEVOX Core für PHP: /de/packages/voicevox-core-php/usage
- PHP FFI: /de/advanced/ffi
tap()-Helper: /de/advanced/tap- Offizielle VOICEVOX-Engine: VOICEVOX/voicevox_engine