HiAPI
Blog

Tutorial

¿Cómo usar la API de texto a video de LTX 2.5 Fast? Tu primer video en 5 minutos

Convierte texto en videos con audio de 2–20 segundos: ejemplos en curl/Python, tabla de parámetros y advertencias.

Oct 23, 2026
¿Cómo usar la API de texto a video de LTX 2.5 Fast? Tu primer video en 5 minutos

TL;DR

  • LTX 2.5 Fast Text to Video (ltx-2.5-fast/text-to-video) convierte un texto en un video de 2–20 segundos, con 720p / 1080p, horizontal o vertical y audio nativo incluido. Abre la página del modelo para probarlo; los usuarios nuevos reciben 200 créditos al registrarse.
  • El precio se calcula por segundo: 720p a $0.043 por segundo ($0.258 por un video de 6 segundos), 1080p a $0.086 por segundo; el interruptor generate_audio no afecta el precio.
  • Se llama a través de la interfaz /v1/tasks de HiAPI: envía la tarea y obtén el taskId, luego consulta el resultado; cuando termine correctamente, toma la URL del video desde output (es una URL temporal, guárdala a tiempo).

Qué puede hacer

  • Una toma con audio a partir de una frase: describe escena, movimiento, cámara y sonido en un mismo prompt; el audio se genera junto con la imagen.
  • 2–20 segundos, 12 duraciones disponibles: duration acepta 2, 3, 4, 5, 6, 8, 10, 12, 14, 16, 18, 20; por defecto 6 segundos.
  • Horizontal/vertical y dos resoluciones: 16:9 / 9:16, 720p / 1080p; frecuencia de fotogramas fija a 25 fps en MP4.
  • La misma familia también tiene imagen a video: ltx-2.5-fast/image-to-video permite subir un primer fotograma (y opcionalmente un último fotograma) para animar una imagen estática, con las mismas reglas de precio; consulta la página del modelo de imagen a video.

Cómo elegir entre las dos interfaces:

ltx-2.5-fast/text-to-video (esta página) ltx-2.5-fast/image-to-video
Entrada Un texto 1–2 imágenes + una frase que describe el movimiento
Ideal para Explorar tomas desde cero, creatividad publicitaria, storyboards Tienes una imagen de producto/foto y quieres animarla
Puntos controlables Prompt, resolución, duración, relación de aspecto Primer fotograma (+ último), prompt, resolución, duración

En una frase: si el contenido visual aún no está definido, usa texto a video; si ya tienes la imagen, usa imagen a video; ambas interfaces se pueden encadenar: genera con texto a video el primer fotograma definitivo y luego pásalo a imagen a video para añadir movimiento de cámara.

Aquí tienes un resultado real (720p · 6 segundos, con audio nativo):

A barista pours steamed milk into a latte, creating a leaf pattern, close-up, soft morning light through a café window, gentle clinking cups and café ambience

(Significado en chino: una barista vierte leche vaporizada en un latte y crea un patrón de hoja, primer plano, luz suave de mañana a través de la ventana de una cafetería, tintineo suave de tazas y ambiente de cafetería. Parámetros por defecto: 720p, 6 segundos, 16:9, audio activado).

ltx-2.5-fast/text-to-video, 720p, 6 segundos, 16:9, 1280×720, con audio, $0.258.Ver el video completo →

Generar con este prompt →

Dos rutas para empezar

3 pasos en el navegador: abre la página del modelo → pega el prompt, elige duración y resolución → pulsa generar; un video de 720p y 6 segundos cuesta $0.258 y puedes previsualizarlo en línea en cuanto se genere.

3 pasos con la API: POST /v1/tasks para enviar → obtén el taskId → GET /v1/tasks/<taskId> hasta ver success y descarga.

curl: el primero

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: your-unique-key-001" \
  -d '{
  "model": "ltx-2.5-fast/text-to-video",
  "input": {
    "prompt": "A barista pours steamed milk into a latte, creating a leaf pattern, close-up, soft morning light through a café window, gentle clinking cups and café ambience",
    "resolution": "720p",
    "duration": 6,
    "aspect_ratio": "16:9",
    "generate_audio": true
  }
}'

Este de 720p × 6 segundos cuesta $0.258.

Python: enviar, consultar y descargar

import time, uuid, requests

BASE = "https://api.hiapi.ai/v1/tasks"
HEADERS = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
}

payload = {
    "model": "ltx-2.5-fast/text-to-video",
    "input": {
        "prompt": "A barista pours steamed milk into a latte, creating a leaf pattern, close-up, soft morning light through a café window, gentle clinking cups and café ambience",
        "resolution": "720p",
        "duration": 6,
        "aspect_ratio": "16:9",
        "generate_audio": True,
    },
}

