Aprendiendo IA

Gemini 3.8 TTS: describe una voz y la API te la fabrica

El 23 de septiembre de 2026 Google lanzó Gemini 3.8 Flash TTS y Gemini 3.8 Flash-Lite TTS, sus nuevos modelos de síntesis de voz. Con ellos basta describir la voz que quieres en una o dos frases: la API la crea, la guarda y la pone a hablar. Este curso breve lo enseña paso a paso.

Caricatura de un boticario calvo con gafas redondas que echa en un matraz de cristal una pluma, unos granos de grava y una cucharada de miel mientras se lleva la mano a la oreja; del matraz sale una voz como una columna de humo rojo y azul que acaba en onda sonora, junto a un mortero con el destello de Gemini.
📷 Imagen generada con IA

En resumen

  • Google publicó el 23 de septiembre de 2026 dos modelos de síntesis de voz: `gemini-3.8-flash-tts`, el de más calidad, y `gemini-3.8-flash-lite-tts`, el barato para grandes volúmenes.
  • El diseño de voz crea una voz nueva a partir de una descripción escrita y la guarda en tu proyecto con un identificador que empieza por `voice_`.
  • Hasta el 31 de diciembre de 2026, una hora de audio cuesta 0,81 $ con Flash TTS y 0,54 $ con Flash-Lite TTS, según cálculo nuestro; desde 2027 los precios se duplican.
  • Todo el audio sale con SynthID, una marca de agua inaudible, y la política de Google prohíbe suplantar a una persona para engañar.

Una voz que no existía, hecha con palabras

Google presentó el 23 de septiembre de 2026 dos modelos de voz. Gemini 3.8 Flash TTS está pensado, según la empresa, para la dirección creativa y el diseño de personajes; Gemini 3.8 Flash-Lite TTS, para doblaje, contenidos de audio y agentes de voz a gran escala y con poco coste.

Los dos comparten el mismo esquema de API: se pasa de uno a otro cambiando solo el campo `model`. Y los dos permiten lo más llamativo del lanzamiento, inventar una voz describiéndola con palabras. En este curso la creas, la escuchas, la haces hablar en español, la diriges y guardas el resultado.

Paso 0: la clave y el paquete de Python

Crea una clave de la API de Gemini en Google AI Studio, la web de Google para probar sus modelos, y guárdala en la variable de entorno `GEMINI_API_KEY`: el cliente oficial la lee de ahí, sin pegarla en ningún fichero. No la enseñes en capturas ni la subas a un repositorio.

Después instala el paquete oficial de Python, `google-genai`, en la versión 2.25.0 o posterior, la primera que incluye las funciones de voz: `pip install -U google-genai`. Si prefieres no programar, el estudio de diseño de voz de AI Studio hace lo mismo con formularios y te da el identificador `voice_...` para copiarlo.

Paso 1: describe la voz en una o dos frases

La voz se crea con `client.voices.create`, con `store=True` para que quede guardada y un objeto `voice` con estos campos: `model` (`gemini-3.8-flash-tts`), `type` con el valor `prompted`, un nombre en `display_name`, `gender`, `language_code` y, dentro de `prompted`, el campo `input` con la descripción.

La documentación pide describir los rasgos que no cambian: edad, género, timbre, textura y acento regional. Una o dos frases concretas funcionan mejor que un párrafo largo o contradictorio. Su ejemplo es un astrónomo británico de sesenta y muchos años, cálido y reflexivo, con `language_code` en `en-GB`.

Para una voz en español, cambia la descripción a español y `language_code` a `es-ES`. Esa adaptación es nuestra: Google no publica ningún ejemplo de diseño de voz en español, así que no hay garantía sobre el resultado. Por ejemplo: «Una locutora de radio de unos cuarenta años, voz grave y cálida, habla con calma».

Paso 2: escucha la muestra antes de seguir

La respuesta de `voices.create` trae `id`, el identificador permanente de tu voz, que empieza por `voice_` y es lo que usarás para hacerla hablar, y `sample_audio`, una muestra en WAV codificada en base64.

Decodifica `sample_audio.data` con el módulo `base64` y guárdalo como `voice_preview.wav`. Si la voz no es la que imaginabas, no la arregles luego con instrucciones de estilo: cambia la descripción y crea otra. La muestra solo llega al crear la voz o al consultarla con `voices.get`.

Paso 3: ponla a hablar en español

Para sintetizar se usa `client.interactions.create`. Le pasas `model`, un `input` de tipo `user_input` con tu texto dentro de `content`, `response_format` con `type` igual a `audio` y, en `generation_config`, un `speech_config` que es una lista con tu voz: `[{"voice": created_voice.id}]`.

Haz la primera prueba sin indicación de estilo: según la documentación, la mayoría de las peticiones no la necesitan. El idioma se detecta solo, y el español, el catalán, el gallego y el euskera están entre los admitidos.

El audio llega en base64 en `interaction.output_audio.data`. Decodifícalo y guárdalo directamente como `.wav`: a diferencia de los modelos anteriores, estos ya entregan un WAV completo. Para otros formatos, `response_format` admite un `mime_type`, como `audio/l16` para PCM sin cabecera.

Paso 4: dirige la interpretación sin que se lea

