> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Référence API - VOICEVOX Core for PHP

> Référence de toutes les classes, méthodes et enums de VOICEVOX Core for PHP.

## `Onnxruntime`

Chargeur d'ONNX Runtime. Singleton au niveau du processus : une seule instance par processus.

### Méthodes

| Méthode                                        | Description                                                                                                                |
| ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `static loadOnce(string $filename = ''): self` | Charge et initialise ONNX Runtime. À partir du deuxième appel, ignore les arguments et retourne l'instance existante.      |
| `static get(): ?self`                          | Retourne l'instance existante. Retourne `null` si elle n'est pas encore initialisée.                                       |
| `supportedDevices(): string`                   | Retourne les informations des périphériques disponibles sous forme de chaîne JSON.                                         |
| `static libVersionedFilename(): string`        | Retourne le nom de fichier versionné de la bibliothèque ONNX Runtime (par exemple `libvoicevox_onnxruntime.1.17.3.dylib`). |
| `static libUnversionedFilename(): string`      | Retourne le nom de fichier non versionné de la bibliothèque ONNX Runtime.                                                  |

### Constantes

| Constante     | Description                                             |
| ------------- | ------------------------------------------------------- |
| `LIB_NAME`    | Nom de base de la bibliothèque (`voicevox_onnxruntime`) |
| `LIB_VERSION` | Version d'ONNX Runtime recommandée                      |

***

## `OpenJtalk`

Analyseur de texte utilisant OpenJTalk.

### Méthodes

| Méthode                                 | Description                                                                      |
| --------------------------------------- | -------------------------------------------------------------------------------- |
| `__construct(string $openJtalkDictDir)` | Initialise avec le chemin du dossier du dictionnaire OpenJTalk.                  |
| `analyze(string $text): string`         | Analyse un texte japonais et retourne le JSON du tableau d'accent phrases.       |
| `useUserDict(UserDict $userDict): void` | Applique un dictionnaire utilisateur. À rappeler si le dictionnaire est modifié. |

***

## `VoiceModelFile`

Fichier de modèle vocal (fichier `.vvm`).

### Méthodes

| Méthode                           | Description                                                         |
| --------------------------------- | ------------------------------------------------------------------- |
| `static open(string $path): self` | Ouvre un fichier `.vvm`.                                            |
| `id(): string`                    | Retourne l'ID du modèle vocal sous forme de chaîne hex (16 octets). |
| `createMetasJson(): string`       | Retourne les métadonnées des locuteurs sous forme de chaîne JSON.   |
| `close(): void`                   | Ferme le fichier et libère les ressources.                          |

***

## `Synthesizer`

Classe principale de synthèse vocale.

### Méthodes

| Méthode                                                                                                                          | Description                                                                                                                      |
| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `__construct(Onnxruntime $onnxruntime, OpenJtalk $openJtalk, AccelerationMode $accelerationMode = Auto, int $cpuNumThreads = 0)` | Initialise le synthétiseur.                                                                                                      |
| `onnxruntime(): Onnxruntime`                                                                                                     | Retourne l'instance `Onnxruntime` détenue par ce synthétiseur.                                                                   |
| `isGpuMode(): bool`                                                                                                              | Retourne si le mode GPU est actif.                                                                                               |
| `metas(): string`                                                                                                                | Retourne les métadonnées des locuteurs chargés sous forme de chaîne JSON.                                                        |
| `loadVoiceModel(VoiceModelFile $model): void`                                                                                    | Charge un modèle vocal.                                                                                                          |
| `unloadVoiceModel(string $voiceModelId): void`                                                                                   | Décharge le modèle vocal spécifié par son ID hex.                                                                                |
| `isLoadedVoiceModel(string $voiceModelId): bool`                                                                                 | Vérifie si un modèle vocal est chargé.                                                                                           |
| `createAudioQuery(string $text, int $styleId): string`                                                                           | Génère un JSON AudioQuery à partir d'un texte japonais.                                                                          |
| `createAudioQueryFromKana(string $kana, int $styleId): string`                                                                   | Génère un JSON AudioQuery à partir d'une notation kana de style AquesTalk.                                                       |
| `createAccentPhrases(string $text, int $styleId): string`                                                                        | Génère le JSON d'un tableau d'accent phrases à partir d'un texte japonais.                                                       |
| `createAccentPhrasesFromKana(string $kana, int $styleId): string`                                                                | Génère le JSON d'un tableau d'accent phrases à partir d'une notation kana.                                                       |
| `replaceMoraData(string $accentPhrasesJson, int $styleId): string`                                                               | Retourne de nouvelles accent phrases avec la hauteur et la durée des mores mises à jour.                                         |
| `replacePhonemeLength(string $accentPhrasesJson, int $styleId): string`                                                          | Retourne de nouvelles accent phrases avec les durées de phonèmes mises à jour.                                                   |
| `replaceMoraPitch(string $accentPhrasesJson, int $styleId): string`                                                              | Retourne de nouvelles accent phrases avec la hauteur des mores mise à jour.                                                      |
| `synthesis(string $audioQueryJson, int $styleId, bool $enableInterrogativeUpspeak = true): string`                               | Synthétise la voix à partir d'un JSON AudioQuery. Retourne un binaire WAV.                                                       |
| `tts(string $text, int $styleId, bool $enableInterrogativeUpspeak = true): string`                                               | Synthétise la voix à partir d'un texte japonais en une seule étape. Retourne un binaire WAV.                                     |
| `ttsFromKana(string $kana, int $styleId, bool $enableInterrogativeUpspeak = true): string`                                       | Synthétise la voix à partir d'une notation kana. Retourne un binaire WAV.                                                        |
| `createSingFrameAudioQuery(string $scoreJson, int $styleId): string`                                                             | Génère un JSON de query de synthèse chantée à partir d'un JSON de partition.                                                     |
| `frameSynthesis(string $frameAudioQueryJson, int $styleId): string`                                                              | Synthétise la voix chantée à partir d'une frame audio query. Retourne un binaire WAV.                                            |
| `createSingFrameF0(string $scoreJson, string $frameAudioQueryJson, int $styleId): string`                                        | Retourne les F0 (fréquence fondamentale) par frame à partir de la partition et de la query, sous forme de tableau JSON de float. |
| `createSingFrameVolume(string $scoreJson, string $frameAudioQueryJson, int $styleId): string`                                    | Retourne le volume par frame à partir de la partition et de la query, sous forme de tableau JSON de float.                       |

