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

# Empezar - VOICEVOX for Laravel

> Resume los conceptos básicos de VOICEVOX for Laravel, la comparación de los 3 modos, el inicio rápido (modo cliente) y las funciones principales.

VOICEVOX for Laravel es un paquete para usar las funciones de síntesis de voz de VOICEVOX desde Laravel. Puedes generar audio en japonés a partir de texto.

<Tip>
  Lo más rápido para empezar es el modo cliente. Si tu entorno admite FFI, puedes ir migrando después al modo nativo o al modo Engine API por fases.
</Tip>

## Los 3 modos de uso

| Modo            | Forma de ejecución                             | FFI          | Uso recomendado                                                  | Guía                                                                                                                |
| --------------- | ---------------------------------------------- | ------------ | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| Modo cliente    | Conexión HTTP al motor oficial de VOICEVOX     | No requerido | Para empezar a probar, entornos Docker, entornos sin FFI         | [Client Talk](/es/packages/laravel-voicevox/client-talk) / [Client Song](/es/packages/laravel-voicevox/client-song) |
| Modo nativo     | Llama directamente a VOICEVOX CORE con PHP FFI | Requerido    | Aceleración, ejecución offline, integración con herramientas CLI | [Native Talk](/es/packages/laravel-voicevox/native-talk) / [Native Song](/es/packages/laravel-voicevox/native-song) |
| Modo Engine API | Laravel expone una API compatible con VOICEVOX | Requerido    | Publicar un servidor API, integración con varios clientes        | [Engine Talk](/es/packages/laravel-voicevox/engine-talk) / [Engine Song](/es/packages/laravel-voicevox/engine-song) |

## Inicio rápido

Pasos del modo cliente.

<Steps>
  <Step title="Instala el paquete">
    ```shell theme={null}
    composer require revolution/laravel-voicevox
    ```

    Para los detalles, consulta [Instalación y configuración](/es/packages/laravel-voicevox/installation).
  </Step>

  <Step title="Arranca el motor oficial">
    ```shell theme={null}
    docker pull voicevox/voicevox_engine:cpu-latest
    docker run --rm -p '127.0.0.1:50021:50021' voicevox/voicevox_engine:cpu-latest
    ```
  </Step>

  <Step title="Prueba la síntesis de voz">
    ```php theme={null}
    use Revolution\Voicevox\Voicevox;

    $response = Voicevox::talk('こんにちは、Laravel です。', id: 1)->generate(id: 1);
    $response->storeAs('output.wav');
    ```
  </Step>
</Steps>

## Funciones principales

### Síntesis de voz (Talk)

```php theme={null}
use Revolution\Voicevox\Client\TalkAudioQuery;
use Revolution\Voicevox\Voicevox;

$response = Voicevox::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);
```

### Síntesis de voz cantada (Song)

```php theme={null}
use Revolution\Voicevox\Song\Note;
use Revolution\Voicevox\Song\Score;
use Revolution\Voicevox\Voicevox;

$score = Score::make([
    Note::make(length: 15),
    Note::make(length: Note::len(ticks: 480, bpm: 120), lyric: 'ド', key: 60),
    Note::make(length: Note::len(480, 120), lyric: 'レ', key: 62),
    Note::make(length: Note::len(960, 120), lyric: 'ミ', key: 64),
    Note::make(length: 2),
]);

$response = Voicevox::song($score)->generate(id: 3001);
```

### Diccionario de usuario y presets

En modo cliente, usa la facade `Voicevox` para manipular el diccionario de usuario y los presets del motor oficial.

```php theme={null}
use Revolution\Voicevox\Voicevox;

$uuid = Voicevox::addWord(
    surface: 'Laravel',
    pronunciation: 'ララベル',
    accentType: 3,
);

$presetId = Voicevox::addPreset([
    'id' => 0,
    'name' => 'ゆっくり丁寧',
    'speaker_uuid' => '7ffcb7ce-00ec-4bdc-82cd-45a8889e43ff',
    'style_id' => 1,
    'speedScale' => 0.8,
    'pitchScale' => 0.0,
    'intonationScale' => 1.2,
    'volumeScale' => 1.0,
    'prePhonemeLength' => 0.1,
    'postPhonemeLength' => 0.1,
]);
```

### Integración con Laravel AI SDK

```php theme={null}
use Laravel\Ai\Audio;

$audio = Audio::of('こんにちは、Laravel です。')
    ->voice('ずんだもん')
    ->generate();

$audio->storeAs('output.wav');
```

## Siguientes pasos

* [Instalación y configuración](/es/packages/laravel-voicevox/installation)
* [Referencia de configuración](/es/packages/laravel-voicevox/configuration)
* [Client Talk](/es/packages/laravel-voicevox/client-talk)
* [Client Song](/es/packages/laravel-voicevox/client-song)
* [Modo cliente - Diccionario de usuario](/es/packages/laravel-voicevox/client-user-dict)
* [Modo cliente - Presets](/es/packages/laravel-voicevox/client-presets)
* [Native Talk](/es/packages/laravel-voicevox/native-talk)
* [Engine Talk](/es/packages/laravel-voicevox/engine-talk)
* [Modo nativo - Diccionario de usuario](/es/packages/laravel-voicevox/native-user-dict)
* [Modo nativo - Presets](/es/packages/laravel-voicevox/native-presets)
* [Integración con AI SDK](/es/packages/laravel-voicevox/ai-sdk)


## Related topics

- [Instalación y configuración - VOICEVOX for Laravel](/es/packages/laravel-voicevox/installation.md)
- [Referencia de configuración - VOICEVOX for Laravel](/es/packages/laravel-voicevox/configuration.md)
- [Conocimientos necesarios antes de empezar con Laravel](/es/true-tutorial.md)
- [VOICEVOX for Laravel](/es/packages/laravel-voicevox/index.md)
- [VoicevoxResponse - VOICEVOX for Laravel](/es/packages/laravel-voicevox/response.md)
