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

# Riferimento API - VOICEVOX Core for PHP

> Riferimento di tutte le classi, i metodi e gli enum di VOICEVOX Core for PHP.

## `Onnxruntime`

Loader di ONNX Runtime. Singleton a livello di processo: esiste una sola istanza per processo.

### Metodi

| Metodo                                         | Descrizione                                                                                                            |
| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `static loadOnce(string $filename = ''): self` | Carica e inizializza ONNX Runtime. Dalla seconda chiamata in poi ignora l'argomento e restituisce l'istanza esistente. |
| `static get(): ?self`                          | Restituisce l'istanza esistente. Se non è ancora inizializzata, restituisce `null`.                                    |
| `supportedDevices(): string`                   | Restituisce le informazioni sui device disponibili in formato stringa JSON.                                            |
| `static libVersionedFilename(): string`        | Restituisce il nome file con versione della libreria ONNX Runtime (es. `libvoicevox_onnxruntime.1.17.3.dylib`).        |
| `static libUnversionedFilename(): string`      | Restituisce il nome file senza versione della libreria ONNX Runtime.                                                   |

### Costanti

| Costante      | Descrizione                                       |
| ------------- | ------------------------------------------------- |
| `LIB_NAME`    | Nome base della libreria (`voicevox_onnxruntime`) |
| `LIB_VERSION` | Versione consigliata di ONNX Runtime              |

***

## `OpenJtalk`

Analizzatore di testo basato su OpenJTalk.

### Metodi

| Metodo                                  | Descrizione                                                                               |
| --------------------------------------- | ----------------------------------------------------------------------------------------- |
| `__construct(string $openJtalkDictDir)` | Inizializza con il percorso della directory del dizionario OpenJTalk.                     |
| `analyze(string $text): string`         | Analizza il testo giapponese e restituisce il JSON dell'array di frasi accentate.         |
| `useUserDict(UserDict $userDict): void` | Applica un dizionario utente. Se il dizionario cambia, richiama nuovamente questo metodo. |

***

## `VoiceModelFile`

File del modello vocale (file `.vvm`).

### Metodi

| Metodo                            | Descrizione                                                   |
| --------------------------------- | ------------------------------------------------------------- |
| `static open(string $path): self` | Apre un file `.vvm`.                                          |
| `id(): string`                    | Restituisce l'ID del modello vocale in stringa hex (16 byte). |
| `createMetasJson(): string`       | Restituisce i metadati degli speaker in formato stringa JSON. |
| `close(): void`                   | Chiude il file e rilascia le risorse.                         |

***

## `Synthesizer`

Classe principale per la sintesi da testo.

### Metodi

| Metodo                                                                                                                           | Descrizione                                                                                                                   |
| -------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `__construct(Onnxruntime $onnxruntime, OpenJtalk $openJtalk, AccelerationMode $accelerationMode = Auto, int $cpuNumThreads = 0)` | Inizializza il sintetizzatore.                                                                                                |
| `onnxruntime(): Onnxruntime`                                                                                                     | Restituisce l'istanza di `Onnxruntime` contenuta in questo sintetizzatore.                                                    |
| `isGpuMode(): bool`                                                                                                              | Indica se la modalità GPU è abilitata.                                                                                        |
| `metas(): string`                                                                                                                | Restituisce i metadati degli speaker caricati in formato stringa JSON.                                                        |
| `loadVoiceModel(VoiceModelFile $model): void`                                                                                    | Carica un modello vocale.                                                                                                     |
| `unloadVoiceModel(string $voiceModelId): void`                                                                                   | Scarica il modello vocale specificato tramite ID hex.                                                                         |
| `isLoadedVoiceModel(string $voiceModelId): bool`                                                                                 | Verifica se il modello vocale è caricato.                                                                                     |
| `createAudioQuery(string $text, int $styleId): string`                                                                           | Genera l'AudioQuery JSON da testo giapponese.                                                                                 |
| `createAudioQueryFromKana(string $kana, int $styleId): string`                                                                   | Genera l'AudioQuery JSON da notazione kana in stile AquesTalk.                                                                |
| `createAccentPhrases(string $text, int $styleId): string`                                                                        | Genera il JSON dell'array di frasi accentate da testo giapponese.                                                             |
| `createAccentPhrasesFromKana(string $kana, int $styleId): string`                                                                | Genera il JSON dell'array di frasi accentate dalla notazione kana.                                                            |
| `replaceMoraData(string $accentPhrasesJson, int $styleId): string`                                                               | Restituisce nuove frasi accentate con pitch e durata dei fonemi delle mora aggiornati.                                        |
| `replacePhonemeLength(string $accentPhrasesJson, int $styleId): string`                                                          | Restituisce nuove frasi accentate con durata dei fonemi aggiornata.                                                           |
| `replaceMoraPitch(string $accentPhrasesJson, int $styleId): string`                                                              | Restituisce nuove frasi accentate con pitch delle mora aggiornato.                                                            |
| `synthesis(string $audioQueryJson, int $styleId, bool $enableInterrogativeUpspeak = true): string`                               | Sintetizza audio da AudioQuery JSON. Restituisce un binario WAV.                                                              |
| `tts(string $text, int $styleId, bool $enableInterrogativeUpspeak = true): string`                                               | Sintetizza audio da testo giapponese in un solo passo. Restituisce un binario WAV.                                            |
| `ttsFromKana(string $kana, int $styleId, bool $enableInterrogativeUpspeak = true): string`                                       | Sintetizza audio dalla notazione kana. Restituisce un binario WAV.                                                            |
| `createSingFrameAudioQuery(string $scoreJson, int $styleId): string`                                                             | Genera il JSON della query di sintesi canora da un JSON di partitura.                                                         |
| `frameSynthesis(string $frameAudioQueryJson, int $styleId): string`                                                              | Sintetizza audio canoro dalla frame audio query. Restituisce un binario WAV.                                                  |
| `createSingFrameF0(string $scoreJson, string $frameAudioQueryJson, int $styleId): string`                                        | Restituisce l'F0 (frequenza fondamentale) per frame come array JSON di float, a partire dalla partitura e dalla query canora. |
| `createSingFrameVolume(string $scoreJson, string $frameAudioQueryJson, int $styleId): string`                                    | Restituisce il volume per frame come array JSON di float, a partire dalla partitura e dalla query canora.                     |

