Was ist der Engine-API-Modus?
Der Engine-API-Modus stellt in einer Laravel-Anwendung eine HTTP-API bereit, die mit der offiziellen VOICEVOX-Engine kompatibel ist. Sobald Sie die Anwendung mitphp artisan serve --port=50513 starten, können Sie /audio_query und /synthesis direkt verwenden.
Vorbereitung
VOICEVOX Core für PHP einrichten
Folgen Sie den Schritten unter Installation und Konfiguration, um
voicevox-core-php und die Core-Library bereitzustellen.Laravel-Version der Engine starten
http://127.0.0.1:50513.
Zum Port 50513
Der Standardport der offiziellen VOICEVOX-Engine ist 50021. Damit die Laravel-Version und die offizielle Engine parallel gestartet werden können, ist als Standardport 50513 festgelegt. Da nur--port=50513 beim Start übergeben wird, ist auch die Nutzung anderer Ports wie --port=8000 problemlos möglich.
Die offizielle Engine passt den Port automatisch auf einen freien Port ab 50022 an, falls der aktuelle Port belegt ist. Auch
php artisan serve passt auf 8001 ff. an, wenn --port nicht angegeben wird; bei angegebenem --port schlägt der Start dagegen fehl, falls der Port belegt ist. Es wird empfohlen, einen Port festzulegen, der mit anderen Diensten unwahrscheinlich kollidiert. 50513 ist ein Beispiel dafür.Talk-Audio generieren
1. audio_query erstellen
2. Sprachsynthese mit synthesis
Verwendung aus einem Laravel-Client
Sie können die Laravel-Version der Engine als Verbindungsziel im Client-Modus verwenden.Aktivierung/Deaktivierung der Engine-API und Fallback
cancellable_synthesis oder multi_synthesis können auf die offizielle Engine gefallbackt werden.
Wenn Sie den Fallback nutzen, starten Sie die offizielle Engine unter
VOICEVOX_ENGINE_FALLBACK_URL.Unterstützungsstatus der Talk-Endpunkte
| Endpunkt | Laravel-Version | Fallback | Hinweise |
|---|---|---|---|
POST /audio_query | ✅ | ✅ | enable_katakana_english nicht unterstützt |
POST /accent_phrases | ✅ | ✅ | enable_katakana_english nicht unterstützt |
POST /synthesis | ✅ | ✅ | |
POST /mora_data | ✅ | ✅ | |
POST /mora_length | ✅ | ✅ | |
POST /mora_pitch | ✅ | ✅ | |
GET /speakers | ✅ | ✅ | |
GET /speaker_info | ✅ | ✅ | Ressourceninstallation erforderlich |
POST /cancellable_synthesis | ❌ | ✅ | Nur Fallback |
POST /multi_synthesis | ❌ | ✅ | Nur Fallback |
OpenAI-kompatibler TTS-Endpunkt
MitPOST /v1/audio/speech wird dasselbe Request-Format wie die OpenAI-Sprachsynthese-API akzeptiert. Durch reine Änderung der Base URL kann er unter anderem aus dem Laravel AI SDK und vielen anderen OpenAI-kompatiblen Tools verwendet werden.
Parameter
| Parameter | Beschreibung |
|---|---|
input | Zu sprechender Text (max. 4096 Zeichen) |
voice | Style-ID (numerisch), Alias (ずんだもん, 四国めたん usw.) oder OpenAI-Voice-Name (alloy, shimmer usw.) |
speed | Wiedergabegeschwindigkeit. Wird als speedScale angewendet (0,25–4,0, Standard 1,0) |
response_format | Es wird immer WAV zurückgegeben. Angegebene Werte werden ignoriert. |
| Weitere Parameter | Werden ignoriert. |
Die OpenAI-Voice-Namen (
alloy, shimmer usw.) sind vorläufige Zuweisungen. Da es keine definierte Zuordnung zwischen den Klangeigenschaften der einzelnen OpenAI-Voices und VOICEVOX-Charakteren gibt, wird zur Kompatibilität pragmatisch gemappt. Es wird empfohlen, die VOICEVOX-Charakter-Aliase (ずんだもん, 四国めたん/ノーマル usw.) zu verwenden.Nächste Seiten
Engine-API: Song
Verwendung von
sing_frame_audio_query und frame_synthesis.Laravel-AI-SDK-Integration
Konfiguration zur Nutzung von VOICEVOX über die
Audio-Facade.