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

# Modo cliente: Talk (síntesis de voz desde texto) - VOICEVOX for Laravel

> Explica los pasos para sintetizar voz desde texto en modo cliente de VOICEVOX for Laravel, conectándose al motor oficial.

## Qué es el modo cliente

En modo cliente se generan audios enviando peticiones HTTP al motor oficial de VOICEVOX.

No se necesita FFI, así que es el modo más fácil como puerta de entrada para probar.

<Info>
  Si aún no has hecho la instalación, revisa antes [Instalación y configuración](/es/packages/laravel-voicevox/installation).
</Info>

## Preparación

<Steps>
  <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="Si hace falta, configura la URL de conexión">
    ```dotenv theme={null}
    VOICEVOX_URL=http://127.0.0.1:50021
    ```
  </Step>
</Steps>

Si tu entorno dispone de GPU, también puedes usar la imagen GPU.

## Uso básico

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

$response = Voicevox::talk('Laravelが好きなのだ', id: 1)
    ->generate(id: 1);

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

## Indicar el style ID

Puedes pasar el style ID tanto a `talk()` como a `generate()`.

* `talk(id:)`: estilo con el que se crea el `audio_query`
* `generate(id:)`: estilo con el que se sintetiza el audio

Normalmente se indica el mismo valor.

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

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

Puedes obtener la lista de speakers disponibles con `speakers()`.

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

$speakers = Voicevox::speakers();
```

## Ajustar el audio query con `tap()`

En este paquete puedes recibir el `TalkAudioQuery` antes de `generate()`, así que encaja bien inyectar efectos secundarios con `tap()`.

```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);
```

<Tip>
  Con `tap()` solo ajustas la query; el valor de retorno se pasa tal cual al siguiente `generate()`. El planteamiento se detalla en [Helper tap() y trait Tappable](/es/advanced/tap).
</Tip>

## Conversión automática de inglés a katakana

En modo cliente, como `enable_katakana_english` está activo, puedes corregir automáticamente el texto en inglés hacia una forma más cercana al katakana.

```php theme={null}
$response = Voicevox::talk('I love Laravel', id: 1)
    ->generate(id: 1);
```

Si quieres desactivarlo, pasa `false` como tercer argumento.

```php theme={null}
$response = Voicevox::talk('I love Laravel', id: 1, enableKatakanaEnglish: false)
    ->generate(id: 1);
```

## Guardar la respuesta

```php theme={null}
$response = Voicevox::talk('テスト', id: 1)->generate(id: 1);

$wav = $response->content();
$path = $response->storeAs('client', 'talk.wav');
$path = $response->storeAs('client', 'talk.wav', disk: 's3');
```

## Siguientes páginas

<Columns cols={2}>
  <Card title="Cliente Song" href="/es/packages/laravel-voicevox/client-song" icon="music">
    Construye `Score` y `Note` para la síntesis de voz cantada.
  </Card>

  <Card title="VOICEVOX Core for PHP" href="/es/packages/voicevox-core-php/usage" icon="library">
    Cuando pases a usar FFI, revisa también el uso de la biblioteca central.
  </Card>
</Columns>


## Related topics

- [Modo nativo: Talk (síntesis de voz desde texto) - VOICEVOX for Laravel](/es/packages/laravel-voicevox/native-talk.md)
- [Modo Engine API: Talk (síntesis de voz desde texto) - VOICEVOX for Laravel](/es/packages/laravel-voicevox/engine-talk.md)
- [Modo Engine API: Song (síntesis de voz cantada) - VOICEVOX for Laravel](/es/packages/laravel-voicevox/engine-song.md)
- [Modo cliente: Song (síntesis de voz cantada) - VOICEVOX for Laravel](/es/packages/laravel-voicevox/client-song.md)
- [Modo nativo: Song (síntesis de voz cantada) - VOICEVOX for Laravel](/es/packages/laravel-voicevox/native-song.md)