En Gemini 3.8 TTS el campo `text` es una transcripción literal: lo que escribas ahí se dice. Para dirigir, se añade al contenido una anotación de tipo `speech_metadata` con un campo `style`, como `reflective and awe-inspired` o `speaking slowly`.

Ese estilo vale para el turno entero y conviene que sea breve. La edad, el género o el acento no van ahí: son de la voz. Y, según la documentación, cuanto más texto sobra, más tiende la voz a desviarse, y los bloques largos de notas de dirección son la causa más frecuente. Si la emoción cambia a mitad de texto, pártelo en dos turnos.

Paso 5: suspiros y pausas en el punto exacto

Para lo puntual se usan etiquetas: `<short pause>` y `<long pause>` para el ritmo, y gestos como `<sigh>`, `<laugh>` o `<whispers>`. En un texto en español se quedan en inglés, que es como mejor funcionan según la guía: «Espera... <short pause> ¿has oído eso? <sigh>».

Una palabra en MAYÚSCULAS recibe énfasis. Evita las etiquetas de efectos de sonido, como aplausos o golpes. Al terminar, comprueba que ninguna etiqueta se ha leído en voz alta.

Paso 6: un diálogo a dos voces

Con voces prediseñadas, el diálogo sale en una sola llamada: `speech_config` pasa a llevar `mode` con el valor `conversational` y una lista `speakers` que asocia cada personaje a una voz, como `{"speaker": "Jane", "voice": "Kore"}`. Cada turno lleva su `speech_metadata` con el `speaker` que habla. El máximo es de dos hablantes.

Con voces diseñadas, la documentación indica pedir cada turno por separado y unir después el audio PCM de 24 kHz. Para buscar voces ya hechas, `client.voices.list` filtra por `language_code`, `accent`, `gender` o `pitch`; la documentación habla de cientos de voces adicionales y el anuncio de Google, de más de 2.000.

Paso 7: calcula lo que cuesta y haz limpieza

Los dos modelos, lado a lado
Característica Gemini 3.8 Flash TTS Gemini 3.8 Flash-Lite TTS
Identificador de API gemini-3.8-flash-tts gemini-3.8-flash-lite-tts
Para qué está pensado Máxima fidelidad, interpretación con matices y acentos regionales Gran volumen con bajo coste
Idiomas 130 101
Diseño y réplica de voz Sí Sí
Hablantes por petición 2 (voces prediseñadas) 2 (voces prediseñadas)
Límite de entrada / salida (tokens) 8.192 / 16.384 8.192 / 16.384
Entrada de texto, por millón de tokens 0,50 $ 0,50 $
Salida de audio, por millón de tokens 9,00 $ 6,00 $
Salida de audio en Batch o Flex, por millón 4,50 $ 3,00 $
10 segundos de audio 0,00225 $ 0,0015 $
Un minuto de audio (cálculo nuestro) 0,0135 $ 0,009 $
Una hora de audio (cálculo nuestro) 0,81 $ 0,54 $
Nivel gratuito Sí Sí
Precios del nivel de pago Standard publicados por Google en la documentación de la API de Gemini (actualizada el 24-09-2026), vigentes hasta el 31 de diciembre de 2026; desde el 1 de enero de 2027 se duplican. El audio se cuenta a 25 tokens por segundo; las filas de minuto y hora son un cálculo nuestro a partir de esa cifra.

Los dos modelos tienen nivel gratuito, pero en él lo que envías puede usarse para mejorar los productos de Google; en el de pago, no. Google no publica ningún precio por crear o guardar una voz diseñada.

Para poner orden, `client.voices.list(type_=["prompted"])` enseña tus voces diseñadas y `client.voices.delete` borra las que sobren. El tope es de 200 voces por proyecto, y las guardadas caducan al año.

Copiar una voz real exige su permiso

Este curso no replica voces por un motivo práctico: según el anuncio de Google, la réplica a través de AI Studio no está disponible en el Espacio Económico Europeo, que incluye España, y no consta si por API sí lo está. El diseño de voz no tiene esa restricción en ninguna de las fuentes consultadas.

La política de usos prohibidos de la IA generativa de Google veta suplantar a una persona, viva o muerta, sin avisarlo claramente y para engañar, y usar datos biométricos sin el consentimiento que exija la ley. Usar la API implica aceptarla, y Google guarda las peticiones 55 días para detectar abusos.

Todo lo que suena lleva marca de agua

Cualquier fragmento que generes sale marcado. Google lo presenta como una forma de que la voz sintética siga siendo detectable y de frenar la desinformación. No cambia lo que oyes ni cómo trabajas con el fichero.

Conclusión

Con ocho pasos, del 0 al 7, se pasa de una frase a un fichero WAV con una voz propia que habla español, suspira donde toca y cambia de tono por turnos. La clave es separar lo que es de la voz, que va en la descripción, de lo que es de la escena, que va en `speech_metadata` y en las etiquetas. El precio de lanzamiento rige hasta el 31 de diciembre de 2026; desde enero, el doble.

Fuentes primarias

Comentarios

Sé respetuoso. Los comentarios se moderan.

    La continuación natural

    Aprende IA a tu ritmo con nuestros cursos gratuitos.

    En nuestra plataforma de aprendizaje TAKU podrás acceder a este y muchos otros cursos de manera totalmente gratuita.

    HACER ESTE CURSO EN TAKU

    ← Volver al blog