resp = requests.post(
    BASE,
    headers={**HEADERS, "Idempotency-Key": str(uuid.uuid4())},
    json=payload,
    timeout=30,
)
resp.raise_for_status()
task_id = resp.json()["taskId"]

while True:
    task = requests.get(f"{BASE}/{task_id}", headers=HEADERS, timeout=30).json()
    print(task["status"])
    if task["status"] in ("success", "fail"):
        break
    time.sleep(5)

if task["status"] == "success":
    video = next(o for o in task["output"] if o.get("type") == "video")
    video_url = video["url"]   # URL temporal, descárgala y guárdala lo antes posible
    mp4 = requests.get(video_url, timeout=120)
    with open("output.mp4", "wb") as f:
        f.write(mp4.content)
    print("saved output.mp4")

Tabla de parámetros

Campo Obligatorio Valores Descripción
prompt Sí 1–5000 caracteres Escribe todo en una frase: escena, movimiento, cámara, sonido
resolution No 720p / 1080p, por defecto 720p 1080p cuesta aproximadamente el doble por segundo que 720p
duration No 2/3/4/5/6/8/10/12/14/16/18/20, por defecto 6 Solo acepta estos valores enumerados (no hay 7 ni 9)
aspect_ratio No 16:9 / 9:16, por defecto 16:9 Para videos verticales cortos elige 9:16
generate_audio No Por defecto true Audio nativo; desactivarlo no reduce el precio

Si el cuerpo de la solicitud incluye un campo fuera de la tabla, devolverá directamente 400.

Errores que encontrarás

Código de estado Significado Cómo resolverlo
400 INVALID_REQUEST Cuerpo de solicitud inválido (falta prompt, duration recibe un valor no enumerado como 7, se envía un campo fuera de la tabla) Corrige el cuerpo según la tabla de parámetros
402 INSUFFICIENT_QUOTA Saldo insuficiente (no se cobra) Recarga y vuelve a intentarlo
429 RATE_LIMITED Se activó el límite de solicitudes Reduce la frecuencia de envío
409 / 422 IDEMPOTENCY_KEY_* Se reenvió la misma clave de idempotencia Usa una nueva Idempotency-Key

Si la tarea falla en estado terminal, también puede devolver CONTENT_POLICY_VIOLATION, TASK_FAILED, TASK_TIMEOUT, etc.; los fallos no se cobran.

Antes de pasar a producción

  • Callback: pasa "callback": {"url": "https://..."} en el nivel superior del cuerpo de la solicitud para recibir una notificación automática al estado terminal; las tareas de video tardan bastante, así que se recomienda usarlo.
  • Guarda el resultado a tiempo: la URL del video en output es temporal; descárgala en cuanto la obtengas.
  • Especifica duration y resolution explícitamente: estos dos campos determinan la facturación; no dependas de los valores por defecto y registra ambos valores en los logs antes de producción para que la conciliación sea clara.
  • Ritmo para lotes: un video de 6 segundos tarda un rato desde el envío hasta la generación; para tareas por lotes se recomienda enviar en cola y recibir los resultados por callback, sin esperar de forma síncrona bloqueando el proceso.
  • Para animar una imagen estática: usa la página del modelo de imagen a video de la misma familia; subir el primer fotograma da más control.

Preguntas frecuentes

  • Sí, el audio se genera junto con el video: generate_audio está activado por defecto; describe el sonido en el prompt (viento, tintineo de tazas) para que el audio encaje mejor con la imagen.
  • Sí, solo hay 12 duraciones: valores enumerados entre 2 y 20 segundos; si envías 7 segundos, 9 segundos, etc., devolverá 400.
  • Sí, el precio = precio por segundo × segundos: 720p 6 segundos $0.258, 1080p 6 segundos $0.516; desactivar el audio no lo abarata.
  • Sí, con $10 se generan unas 38 piezas: calculando con 720p 6 segundos cada una.
  • Sí, para vertical elige 9:16: genera 720×1280 (720p) o 1080×1920 (1080p), sin necesidad de recortar para publicar en plataformas de video corto.
  • Sí, se recomienda empezar con resolución baja y subir después: usa 720p para ajustar el prompt y la composición; cuando esté definido, sube a 1080p y vuelve a ejecutar el mismo prompt; el precio por segundo se duplica, pero solo hay una pieza final.
  • Sí, desactivar el audio no ahorra dinero: si quieres doblaje o música en posproducción, envía generate_audio: false para obtener una imagen limpia.

Siguiente paso: usa el prompt de latte art para generar tu primera pieza en la página del modelo; para ver cuatro plantillas de escenas, consulta la guía completa de prompts de texto a video.

Artículos relacionados

Ver todos los artículos →

Empieza a crear con artefactos de IA persistentes

Consigue tu API key y llama a modelos de imagen, vídeo y audio a través de una única API basada en tasks.

Leer la documentación de la API