***

## `VoicevoxCore`

Fonctions utilitaires globales de VOICEVOX Core.

### Méthodes

| Méthode                                                                         | Description                                                                                                            |
| ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `static getVersion(): string`                                                   | Retourne la version de VOICEVOX Core au format SemVer.                                                                 |
| `static audioQueryCreateFromAccentPhrases(string $accentPhrasesJson): string`   | Génère un JSON AudioQuery à partir d'un JSON de tableau d'accent phrases.                                              |
| `static audioQueryValidate(string $audioQueryJson): void`                       | Valide un JSON `AudioQuery`. Lève une `VoicevoxException` si invalide.                                                 |
| `static accentPhraseValidate(string $accentPhraseJson): void`                   | Valide un JSON `AccentPhrase`. Lève une `VoicevoxException` si invalide.                                               |
| `static moraValidate(string $moraJson): void`                                   | Valide un JSON `Mora`. Lève une `VoicevoxException` si invalide.                                                       |
| `static scoreValidate(string $scoreJson): void`                                 | Valide un JSON `Score`. Lève une `VoicevoxException` si invalide.                                                      |
| `static noteValidate(string $noteJson): void`                                   | Valide un JSON `Note`. Lève une `VoicevoxException` si invalide.                                                       |
| `static frameAudioQueryValidate(string $frameAudioQueryJson): void`             | Valide un JSON `FrameAudioQuery`. Lève une `VoicevoxException` si invalide.                                            |
| `static framePhonemeValidate(string $framePhonemeJson): void`                   | Valide un JSON `FramePhoneme`. Lève une `VoicevoxException` si invalide.                                               |
| `static ensureCompatible(string $scoreJson, string $frameAudioQueryJson): void` | Vérifie que la combinaison partition + query de synthèse chantée est valide. Lève une `VoicevoxException` si invalide. |

***

## `UserDict`

Dictionnaire utilisateur pour enregistrer la prononciation de mots personnalisés.

### Méthodes

| Méthode                                                                                                                                                   | Description                                                     |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- |
| `__construct()`                                                                                                                                           | Crée un dictionnaire utilisateur vide.                          |
| `load(string $path): void`                                                                                                                                | Charge un dictionnaire utilisateur depuis un fichier.           |
| `save(string $path): void`                                                                                                                                | Enregistre le dictionnaire utilisateur dans un fichier.         |
| `addWord(string $surface, string $pronunciation, int $accentType, UserDictWordType $wordType = CommonNoun, int $priority = 5): string`                    | Ajoute un mot. Retourne l'UUID du mot sous forme de chaîne hex. |
| `updateWord(string $wordUuid, string $surface, string $pronunciation, int $accentType, UserDictWordType $wordType = CommonNoun, int $priority = 5): void` | Met à jour un mot existant identifié par son UUID.              |
| `removeWord(string $wordUuid): void`                                                                                                                      | Supprime le mot identifié par son UUID.                         |
| `importDict(UserDict $other): void`                                                                                                                       | Importe les mots depuis un autre `UserDict`.                    |
| `toJson(): string`                                                                                                                                        | Retourne tous les mots sous forme de chaîne JSON.               |

***

## Enum : `AccelerationMode`

Mode d'accélération matérielle du synthétiseur.

| Case   | Valeur | Description                                              |
| ------ | ------ | -------------------------------------------------------- |
| `Auto` | `0`    | Sélectionne automatiquement le meilleur mode disponible. |
| `Cpu`  | `1`    | Force le mode CPU.                                       |
| `Gpu`  | `2`    | Force le mode GPU.                                       |

***

## Enum : `UserDictWordType`

Nature grammaticale d'une entrée du dictionnaire utilisateur.

| Case         | Valeur | Description |
| ------------ | ------ | ----------- |
| `ProperNoun` | `0`    | Nom propre  |
| `CommonNoun` | `1`    | Nom commun  |
| `Verb`       | `2`    | Verbe       |
| `Adjective`  | `3`    | Adjectif    |
| `Suffix`     | `4`    | Suffixe     |

***

## `VoicevoxException`

Exception levée lorsque l'appel de l'API C de VOICEVOX Core retourne un code d'erreur. Le message d'exception contient la description d'erreur fournie par la bibliothèque.


## Related topics

- [VOICEVOX Core for PHP](/fr/packages/voicevox-core-php/index.md)
- [Utilisation - VOICEVOX Core for PHP](/fr/packages/voicevox-core-php/usage.md)
- [Référence de configuration - VOICEVOX for Laravel](/fr/packages/laravel-voicevox/configuration.md)
- [Core Versions](/fr/packages/laravel-voicevox/engine-api/other/core-versions.md)
- [VOICEVOX for Laravel](/fr/packages/laravel-voicevox/index.md)
