Ir al contenido principal

Consigue una narración coherente en inglés con referencias de voz de Chatterbox

Prepara una referencia de voz limpia, súbela, ajusta el ritmo y la expresión y divide un guion largo en trozos que puedas repetir uno a uno.

Autor
Lydia
Publicado
Lectura
12 min de lectura
Actualizado
Un encuadernador adulto sostiene un libro azul cerrado con ambas manos junto a una narradora adulta y un micrófono en un taller cálido

Tienes una grabación de una persona narradora y un guion que rebasa un párrafo. Chatterbox v1 en SpicyAPI puede leer ese guion con el timbre de la grabación, trozo a trozo. Usar el mismo archivo de referencia y los mismos tres ajustes en cada trozo ayuda a mantener la coherencia de la voz a lo largo de un capítulo.

Para una primera pasada, recorta un fragmento limpio de 10 a 15 segundos de una sola persona en el estilo que quieras y usa los valores predeterminados exaggeration: 0.5, guidance_scale: 0.5 y temperature: 0.7. Según nuestras pruebas de octubre de 2026, la salida se detiene a los 40 segundos, así que divide los guiones largos en trozos de unos 500 caracteres (unos 27 segundos). Cada solicitud cuesta una tarifa fija de $0.036 sea cual sea su longitud, de modo que una narración de diez minutos son unos 17 a 24 trozos, $0.61 a $0.86 antes de repetir tomas. La tarea es asíncrona, solo en inglés y devuelve un archivo WAV.

Si solo necesitas una voz estable, no una grabación concreta, los modelos con voces preestablecidas te lo dan mediante un voice_id fijo (la comparación «Uncensored Text-to-Speech APIs Compared» los lista con sus precios).

Qué acepta la tarea alojada

El esquema de Chatterbox v1 text to speech tiene cinco campos:

CampoValores válidosPrimera opción práctica
text1–1.000 caracteres en inglésUn pasaje corto que termine en una frase completa
reference_audio_urlMP3 o WAV opcional; límite 90 MBUn fragmento limpio de una sola persona que tengas derecho a usar
exaggeration0–10.5
guidance_scale0.1–10.5
temperature0.05–20.7

La referencia es opcional. Omítela para escuchar la voz integrada, una forma rápida de juzgar un guion antes de preocuparte por un clon. Con referencia, la lectura adopta el timbre de ese fragmento; no se entrena nada ni se guarda ninguna voz, así que envías la referencia otra vez con cada solicitud. El precio no cambia.

La salida es un único WAV mono de 24 kHz y 16 bits, sin marcas de tiempo por palabra ni subtítulos. La tarea no tiene multiplicador de velocidad, seed, selector de idioma ni lista de voces. Las etiquetas entre corchetes como [sigh] o <laugh> se leerán en voz alta como palabras. Escribe un sonido con letras («Mmm…», «ha…») y deja las acotaciones fuera de text.

Prepara una referencia que encaje con la narración

La referencia decide qué voz escuchas y también cómo marca el ritmo y actúa. Prepárala para la narración que quieres, no para la muestra más dramática que tengas.

  • Longitud y formato. Los responsables recomiendan al menos 10 segundos, idealmente WAV a 24 kHz o más, una sola persona, sin ruido de fondo y una interpretación que coincida con lo que quieres recibir: para una salida al estilo de audiolibro, usa un fragmento al estilo de audiolibro.
  • Empieza con habla limpia. El principio del fragmento es lo que más cuenta, pero una sección ruidosa o fuera de estilo más adelante en un archivo largo sigue contando. Recorta 10 a 15 segundos limpios que empiecen con habla.
  • Ajusta el ritmo. La referencia arrastra su velocidad al resultado, así que elige el fragmento a la velocidad que debería tener la narración.
  • Usa un fragmento en inglés. Una referencia en otro idioma puede traer su acento.
  • Quita lo que no quieras que se copie. La música, una segunda voz, el eco de la sala, los picos recortados y los silencios largos hacen el ejemplo menos claro. Una reducción de ruido agresiva que se come la voz puede ser peor que un poco de ruido de fondo constante, así que conserva el original sin tocar y compara.
  • Prueba primero las voces poco comunes con una frase. Algunos acentos se desvían: un acento australiano puede salir estadounidense. Gasta $0.036 en una sola frase antes que en un capítulo entero.

Este comando recorta un tramo de 12 segundos que empieza en el segundo 3.2 de una grabación original y lo guarda como WAV mono de 24 kHz y 16 bits (necesita ffmpeg). 24 kHz es la frecuencia con la que trabaja el modelo y el mínimo de los responsables; convertir a ella una grabación de 44.1 o 48 kHz está bien, pero bajar más no aporta nada:

bash
ffmpeg -i narrator-raw.wav -ss 3.2 -t 12 -ac 1 -ar 24000 -c:a pcm_s16le reference.wav

Usa solo una voz que tengas derecho a usar: una persona narradora que haya aceptado por escrito, no un fragmento de un vídeo o de un feed social.

