Tutoriel
Comment utiliser l'API Image vers Vidéo de Wan 2.6 Flash ? Le format suit l'image
Une image et une phrase pour créer une vidéo de 5/10/15 secondes : quatre combinaisons tarifaires, exemples curl/Python et tableau des paramètres.
TL;DR
- Wan 2.6 Flash Image to Video (
wan2.6-flash/image-to-video) : téléchargez 1 image, écrivez une phrase décrivant l'action, et générez une vidéo de 5, 10 ou 15 secondes en 720p / 1080p, avec audio synchronisé en option ; le format de sortie suit l'image d'entrée, une image verticale produit directement une vidéo verticale. Ouvrez la page du modèle pour l'essayer ; les nouveaux utilisateurs reçoivent 200 crédits à l'inscription. - Tarification à la seconde, quatre combinaisons : 720p sans son (par défaut) à $0.029 par seconde, avec audio à $0.0575, 1080p sans son à $0.043, avec audio à $0.086 (voir la page tarifs pour les prix complets).
- L'appel passe par l'interface HiAPI
/v1/tasks:image_urlscontient exactement 1 image ; après succès, récupérez l'URL de la vidéo dansoutput(adresse temporaire, à sauvegarder rapidement).
Ce qu'il peut faire
- Une image + une phrase = une action : le sujet et la lumière de l'image d'origine sont conservés, le modèle n'ajoute que le mouvement, la caméra et l'ambiance souhaités.
- Trois durées : 5 / 10 / 15 secondes, 5 secondes par défaut.
- Le format suit l'image : aucun paramètre de format — une image paysage produit du 16:9, une image verticale produit du vertical, une image en 3:4 produit du 3:4 ; plus besoin de recadrer pour les réseaux sociaux.
- Audio à la demande :
audioest désactivé par défaut ; une fois activé, le son est généré en synchronisation avec l'image (bruits ambiants comme une spatule ou un feu).
Voici le résultat réel (paramètres par défaut : 720p, 5 secondes, sans son) :
The fox turns its head toward the camera, its ears twitch, golden leaves drift down through the misty light
(En français : le renard tourne la tête vers la caméra, ses oreilles frémissent doucement, des feuilles dorées tombent dans une lumière brumeuse. Téléchargez la photo du renard comme première image ; le prompt accepte aussi le chinois, jusqu'à 1500 caractères.)
· 
wan2.6-flash/image-to-video, 720p, 5 secondes, 16:9, 1280×720, sans son, $0.145.Voir la vidéo complète →
Tarifs : les quatre combinaisons en un tableau
| Niveau | Par seconde | 5 secondes | 10 secondes | 15 secondes |
|---|---|---|---|---|
| 720p sans son (par défaut) | $0.029 | $0.145 | $0.29 | $0.435 |
| 720P · avec audio | $0.0575 | $0.2875 | $0.575 | $0.8625 |
| 1080P · sans son | $0.043 | $0.215 | $0.43 | $0.645 |
| 1080P · avec audio | $0.086 | $0.43 | $0.86 | $1.29 |
Tarifs actuels HiAPI, vérifiés le 22 octobre 2026. En prenant le niveau par défaut pour 1 : l'audio représente environ 2 fois, le passage en 1080p environ 1,5 fois, et les deux combinés environ 3 fois. Aucun débit en cas d'échec.
Deux façons de commencer
Navigateur en 3 étapes : ouvrez la page du modèle → téléchargez une image, écrivez la description de l'action → cliquez sur générer ; le niveau par défaut de 5 secondes coûte $0.145, prévisualisez directement le résultat dans la page, puis écrivez du code pour intégrer l'API à votre flux métier.
API en 3 étapes : POST /v1/tasks pour soumettre → récupérer le taskId → GET /v1/tasks/<taskId> jusqu'à success, puis télécharger.
curl : le premier appel
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": "wan2.6-flash/image-to-video",
"input": {
"prompt": "The fox turns its head toward the camera, its ears twitch, golden leaves drift down through the misty light",
"image_urls": ["https://static.hiapi.ai/gallery/2026/10/ced2dd4214889094.jpg"],
"duration": 5,
"resolution": "720p",
"audio": false
}
}'
Au tarif actuel, cet appel correspond à 720p sans son × 5 secondes = $0.145.
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": "wan2.6-flash/image-to-video",
"input": {
"prompt": "The fox turns its head toward the camera, its ears twitch, golden leaves drift down through the misty light",
"image_urls": ["https://example.com/your-image.jpg"],
"duration": 5,
"resolution": "720p",
"audio": False,
},
}
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")
mp4 = requests.get(video["url"], timeout=120) # adresse temporaire, à sauvegarder au plus vite
with open("output.mp4", "wb") as f:
f.write(mp4.content)
print("saved output.mp4")
Tableau des paramètres
| Champ | Obligatoire | Valeur | Description |
|---|---|---|---|
image_urls |
Oui | Exactement 1 | JPG / PNG / WebP, ≥256×256, ≤10MB ; le format détermine le format de sortie |
prompt |
Oui | 1–1500 caractères | Décrivez l'action, la caméra et l'ambiance ; en chinois ou en anglais |
duration |
Non | 5 / 10 / 15, 5 par défaut | Uniquement ces trois valeurs |
resolution |
Non | 720p / 1080p, 720p par défaut | |
audio |
Non | false par défaut | Audio synchronisé, facturé séparément (voir le tableau des tarifs) |
La présence de champs hors tableau dans le corps de la requête entraîne directement une erreur 400.
Erreurs que vous rencontrerez
| Code d'état | Signification | Que faire |
|---|---|---|
| 400 INVALID_REQUEST | Corps de requête invalide (image_urls ou prompt manquant, 2 images envoyées, duration à 7) |
Corrigez le corps de requête selon 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 une nouvelle Idempotency-Key |
En cas d'échec à l'état terminal, il peut aussi y avoir CONTENT_POLICY_VIOLATION, TASK_FAILED, TASK_TIMEOUT, etc. ; aucun débit en cas d'échec.
À vérifier avant la mise en production
- Callback : passez
"callback": {"url": "https://..."}au niveau supérieur du corps de requête pour être notifié automatiquement à l'état terminal. - Sauvegardez rapidement : l'URL de la vidéo dans
outputest temporaire, téléchargez-la dès que vous l'obtenez. - La qualité de l'image est la limite : au moins 256×256, pas plus de 10MB ; une grande image nette donne une vidéo nette.
- Pour un contenu vertical, envoyez une image verticale : il n'y a pas de paramètre de format, pour obtenir du 9:16, téléchargez une image verticale.
Questions fréquentes
Le format suit-il l'image d'entrée ?
Oui. Une image paysage donne du paysage, une image verticale du vertical, une image en 3:4 du 3:4 — aucun paramètre de ratio à transmettre.
Comment activer l'audio ?
Il faut transmettre explicitement audio: true pour avoir du son ; le prix est alors celui du niveau Sound On (environ 2 fois).
Peut-on transmettre une durée quelconque ?
Non. Seules les durées de 5 / 10 / 15 secondes sont possibles ; toute autre valeur entraîne une erreur 400.
Le prompt peut-il être en chinois ?
Oui. Le chinois et l'anglais sont acceptés, jusqu'à 1500 caractères ; décrivez l'action et la caméra, inutile de répéter la description de l'image. La facturation dépend uniquement de la résolution, de la durée et de l'activation de l'audio.
Combien de vidéos avec $10 ?
Au niveau par défaut (720p sans son, 5 secondes), une vidéo coûte $0.145 ; $10 permettent environ 68 vidéos.
Prochaine étape : prenez une photo de votre produit ou une image et animez-la sur la page du modèle ; pour quatre modèles de scénarios, consultez le guide des prompts.
Articles similaires
Voir tous les articles →-
Tutoriel
Comment appeler hailuo-2.3-fast/image-to-video via l'API HiAPI : curl et Python en pratique
La première requête exploitable du palier image-vers-vidéo rapide et économique — de l'ID du modèle au téléchargement du MP4
-
Tutoriel
Comment appeler hailuo-2.3/text-to-video via l'API HiAPI : curl, Python et exemples de requêtes exécutables
-
Tutoriel
Utiliser Kandinsky 6.0 Pro texte-vers-vidéo sur HiAPI : tutoriel curl et Python
Démonstration pratique axée sur la requête : construire l'appel du prompt au clip vidéo, soumettre la requête, interroger l'état d'achèvement et télécharger le résultat