HiAPI
Blog

Tutoriel

Comment utiliser l'API LTX 2.5 Fast de génération de vidéo à partir de texte ? Votre première vidéo en 5 minutes

Du texte à une vidéo avec audio de 2 à 20 secondes : exemples curl/Python, tableau des paramètres et points d'attention.

Oct 23, 2026
Comment utiliser l'API LTX 2.5 Fast de génération de vidéo à partir de texte ? Votre première vidéo en 5 minutes

TL;DR

  • LTX 2.5 Fast Text to Video (ltx-2.5-fast/text-to-video) transforme un texte en une vidéo de 2 à 20 secondes, en 720p / 1080p, en paysage ou portrait, avec l'audio natif généré en même temps. Ouvrez la page du modèle pour l'essayer ; les nouveaux utilisateurs reçoivent 200 crédits à l'inscription.
  • Le prix est calculé à la seconde : 720p à 0,043 $/seconde (0,258 $ pour 6 secondes), 1080p à 0,086 $/seconde ; l'option generate_audio n'a aucune incidence sur le prix.
  • L'appel passe par l'API /v1/tasks de HiAPI : soumettez la tâche pour obtenir un taskId, puis interrogez le résultat ; une fois réussi, récupérez l'URL de la vidéo dans output (adresse temporaire, à sauvegarder rapidement).

Ce qu'il sait faire

  • Une phrase pour une séquence avec son : scène, mouvement, caméra et son s'écrivent dans un même prompt, l'audio est généré en même temps que l'image.
  • De 2 à 20 secondes, 12 durées possibles : duration prend 2, 3, 4, 5, 6, 8, 10, 12, 14, 16, 18, 20, avec 6 secondes par défaut.
  • Paysage ou portrait et deux résolutions : 16:9 / 9:16, 720p / 1080p ; fréquence d'images fixe à 25 fps, MP4.
  • La même série propose aussi la génération de vidéo à partir d'image : ltx-2.5-fast/image-to-video prend une première image (avec éventuellement une dernière image) pour animer une image fixe, avec les mêmes règles de prix, voir la page du modèle image-vers-vidéo.

Comment choisir entre les deux API :

ltx-2.5-fast/text-to-video (cette page) ltx-2.5-fast/image-to-video
Entrée Un texte 1 à 2 images + une phrase décrivant le mouvement
Idéal pour Explorer un plan de zéro, création publicitaire, storyboard Une image de produit ou une photo existante que l'on veut animer
Points de contrôle Prompt, résolution, durée, format Première image (+ dernière image), prompt, résolution, durée

En un mot : si le contenu de l'image n'est pas encore décidé, utilisez texte-vers-vidéo ; si l'image existe déjà, utilisez image-vers-vidéo ; les deux API peuvent s'enchaîner — texte-vers-vidéo produit une première image définitive, puis image-vers-vidéo y ajoute un mouvement de caméra.

Voici une vidéo réelle (720p · 6 secondes, avec audio natif) :

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

(En français : un barista verse du lait mousseux dans un latte, créant un motif en feuille, gros plan, lumière douce du matin à travers la fenêtre d'un café, léger tintement de tasses et ambiance de café. Paramètres par défaut : 720p, 6 secondes, 16:9, audio activé.)

ltx-2.5-fast/text-to-video, 720p, 6 secondes, 16:9, 1280×720, avec son, 0,258 $.Voir la vidéo complète →

Générer avec ce prompt →

Deux parcours pour démarrer

Navigateur en 3 étapes : ouvrez la page du modèle → collez le prompt, choisissez la durée et la résolution → cliquez sur générer, 0,258 $ pour une vidéo 720p de 6 secondes, avec un aperçu en ligne dès la fin de la génération.

API en 3 étapes : POST /v1/tasks pour soumettre → récupérez le taskId → GET /v1/tasks/<taskId> jusqu'au statut success, puis téléchargez.

curl : la première vidéo

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
  }
}'

Cette vidéo 720p × 6 secondes coûte 0,258 $.

Python : soumettre, interroger, télécharger

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"]   # adresse temporaire, téléchargez-la dès que possible
    mp4 = requests.get(video_url, timeout=120)
    with open("output.mp4", "wb") as f:
        f.write(mp4.content)
    print("saved output.mp4")

