Kuaishou
Kling 4.0
kling-4.0/text-to-video
Modelo de generación de vídeo de Kuaishou, capaz de generar en una sola pasada vídeos de 30 segundos con audio estéreo, compatible con el control de múltiples fotogramas clave y de fotogramas inicial y final, ideal para cortometrajes de marketing y previsualización de guiones gráficos
Probar kling-4.0/text-to-video
Entrada
Salida
Precios
kling-4.0/text-to-video per second
| Especificaciones | Precio unitario |
|---|---|
| 1080P | $0.330 |
Descripción general
La línea de texto a vídeo de Kling 4.0 está orientada a desarrolladores que necesitan producir directamente un vídeo final a partir de una descripción puramente textual. Basta con introducir un prompt que describa el sujeto de la escena, la acción, el movimiento de cámara y la iluminación para obtener un clip de vídeo que incluye imagen y audio, con una duración única especificable entre 3 y 30 segundos, salida compatible con 720p y 1080p, y cuatro relaciones de aspecto opcionales: 16:9, 9:16, 1:1 y 21:9. Es adecuada para equipos que producen anuncios cortos, contenido vertical para redes sociales y previsualizaciones de storyboards, y se invoca a través de la interfaz unificada de HiAPI.ai, con facturación por segundos de salida.
Puntos clave
- Una sola generación cubre de 3 a 30 segundos: la duración se especifica directamente como parámetro de la solicitud, por lo que los planos largos no necesitan dividirse en varios fragmentos y volver a unirse, lo que reduce el trabajo de alineación en posproducción.
- Imagen y audio se generan juntos: la escena descrita en el prompt se produce junto con el sonido, lo que elimina el paso de doblaje o efectos de sonido por separado.
- Cuatro relaciones de aspecto adaptadas a los canales de difusión: además de horizontal y vertical, se ofrecen 1:1 y 21:9, de modo que la proporción de salida se selecciona una sola vez según el emplazamiento de la plataforma.
- Resolución conmutable según la necesidad: se puede elegir entre 720p y 1080p; en la fase de borrador se itera con baja resolución y, al definir la versión final, se aumenta la nitidez.
Descripción de capacidades
Descripción de planos con prompts largos: el prompt admite hasta 2500 caracteres, suficiente para incluir una descripción completa del sujeto, la acción, el movimiento de cámara, la iluminación y la atmósfera, de modo que una sola solicitud exprese intenciones de plano más complejas.
Control de duración parametrizado: duration admite valores de 3 a 30 segundos y la facturación se realiza por segundos de salida; los clips cortos y los planos largos usan la misma interfaz, lo que facilita distribuir el coste según el ritmo del contenido.
Salida con dos niveles de resolución: se puede elegir 720p o 1080p; el renderizado en 1080p tarda notablemente más, por lo que conviene ejecutarlo tras confirmar la idea creativa.
Relaciones de aspecto predefinidas: aspect_ratio admite 16:9, 9:16, 1:1 y 21:9; la generación ya produce la proporción del emplazamiento objetivo, sin necesidad de recortes posteriores.
Casos de uso
- Vídeos cortos verticales para equipos de redes sociales: generar con una frase descriptiva de la escena y una relación de aspecto 9:16 un clip de unos 15 segundos, listo para plataformas de vídeo corto o anuncios en el feed.
- Comparación temprana de ideas publicitarias: producir rápidamente en 720p varias versiones de propuestas de planos para que el cliente seleccione la dirección en una fase de bajo coste.
- Previsualización de storyboards y narrativa: convertir el texto del storyboard en clips dinámicos con sonido para explicar al equipo de producción el movimiento de cámara y el ritmo.
- Contenido con estilo de pantalla ancha: elegir la relación de aspecto 21:9 para generar clips horizontales con sensación cinematográfica, destinados a cabeceras o material de imagen de marca.
Limitaciones y recomendaciones de selección
Actualmente solo admite entrada de texto y no permite restringir la imagen con imágenes de referencia ni con fotogramas inicial y final, por lo que los proyectos con altos requisitos de consistencia de personajes y precisión de composición resultan difíciles de controlar con exactitud. La información pública discrepa sobre la resolución máxima; esta línea tiene 1080p como límite. El renderizado en 1080p tarda notablemente más, y se recomienda probar primero la consistencia y estabilidad de los clips de larga duración. Si se dispone de una imagen original como punto de partida, conviene usar la línea de imagen a vídeo de la misma serie; si solo se necesita un borrador rápido, puede considerarse la versión Flash.
Preguntas frecuentes
Ver todas las preguntas →-
¿Qué requisitos debe cumplir la imagen del primer fotograma?
Una URL de imagen jpeg o png accesible públicamente, colocada en el arreglo image_urls, y solo se sube una imagen a la vez. La imagen se tomará como el fotograma inicial del clip.
-
¿Qué pasa si no se selecciona la relación de aspecto?
Si no se pasa aspect_ratio, la salida sigue automáticamente la proporción del primer fotograma, por lo que una imagen vertical no se recorta forzosamente a horizontal. Solo es necesario configurarlo explícitamente cuando se desea sobrescribir la proporción de la imagen original.
-
¿Es obligatorio el Prompt?
Sí. La imagen del primer fotograma define la composición y el sujeto, y el Prompt describe la acción, la cámara y el sonido; se necesitan ambos. Normalmente, un texto más breve suele dar mejores resultados.
-
¿Cómo se factura la generación de video a partir de imágenes?
Se factura igual que la generación de video a partir de texto, según los segundos de salida; las tarifas de 720p y 1080p son diferentes y no hay precio mínimo.
Crear una tarea de generación
https://api.hiapi.ai/v1/tasks Encabezados
AuthorizationstringObligatorioClave API de la cuenta. Obligatoria en cada solicitud. Ejemplo: Bearer YOUR_HIAPI_API_KEY. Obtener clave API
Content-TypestringOpcionalEl cuerpo de la solicitud siempre se analiza como JSON; si se envía, solo se acepta application/json (charset opcional) — cualquier otro valor devuelve 415. Ejemplo: application/json.
Idempotency-KeystringOpcionalClave de idempotencia, hasta 255 bytes. Los reintentos con la misma clave de la misma cuenta crean la tarea una sola vez; las repeticiones devuelven el taskId original.
Ante timeouts de red o reintentos automáticos del cliente, la misma clave crea la tarea una sola vez, sin doble cobro (alcance = la cuenta de la clave API). Usa un identificador de negocio único (p. ej. "order-42"); las repeticiones devuelven el taskId original y las claves caducan 24 h después de la primera solicitud. La matriz completa de escenarios está en la introducción de la API asíncrona unificada.
Cuerpo
modelstringObligatorioValor fijo actual: kling-4.0/text-to-video
routestringOpcionalValor fijo actual: default
inputobjectObligatorio
Objeto de parámetros de negocio para kling-4.0/text-to-video y la ruta default; consulta la tabla de parámetros a continuación.
promptstringObligatoriominLength 1maxLength 2500What happens in the shot: subject, action, camera movement, lighting and mood. Audio is generated together with the picture.
durationintegerOpcionalPredeterminado: 5min 3max 30Clip length in seconds (3-30). Billed per second.
resolutionstringOpcionalPredeterminado: "720p"Output resolution. 1080p takes noticeably longer to render than 720p.
720p1080paspect_ratiostringOpcionalPredeterminado: "16:9"Frame shape of the output. 21:9 gives an ultrawide cinematic frame.
16:99:161:121:9callbackobjectOpcional
Configuración de notificación de estado terminal. Si se omite, no hay callback: consulta la tarea por tu cuenta.
Indica callback.url al crear y HiAPI hará POST a tu servicio en el estado terminal, sin necesidad de sondeo. El cuerpo del callback replica la estructura del detalle de la tarea; firma, reintentos e idempotencia se detallan en la introducción de la API asíncrona unificada.
urlstringObligatorioObligatorio si se incluye callback. Al estado terminal se envía un POST a esta URL; debe ser una URL http(s) válida.
whenstringOpcionalPredeterminado: "final"Actualmente solo se admite final: notifica tanto en success como en fail.
finalstoragestringOpcionalPredeterminado: "temp"Nivel de almacenamiento de artefactos: temp (por defecto, ~7 días) o persistent (largo plazo, facturado por tamaño). Saldo insuficiente o exceso de límite ⇒ degradación silenciosa a temp; el nivel efectivo se muestra en la respuesta del detalle.
temppersistentEjemplos de solicitud
# Envía una tarea asíncrona; devuelve un taskId de inmediato (sin esperar la generación)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-4.0/text-to-video",
"input": {
"prompt": "…",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "kling-4.0/text-to-video",
input: {
"prompt": "…",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "kling-4.0/text-to-video",
"input": {
"prompt": "…",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtener el detalle de la tarea
https://api.hiapi.ai/v1/tasks/:id Campos de respuesta
taskIdstringObligatorioID de tarea, siempre con prefijo tk-hiapi-.
modelstringObligatorioNombre completo resuelto del modelo. Las tareas enviadas con el parámetro route devuelven base@route (p. ej. gpt-image-2/text-to-image@ext); si no, coincide con el nombre enviado.
routestringOpcionalSolo aparece si se usó el parámetro route explícito; repite el valor enviado.
statusstringObligatorioEstado de la tarea.
queued En cola, sin iniciar.
handling Procesando.
archiving Proceso terminado, preparando artefactos.
success Terminal: completado, artefactos disponibles (se devuelve output).
fail Terminal: error (se devuelve error).
Tras el envío, guíate por status: success y fail son terminales; el resto, no. Sondea cada 1–3 s hasta el estado terminal. Con éxito, descarga los artefactos desde output[].url y transfiérelos antes de expireAt; para retención larga usa storage: "persistent" al crear.
creatednumberObligatorioHora de creación de la tarea (segundos Unix).
completednumberObligatorioSegundos Unix al alcanzar estado terminal; 0 mientras no sea terminal.
outputarrayOpcional
Solo con status == success. Lista de artefactos — siempre un array; una tarea puede devolver varios types a la vez (p. ej. video + first_frame).
Array [ object ]
Elementos del array
urlstringObligatorioURL del artefacto, descargable directamente.
typestringObligatorioValores posibles actuales: video, image, audio, first_frame, last_frame, thumbnail; podrían ampliarse más adelante.
expireAtnumberObligatorioSegundos Unix hasta los que el artefacto es accesible; descárgalo o transfiérelo antes.
errorobjectOpcional
Solo con status == fail.
codestringObligatorioCódigo de error de negocio.
messagestringObligatorioDescripción del error.
Ejemplos de respuesta
Éxito
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En proceso (no terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Fallido
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Artículos
Ver todos los artículos →-
Tutorial
Cómo usar kling-4.0/text-to-video a través de la API de HiAPI: curl, Python y un ejemplo de solicitud ejecutable
Guía práctica para desarrolladores: prompts cinematográficos, audio sincronizado, sondeo asíncrono y descarga de resultados
-
Tutorial
Cómo llamar a hailuo-2.3-fast/image-to-video a través de la API de HiAPI: práctica con curl y Python
La primera solicitud ejecutable del nivel rápido y de bajo coste de imagen a vídeo: del ID del modelo a la descarga del MP4
-
Tutorial
Cómo llamar a hailuo-2.3/text-to-video mediante la API de HiAPI: curl, Python y ejemplos de solicitud ejecutables
-
Tutorial
Uso de Kandinsky 6.0 Pro texto a video en HiAPI: tutorial con curl y Python
Demostración práctica centrada en la solicitud: construir la llamada de prompt a clip de video, enviar la solicitud, sondear el estado de finalización y descargar el resultado
-
Tutorial
Tutorial de kandinsky-6.0-pro/image-to-video en HiAPI: curl + Python
Realiza una solicitud de imagen a video funcional en HiAPI: desde la carga del primer fotograma hasta el sondeo asíncrono y la descarga final
-
Tutorial
Cómo llamar a kling-4.0/image-to-video en HiAPI: curl, Python y sondeo
Modelos relacionados
Ver todos los modelos →Mismo tipo
-
FLUX 3 Video Black Forest Labs $0.090 /segundo -
Kling 3.0 Turbo Kuaishou $0.130 /segundo -
Vidu Q4 Preview Vidu $0.051 /segundo -
MiniMax H3 MiniMax $0.072 /segundo -
Runway Gen 4.5 Runway $0.172 /segundo -
Gemini Omni 1.1 Flash Google $0.450 /vídeo -
HeyGen Avatar V HeyGen $0.150 /segundo -
Gemini Omni Google -- -
Seedance 2.0 ByteDance $0.017 /segundo -
Veo 3.1 Fast Google $0.170 /segundo -
HappyHorse 1.1 Alibaba $0.160 /segundo -
Kling AI Avatar Kuaishou --