Traducir audio
Envíenos una grabación en un idioma y reciba el texto en otro, sin un paso separado de transcripción en medio. Está pensado para el caso cotidiano de contenido hablado en un idioma que su audiencia no lee.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
El problema que elimina
Traducir contenido hablado tradicionalmente implica dos tareas unidas a la fuerza: transcribir y luego traducir, cada una con su propia configuración, sus propios errores y su propia factura. Los errores se acumulan: una transcripción defectuosa produce una traducción defectuosa sin importar qué tan buena sea la etapa de traducción. audio.translate lo trata como una sola tarea, para que el modelo que traduce tenga el contexto del audio, no solo una transcripción intermedia imperfecta.
Qué envía y qué recibe
Haga POST a /audio/translate con el audio de origen y, si lo conoce, el idioma de destino; la llamada devuelve un task_id de inmediato mientras el trabajo corre en segundo plano. La entrega llega por su webhook o mediante un enlace firmado válido por 24 horas, con el texto traducido estructurado para uso directo: subtítulos, artículos, tickets de soporte, lo que su flujo necesite a continuación.
La traducción de voz es más vieja de lo que parece
La traducción automática de voz tiene raíces en sistemas de investigación de los años ochenta y noventa que encadenaban reconocimiento, traducción y síntesis con costuras visibles entre cada etapa. Los enfoques encadenados y los de extremo a extremo han madurado desde entonces, y el resultado práctico para usted es una calidad de traducción que se sostiene sobre audio conversacional real, no solo sobre narración de estudio perfectamente limpia.
Dónde varía naturalmente la precisión
Hablantes superpuestos, acentos marcados, modismos y jerga de industria afectan a cualquier sistema de traducción de voz, incluido el nuestro; no publicamos cifras que no podamos respaldar, y recomendamos una revisión humana ligera para todo lo que se publique con su firma. Lo que sí garantizamos es que una tarea que falla por completo —audio corrupto, formato no soportado tras tres reintentos— nunca se cobra.
Cómo encaja en un flujo de trabajo
Encadene audio.detect_language antes cuando no conoce el idioma de origen, o llame directamente cuando ya sabe con qué está trabajando. Equipos de contenido lo usan para convertir una entrevista hablada en un idioma extranjero en un borrador en el idioma de trabajo con una sola llamada, en vez de correr transcripción y traducción como tareas separadas con costos separados.
Qué puede hacer con ella
De entrevista extranjera a borrador publicable
Una redacción traduce la entrevista hablada de una fuente directamente a un borrador de artículo en el idioma de trabajo de la redacción.
Revisión de llamadas de clientes
Un equipo de soporte traduce llamadas grabadas de clientes internacionales para que supervisores que no hablan el idioma del cliente puedan revisar la calidad.
Entrevistas de investigación transfronterizas
Un equipo de investigación traduce entrevistas de campo grabadas en el extranjero a su idioma de trabajo para codificación y análisis.
Material de capacitación multilingüe
Un equipo de capacitación traduce una grabación hecha por una oficina regional a los otros idiomas operativos de la empresa para distribución interna.
Preguntas frecuentes
¿Cómo funciona la API de traducción de audio?
Envíe el audio a POST /audio/translate, reciba un task_id de inmediato y obtenga el texto traducido por webhook o mediante un enlace firmado válido por 24 horas cuando termine el proceso.
¿Necesito indicar el idioma de origen?
Ayuda pero no siempre es obligatorio; si no lo conoce, ejecute primero audio.detect_language y pase el resultado.
¿Traducir audio es gratis?
No, no hay plan gratuito ni prueba. Cuesta $0.004 por solicitud más $0.0185 por minuto, y una tarea que falla tras los reintentos nunca se cobra.
¿Transcribe y traduce en una sola llamada?
Sí, transcripción y traducción ocurren como una sola tarea, así que obtiene texto en el idioma de destino directamente, sin administrar dos trabajos separados.
¿Qué tan precisa es la traducción?
La precisión depende mucho de la calidad del audio, los acentos y el habla superpuesta; no publicamos cifras de precisión inventadas, y recomendamos una revisión humana para uso publicado o legal.
¿Puede procesar grabaciones largas?
Sí, procesa de forma asíncrona precisamente para que archivos largos —reuniones, entrevistas, clases— no agoten el tiempo de una solicitud; se le notifica cuando el resultado está listo.
¿Qué pasa si la tarea falla?
Reintentamos automáticamente hasta tres veces; si sigue fallando recibe un error claro y nunca se le cobra esa tarea.
¿Se guarda mi audio o se usa para entrenar modelos?
No. El audio y los resultados se eliminan después del período de retención y nunca se usan para entrenar modelos.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/audio/translate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"audio":"https://ejemplo.com/audio.mp3"}'const res = await fetch("https://api.kit.forhosting.com/audio/translate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"audio": "https://ejemplo.com/audio.mp3"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/translate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"audio": "https://ejemplo.com/audio.mp3"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/translate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"audio":"https://ejemplo.com/audio.mp3"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"audio":"https://ejemplo.com/audio.mp3"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/translate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"audio": "https://ejemplo.com/audio.mp3"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.translate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 200 |
max_minutes | 180 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |