Vue d’ensemble
revolution/laravel-voicevox est un package pour utiliser VOICEVOX depuis Laravel. Il permet de gérer, dans un même style Laravel, un mode client qui se connecte au moteur officiel via HTTP et un mode natif qui, combiné à VOICEVOX Core for PHP, synthétise directement via PHP FFI.Pour poser les prérequis FFI, consultez PHP FFI. Pour la mise en place de la bibliothèque core elle-même, consultez VOICEVOX Core for PHP et son Utilisation.
Tableau des fonctionnalités
| Feature | Supported | Description |
|---|---|---|
| VOICEVOX Client | ✅ | Accès HTTP à l’API du moteur officiel VOICEVOX. FFI n’est pas requis. |
| VOICEVOX Core | ✅ | Utilise la bibliothèque dynamique de VOICEVOX CORE via VOICEVOX Core for PHP. |
| Laravel style | ✅ | Utilisation façon Laravel avec Facade, helpers, config/voicevox.php et .env. |
| Intégration Laravel AI SDK | ✅ | Utilisable également depuis les workflows Audio du Laravel AI SDK. |
| VOICEVOX Engine | ⚠️ | Intègre une API compatible VOICEVOX dans l’application Laravel. Les parties non prises en charge sont relayées en fallback vers le moteur officiel. |
| VOICEVOX Engine / API TTS compatible OpenAI | ✅ | Pour /v1/audio/speech, voice accepte, comme dans l’AI SDK, les alias tels que « ずんだもん » en plus des ID de style. |
| VOICEVOX Editor | ⚠️ | Une application dédiée Song pour macOS a été développée, mais il n’est pas prévu de la publier sur l’App Store. Si le code est un jour publié sur GitHub, vous pourrez la compiler avec Xcode et l’utiliser. |
Exigences
- PHP 8.3+
- Laravel 12+
ext-zipext-ffipour le mode natif / l’API du moteur- Un environnement CLI local
Liste des modes
| Mode | Exécution | FFI | Usage principal | Guide |
|---|---|---|---|---|
| Client Talk | Requête HTTP vers le moteur officiel | Non requis | Synthèse vocale de texte | client-talk |
| Client Song | Requête HTTP vers le moteur officiel | Non requis | Synthèse chantée | client-song |
| Native Talk | Appel direct de VOICEVOX CORE via FFI | Requis | Synthèse vocale de texte en local | native-talk |
| Native Song | Appel direct de VOICEVOX CORE via FFI | Requis | Synthèse chantée en local | native-song |
| API du moteur | Fournit une API compatible dans l’application Laravel | Requis | Intégration d’une API compatible VOICEVOX | installation |
Pourquoi tap() convient bien
Ce package retourne un objet Audio Query juste après talk() / song(), permettant d’insérer une phase d’ajustement avant generate().
Cela rend naturel l’usage de tap() pour ajuster uniquement la query sans changer la valeur de retour.
- En Talk, vous pouvez ajuster
speedScale,pitchScale, etc. - En Song,
sync()permet de recalculer F0 et le volume. - Vous pouvez chaîner proprement vers le
VoicevoxResponseretourné pargenerate().
Le concept de
tap() est expliqué dans Le helper tap() et le trait Tappable. Ce package est un cas d’usage particulièrement clair.Documentation
Installation
Découvrez l’installation client seule, l’installation avec FFI, la publication du fichier de configuration et la préparation des ressources du moteur.
Client Talk
Démarrez la synthèse vocale de texte via le moteur officiel VOICEVOX.
Client Song
Construisez un
Score et des Note pour la synthèse chantée.Native Talk
Synthétisez en local via PHP FFI et VOICEVOX CORE.
Native Song
Utilisez directement le modèle de chant via FFI.
VOICEVOX Core for PHP
Découvrez la mise en place de la bibliothèque core et son utilisation côté PHP pur.
Liens de référence
- GitHub : invokable/laravel-voicevox
- VOICEVOX Core for PHP : /fr/packages/voicevox-core-php
- Utilisation de VOICEVOX Core for PHP : /fr/packages/voicevox-core-php/usage
- PHP FFI : /fr/advanced/ffi
- Helper
tap(): /fr/advanced/tap - Moteur officiel VOICEVOX : VOICEVOX/voicevox_engine