Passer au contenu principal

Qu’est-ce que le mode natif

Le mode natif appelle VOICEVOX CORE directement via PHP FFI, à travers VOICEVOX Core for PHP. Il permet de synthétiser sans démarrer le moteur officiel, mais requiert la configuration de FFI et de la bibliothèque locale.
Le mode natif n’est pas destiné aux serveurs web. Utilisez-le en CLI locale. Les contraintes de FFI sont également décrites dans PHP FFI.

Prérequis

  1. Avoir terminé Installation et configuration
  2. Avoir terminé la mise en place de VOICEVOX Core for PHP
  3. Avoir configuré VOICEVOX_CORE_PATH dans le .env
VOICEVOX_CORE_PATH=/path/to/voicevox_core/

Utilisation de base

En mode natif, on utilise le helper talk().
use function Revolution\Voicevox\talk;

$response = talk('ネイティブ版なのだ', id: 1)
    ->generate(id: 1);

$response->storeAs('native', 'talk.wav');

Spécifier l’ID de style

Pour id, spécifiez un ID de style contenu dans les .vvm chargés.
use function Revolution\Voicevox\talk;

$response = talk('ずんだもんなのだ', id: 1)
    ->generate(id: 1);
Seuls les modèles listés dans core.vvms de config/voicevox.php sont utilisables.

Ajuster l’Audio Query avec tap()

En mode natif, l’usage de tap() est identique. Notez toutefois que TalkAudioQuery est une classe différente de celle du mode client.
use Revolution\Voicevox\Talk\TalkAudioQuery;
use function Revolution\Voicevox\talk;

$response = talk('速めに話すのだ', id: 1)
    ->tap(function (TalkAudioQuery $talk) {
        $talk->audioQuery['speedScale'] = 1.2;
        $talk->audioQuery['pitchScale'] = 0.05;
        $talk->audioQuery['intonationScale'] = 1.5;
        $talk->audioQuery['volumeScale'] = 1.0;
    })
    ->generate(id: 1);
Le pattern tap() en lui-même est résumé dans Le helper tap() et le trait Tappable. VOICEVOX for Laravel en est un exemple concret.

Utiliser la notation AquesTalk-like en kana

Le mode natif ne dispose pas de enable_katakana_english : il n’est donc pas adapté à la lecture directe d’entrées mêlées d’anglais. À la place, vous pouvez passer directement la notation AquesTalk-like en kana avec kana().
use function Revolution\Voicevox\kana;

$response = kana("ネイティブ'バンナ/ノダ'", id: 1)
    ->generate(id: 1);

$response->storeAs('native', 'kana.wav');

Différences avec le mode client

ÉlémentClient TalkNative Talk
Démarrage du moteurRequisNon requis
FFINon requisRequis
Conversion automatique de l’anglais en katakanaOuiNon
Point d’entrée APIVoicevox::talk()talk()

Pages suivantes

Native Song

Utilisez le modèle de chant via FFI.

VOICEVOX Core for PHP

Découvrez la mise en place et les contraintes du wrapper PHP pur.
Dernière modification le 13 juillet 2026