Tableau des paramètres

Champ Obligatoire Valeurs Description
prompt Oui 1 à 5000 caractères Tout en une phrase : scène, mouvement, caméra, son
resolution Non 720p / 1080p, 720p par défaut Le prix par seconde en 1080p est environ 2 fois celui de 720p
duration Non 2/3/4/5/6/8/10/12/14/16/18/20, 6 par défaut Uniquement ces valeurs énumérées (pas de 7 ni de 9)
aspect_ratio Non 16:9 / 9:16, 16:9 par défaut Choisissez 9:16 pour les vidéos courtes verticales
generate_audio Non true par défaut Audio natif ; le désactiver ne réduit pas le prix

Tout champ absent du tableau dans le corps de la requête renvoie directement une erreur 400.

Erreurs que vous rencontrerez

Code de statut Signification Que faire
400 INVALID_REQUEST Corps de requête invalide (prompt manquant, duration avec une valeur hors énumération comme 7, champ hors tableau) Corrigez le corps de la requête d'après le tableau des paramètres
402 INSUFFICIENT_QUOTA Solde insuffisant (aucun débit) Rechargez puis réessayez
429 RATE_LIMITED Limitation de débit atteinte Réduisez la fréquence de soumission
409 / 422 IDEMPOTENCY_KEY_* Soumission en double avec la même clé d'idempotence Utilisez un nouveau Idempotency-Key

L'échec d'une tâche peut aussi renvoyer CONTENT_POLICY_VIOLATION, TASK_FAILED, TASK_TIMEOUT, etc. ; un échec n'est pas facturé.

À vérifier avant la mise en production

  • Callback : passez "callback": {"url": "https://..."} au niveau supérieur du corps de la requête pour être notifié automatiquement de l'état final ; les tâches vidéo étant longues, c'est recommandé.
  • Sauvegardez rapidement : l'URL de la vidéo dans output est temporaire, téléchargez-la dès que vous l'obtenez.
  • Indiquez explicitement duration et resolution : ces deux champs déterminent la facturation, ne vous fiez pas aux valeurs par défaut ; journalisez ces deux valeurs avant la mise en production pour faciliter la réconciliation.
  • Rythme des traitements en lot : une vidéo de 6 secondes demande un certain temps entre la soumission et la sortie ; pour les lots, privilégiez une soumission en file d'attente + récupération des résultats par callback, plutôt qu'une attente synchrone bloquante.
  • Pour animer une image fixe : utilisez la page du modèle image-vers-vidéo de la même série, avec une première image en entrée pour plus de contrôle.

Questions fréquentes

  • Oui, l'audio est généré avec la vidéo : generate_audio est activé par défaut ; décrivez le son dans le prompt (vent, tintement de tasses) et l'audio collera mieux à l'image.
  • Oui, il n'y a que 12 durées possibles : les valeurs énumérées entre 2 et 20 secondes ; 7 ou 9 secondes renvoient une erreur 400.
  • Oui, prix = prix par seconde × nombre de secondes : 720p 6 secondes 0,258 $, 1080p 6 secondes 0,516 $ ; désactiver l'audio ne réduit pas le prix.
  • Oui, 10 $ permettent environ 38 vidéos : en comptant une vidéo 720p de 6 secondes.
  • Oui, pour le format vertical, choisissez 9:16 : sortie en 720×1280 (720p) ou 1080×1920 (1080p), sans recadrage pour les plateformes de vidéos courtes.
  • Oui, mieux vaut commencer en basse résolution puis monter : réglez le prompt et la composition en 720p, puis relancez le même prompt en 1080p une fois fixé ; le prix par seconde double mais vous n'avez qu'un seul rendu final.
  • Oui, désactiver l'audio ne fait pas économiser : pour un doublage ou une musique en post-production, passez generate_audio: false pour obtenir une image propre.

Étape suivante : reprenez le prompt du latte pour générer votre première vidéo sur la page du modèle, et consultez le guide complet des prompts texte-vers-vidéo pour quatre modèles de scènes.

Articles similaires

Voir tous les articles →

Commencez avec des artefacts IA persistants

Obtenez votre clé API et appelez des modèles d'image, de vidéo et d'audio via une API unique basée sur les tasks.

Lire la documentation de l'API