Pruébalo primero en el Playground

Abre la página de Chatterbox text to speech y usa la pestaña Playground. Un pasaje de unos 240 caracteres muestra el ritmo y la entonación con poco coste:

I saved the window seat for you. The rain has stopped, and the lamps along the quay are coming on one by one. Sit down, pour the tea while it is hot, and I will tell you how the story begins. It starts with a locked door and a borrowed key.

  1. Pega el pasaje en Text.
  2. En Voice reference, elige tu fragmento preparado con Choose a file (MP3 o WAV, hasta 90 MB). Para usar un archivo que ya está en línea, pega su enlace en Asset URL y pulsa Add URL; debe ser un enlace directo al archivo de audio, porque una página de disco en la nube o de contenido social devuelve una página web y la tarea falla con invalid_asset. Omite este paso para escuchar la voz integrada.
  3. Deja Expressiveness (exaggeration), Temperature y Prompt adherence (guidance_scale) en sus valores predeterminados: 0.5, 0.7 y 0.5.
  4. Ejecuta. El precio, $0.036, aparece junto al formulario.
Playground de texto a voz de Chatterbox con el campo Text y un precio fijo por solicitud

El Playground de texto a voz de Chatterbox en la vista de formulario: el campo de texto y el botón Run.

Escucha la toma completa con el guion a mano: todas las palabras presentes, la primera y la última frase intactas, la misma persona de principio a fin, sin silencio muerto ni ruido al final. Mantén un solo archivo de referencia para todo el proyecto; recortarlo entre trozos cambia la voz.

Después llámalo desde el código

Cuando una toma suene bien, envía la misma solicitud desde tu propia aplicación. Define SPICY_API_KEY con tu clave de servidor y apunta reference_audio_url a un enlace HTTPS directo al fragmento, o a una dirección spicy:// que imprima spicyapi files upload ./reference.wav (una subida sigue siendo utilizable aproximadamente un día):

bash
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
  -H "Authorization: Bearer $SPICY_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  --data '{
    "model": "resemble-ai/chatterbox-v1/text-to-speech",
    "input": {
      "text": "I saved the window seat for you. The rain has stopped, and the lamps along the quay are coming on one by one. Sit down, pour the tea while it is hot, and I will tell you how the story begins. It starts with a locked door and a borrowed key.",
      "reference_audio_url": "https://example.com/reference.wav",
      "exaggeration": 0.5,
      "guidance_scale": 0.5,
      "temperature": 0.7
    }
  }'

Los resultados, las descargas y los errores están en la documentación de tareas; las subidas están en la guía de medios.

O deja que un agente haga las tomas

Un agente puede hacer la misma llamada mediante la CLI, el servidor MCP o el Agent Skill. La CLI y MCP muestran el precio y te piden confirmar antes de crear una tarea. Con SPICY_API_KEY definido y input.json conteniendo solo el objeto input de la solicitud anterior:

bash
# CLI
spicyapi files upload ./reference.wav    # prints a spicy:// URI for reference_audio_url
spicyapi tasks create --model resemble-ai/chatterbox-v1/text-to-speech --input-file input.json --wait

# MCP server: the command your assistant's MCP config runs
# (it exposes spicyapi_upload_file and spicyapi_task_create)
npx --yes --package=@spicyapi/mcp spicyapi-mcp

# Agent Skill
npx skills add spicyapi-ai/spicy-skill

Cambia el control que corresponda a lo que oyes

Cambia un solo ajuste por toma y mantén el texto y la referencia fijos, así sabrás qué causó la diferencia. Tres tomas (una de base, un cambio de expresión y un cambio de ritmo) cuestan $0.108.

Lo que oyesPrueba primeroPor qué
Plano, sin énfasisexaggeration (Expressiveness) 0.7Los valores más altos añaden énfasis; el ritmo apenas cambió en nuestra prueba (13.0 s frente a 13.4 s para los mismos 240 caracteres), así que juzga a oído
Apresuradoguidance_scale (Prompt adherence) 0.3Bajarlo ralentiza la lectura: los mismos 240 caracteres duraron 15.0 s a 0.3 frente a 13.4 s a 0.5
Apresurado con cualquier controlUna referencia más tranquilaLa referencia arrastra su ritmo
Una palabra está malEdita text: escribe una abreviatura completa, escribe los números como las palabras que quieres, divide una frase largaLa tarea no tiene diccionario de pronunciación
Un sonido se lee como una palabraQuita la etiqueta; escribe «Mmm…» o «ha…»Las etiquetas se leen en voz alta en esta tarea
No suena como la persona narradoraCorrige la referencia: ruido, una segunda voz, otro acento u otra interpretacióntemperature varía las tomas; no es un control de identidad
Las tomas difieren más de lo que quieresBaja temperature (prueba 0.5)Controla la variación entre tomas

