Passer au contenu principal

Vue d’ensemble

VoicevoxResponse est l’objet réponse retourné par les méthodes d’exécution de synthèse comme talk()->generate() ou song()->generate(). Le même VoicevoxResponse est utilisé aussi bien en mode client qu’en mode natif. En interne, il conserve les données binaires WAV et fournit des utilitaires pour l’enregistrement, la conversion et la mise en chaîne.

content()

content() renvoie la binaire WAV brute. À utiliser lorsque vous souhaitez la renvoyer telle quelle en réponse HTTP.
use Revolution\Voicevox\Voicevox;

$response = Voicevox::talk('ずんだもんなのだ')->generate();
$wav = $response->content(); // Binaire WAV

return response($wav)->header('Content-Type', 'audio/wav');

storeAs()

storeAs() enregistre le WAV dans le Storage de Laravel. Les arguments s’utilisent selon la même logique que Storage::put().
use Revolution\Voicevox\Voicevox;

$response = Voicevox::talk('ずんだもんなのだ')->generate();

// En ne spécifiant que le nom de fichier
$path = $response->storeAs('output.wav');

// En séparant le chemin et le nom de fichier
$path = $response->storeAs('audio', 'output.wav');

// En spécifiant le disque
$path = $response->storeAs('audio', 'output.wav', 's3');
La valeur de retour est le chemin d’enregistrement (string). En cas d’échec, false est retourné.

toBase64()

toBase64() convertit le binaire WAV en chaîne Base64. Utile pour une réponse JSON ou une intégration dans du HTML.
$base64 = $response->toBase64();

return response()->json([
    'audio' => $base64,
]);
<audio controls src="data:audio/wav;base64,{{ $base64 }}"></audio>

__toString()

En castant VoicevoxResponse en chaîne, vous obtenez le même binaire WAV que content().
$wav = (string) $response;
Dernière modification le 13 juillet 2026