***

## `VoicevoxCore`

Funzioni utility globali di VOICEVOX Core.

### Metodi

| Metodo                                                                          | Descrizione                                                                                                                   |
| ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `static getVersion(): string`                                                   | Restituisce la versione di VOICEVOX Core come stringa SemVer.                                                                 |
| `static audioQueryCreateFromAccentPhrases(string $accentPhrasesJson): string`   | Genera l'AudioQuery JSON dal JSON di array di frasi accentate.                                                                |
| `static audioQueryValidate(string $audioQueryJson): void`                       | Valida il JSON di `AudioQuery`. In caso di errore lancia `VoicevoxException`.                                                 |
| `static accentPhraseValidate(string $accentPhraseJson): void`                   | Valida il JSON di `AccentPhrase`. In caso di errore lancia `VoicevoxException`.                                               |
| `static moraValidate(string $moraJson): void`                                   | Valida il JSON di `Mora`. In caso di errore lancia `VoicevoxException`.                                                       |
| `static scoreValidate(string $scoreJson): void`                                 | Valida il JSON di `Score`. In caso di errore lancia `VoicevoxException`.                                                      |
| `static noteValidate(string $noteJson): void`                                   | Valida il JSON di `Note`. In caso di errore lancia `VoicevoxException`.                                                       |
| `static frameAudioQueryValidate(string $frameAudioQueryJson): void`             | Valida il JSON di `FrameAudioQuery`. In caso di errore lancia `VoicevoxException`.                                            |
| `static framePhonemeValidate(string $framePhonemeJson): void`                   | Valida il JSON di `FramePhoneme`. In caso di errore lancia `VoicevoxException`.                                               |
| `static ensureCompatible(string $scoreJson, string $frameAudioQueryJson): void` | Verifica che la combinazione di partitura e query di sintesi canora sia valida. In caso di errore lancia `VoicevoxException`. |

***

## `UserDict`

Dizionario utente per registrare la pronuncia di parole personalizzate.

### Metodi

| Metodo                                                                                                                                                    | Descrizione                                                            |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| `__construct()`                                                                                                                                           | Crea un dizionario utente vuoto.                                       |
| `load(string $path): void`                                                                                                                                | Carica il dizionario utente da un file.                                |
| `save(string $path): void`                                                                                                                                | Salva il dizionario utente in un file.                                 |
| `addWord(string $surface, string $pronunciation, int $accentType, UserDictWordType $wordType = CommonNoun, int $priority = 5): string`                    | Aggiunge una parola. Restituisce l'UUID della parola come stringa hex. |
| `updateWord(string $wordUuid, string $surface, string $pronunciation, int $accentType, UserDictWordType $wordType = CommonNoun, int $priority = 5): void` | Aggiorna una parola esistente identificata da UUID.                    |
| `removeWord(string $wordUuid): void`                                                                                                                      | Rimuove la parola identificata da UUID.                                |
| `importDict(UserDict $other): void`                                                                                                                       | Importa parole da un altro `UserDict`.                                 |
| `toJson(): string`                                                                                                                                        | Restituisce tutte le parole in formato stringa JSON.                   |

***

## Enum: `AccelerationMode`

Modalità di accelerazione hardware del sintetizzatore.

| Case   | Valore | Descrizione                                               |
| ------ | ------ | --------------------------------------------------------- |
| `Auto` | `0`    | Sceglie automaticamente la modalità migliore disponibile. |
| `Cpu`  | `1`    | Forza la modalità CPU.                                    |
| `Gpu`  | `2`    | Forza la modalità GPU.                                    |

***

## Enum: `UserDictWordType`

Categoria grammaticale delle voci del dizionario utente.

| Case         | Valore | Descrizione  |
| ------------ | ------ | ------------ |
| `ProperNoun` | `0`    | Nome proprio |
| `CommonNoun` | `1`    | Nome comune  |
| `Verb`       | `2`    | Verbo        |
| `Adjective`  | `3`    | Aggettivo    |
| `Suffix`     | `4`    | Suffisso     |

***

## `VoicevoxException`

Viene lanciata quando una chiamata all'API C di VOICEVOX Core restituisce un codice di errore. Il messaggio dell'eccezione contiene la descrizione dell'errore proveniente dalla libreria.


## Related topics

- [VOICEVOX Core for PHP](/it/packages/voicevox-core-php/index.md)
- [Utilizzo - VOICEVOX Core for PHP](/it/packages/voicevox-core-php/usage.md)
- [Riferimento della configurazione - VOICEVOX for Laravel](/it/packages/laravel-voicevox/configuration.md)
- [Core Versions](/it/packages/laravel-voicevox/engine-api/other/core-versions.md)
- [VOICEVOX for Laravel](/it/packages/laravel-voicevox/index.md)
