Cos’è la modalità API Engine
La modalità API Engine fornisce all’interno dell’applicazione Laravel un’API HTTP compatibile con il VOICEVOX Engine ufficiale. Basta avviare l’applicazione conphp artisan serve --port=50513 per poter usare direttamente /audio_query o /synthesis.
Preparazione
Configurare VOICEVOX Core for PHP
Segui la procedura in Installazione e configurazione per preparare
voicevox-core-php e la libreria core.Avviare l’engine versione Laravel
http://127.0.0.1:50513.
Informazioni sulla porta 50513
La porta predefinita del VOICEVOX Engine ufficiale è la 50021. Per poter avviare contemporaneamente l’engine versione Laravel e quello ufficiale, la porta predefinita è impostata a 50513. Poiché si sta semplicemente avviando con--port=50513, puoi usare anche altre porte come --port=8000.
Quando la porta è già in uso, l’engine ufficiale si regola automaticamente su una porta libera a partire dalla 50022. Anche
php artisan serve, se non viene specificato --port, si regola automaticamente a partire dalla 8001, ma se specifichi --port e la porta è occupata l’avvio fallisce. È consigliato indicare una porta fissa che difficilmente entri in conflitto con altri servizi. La 50513 ne è un esempio.Generare audio di talk
1. Creare l’audio_query
2. Sintetizzare l’audio con synthesis
Usare dal client Laravel
Puoi usare l’engine versione Laravel come destinazione della connessione in modalità client.Abilitazione/disabilitazione dell’API Engine e fallback
cancellable_synthesis o multi_synthesis, possono ricadere sull’engine ufficiale tramite fallback.
Quando usi il fallback, avvia l’engine ufficiale al
VOICEVOX_ENGINE_FALLBACK_URL.Stato di supporto relativo al talk
| Endpoint | Versione Laravel | Fallback | Note |
|---|---|---|---|
POST /audio_query | ✅ | ✅ | enable_katakana_english non supportato |
POST /accent_phrases | ✅ | ✅ | enable_katakana_english non supportato |
POST /synthesis | ✅ | ✅ | |
POST /mora_data | ✅ | ✅ | |
POST /mora_length | ✅ | ✅ | |
POST /mora_pitch | ✅ | ✅ | |
GET /speakers | ✅ | ✅ | |
GET /speaker_info | ✅ | ✅ | Richiede l’installazione delle risorse |
POST /cancellable_synthesis | ❌ | ✅ | Solo fallback |
POST /multi_synthesis | ❌ | ✅ | Solo fallback |
Endpoint TTS compatibile con OpenAI
POST /v1/audio/speech accetta lo stesso formato di richiesta dell’API di sintesi vocale di OpenAI. Basta cambiare il Base URL per poterlo utilizzare da Laravel AI SDK e da molti altri strumenti compatibili con le API OpenAI.
Parametri
| Parametro | Descrizione |
|---|---|
input | Testo da leggere (massimo 4096 caratteri) |
voice | ID di stile (numerico), alias (ずんだもん, 四国めたん, ecc.) o nome voce OpenAI (alloy, shimmer, ecc.) |
speed | Velocità di riproduzione. Applicata come speedScale (da 0.25 a 4.0, 1.0 se omesso) |
response_format | Viene sempre restituito in wav. Il valore specificato è ignorato |
| Altri parametri | Ignorati |
I nomi delle voci OpenAI (
alloy, shimmer, ecc.) sono assegnazioni provvisorie. Non esiste una definizione ufficiale che associ la qualità vocale di ciascuna voce OpenAI ai personaggi VOICEVOX, per cui la mappatura è puramente di comodo per garantire compatibilità. Si consiglia di usare gli alias dei personaggi VOICEVOX (ずんだもん, 四国めたん/ノーマル, ecc.).Pagine successive da leggere
API Engine: Song
Consulta come usare
sing_frame_audio_query e frame_synthesis.Integrazione con Laravel AI SDK
Consulta la configurazione per usare VOICEVOX tramite la facade
Audio.