Los dos ejemplos de la página del modelo dan una orientación aproximada: con los valores predeterminados nuestras tomas iban a unos 16 a 19 caracteres por segundo, y el ejemplo de narración tranquila, con exaggeration y guidance_scale ambos en 0.3, a unos 14. Para un ritmo suave de cuento de buenas noches, baja los dos. No copies valores del script de código abierto: el valor predeterminado de temperature en el servicio alojado es 0.7, mientras que en el de código abierto es 0.8.

Divide los guiones largos en trozos de unos 500 caracteres

Una solicitud acepta 1.000 caracteres, pero el audio se corta a los 40 segundos. A unos 18 caracteres por segundo, 700 caracteres volvieron como 36 segundos, y 900 y 998 caracteres volvieron ambos como exactamente 40 segundos, mientras que ese texto necesita unos 49 segundos, así que el final se recorta y aun así pagas los $0.036 completos. Mantén los trozos en unos 500 caracteres (una toma de 492 caracteres duró 27 segundos) y comprueba la última frase de cada toma.

El precio fijo hace fácil calcular el compromiso. Un capítulo de 2.430 caracteres cuesta:

  • 3 solicitudes de unos 810 caracteres: $0.108, pero cada una necesita unos 45 segundos y se corta a los 40.
  • 5 trozos de unos 490 caracteres: $0.18.
  • 9 trozos de unos 270 caracteres, unos 15 segundos cada uno: $0.324.

Suma un margen para repeticiones: dos repeticiones en el plan de cinco trozos hacen siete solicitudes, $0.252. Una reparación de una sola palabra también cuesta los $0.036 completos, así que repite una frase o un trozo entero en lugar de retocar palabra por palabra.

Corta al final de los párrafos o entre frases completas y deja varias frases juntas para dar contexto; los trozos de unos 300 a 500 caracteres suenan naturales. Usa el mismo archivo de referencia, los mismos tres números y las mismas convenciones de texto para cada trozo, y cuenta caracteres con espacios y puntuación incluidos, no palabras.

Los trozos llegaron con un volumen parecido; baja el más fuerte antes de unirlos. Esto une las tomas con un hueco corto entre ellas (ajusta los 0.35 segundos a cómo hace pausas la persona narradora entre párrafos):

bash
ffmpeg -y -f lavfi -i anullsrc=r=24000:cl=mono -t 0.35 -c:a pcm_s16le gap.wav
printf "file 'part-01.wav'\nfile 'gap.wav'\nfile 'part-02.wav'\nfile 'gap.wav'\nfile 'part-03.wav'\n" > list.txt
ffmpeg -y -f concat -safe 0 -i list.txt -c copy narration.wav

Si un trozo está mal, regenera solo ese trozo con la misma referencia y los mismos ajustes; si falla dos veces, cambia el texto antes del tercer intento.

Cuándo Chatterbox no es la herramienta adecuada

  • Otro idioma, o dos personas. La tarea alojada es solo en inglés y lee una voz por solicitud. Para dos personas, haz una solicitud por persona y une los archivos como se muestra arriba, o usa uno de los tres modelos de texto a voz de Gemini, cuyo campo de diálogo mezcla hasta dos voces preestablecidas en una solicitud (la comparación los lista). Un diálogo usa voces preestablecidas, no tu fragmento de referencia. Para otros idiomas, la comparación cubre los idiomas y los precios.
  • Una cara que dice la frase. El WAV no tiene datos de tiempos. Pásalo a un modelo de sincronización labial o de avatar parlante como Talking Avatar o Lip Sync.
  • Subtítulos. Pasa el audio final por un paso de voz a texto; no deduzcas los tiempos a partir de la longitud del guion.

Para ficción adulta, SpicyAPI no añade ningún filtro de contenido y los guiones adultos se leyeron por completo con la voz integrada. No leas guiones adultos con la voz de una persona real sin su consentimiento.

Preguntas frecuentes

¿Chatterbox admite clonación de voz? La tarea alojada imita el timbre de una referencia MP3 o WAV opcional, pero no entrena ninguna voz.

¿Es ilegal clonar una voz? Depende del consentimiento, de dónde estés tú y dónde esté la persona que habla, y de para qué se use el audio. Usar la voz de alguien sin permiso, o presentar habla sintética como una declaración de una persona real, puede crear problemas legales. Guarda el permiso archivado y, donde haga falta, revela que el audio es sintético.

¿Puedo guardar la voz y llamarla por su nombre? No. El esquema no tiene ningún voice ID, así que envías el archivo de referencia cada vez.

Por dónde empezar

Sube al Playground una referencia limpia de 10 a 15 segundos y ejecuta una toma de 240 caracteres con los valores predeterminados por $0.036. Si suena bien, divide el guion en trozos de unos 500 caracteres y repite solo los que fallen; si no, arregla primero la referencia o el único control de la tabla de arriba.

También en English · 日本語 · 한국어 · Deutsch · Français · Português (Brasil) · Русский · Italiano · Polski

Pruébalo tú mismo

Pagas solo lo que ejecutas: sin planes ni suscripciones.

Hecho con MiniMax H3 · ByteDance Seedance 2.0 Fast