MiniMax
MiniMax H3 Max Turbo
minimax-h3-max-turbo/image-to-video
Modèle vidéo MiniMax optimisé pour la vitesse, prenant en charge la génération de vidéos à partir de texte et à partir d'images (première image et dernière image facultative), générant en une seule fois des clips de 1 à 15 secondes en 480P à 1080P, adapté à la production rapide de courtes vidéos marketing et au prévisualisation de storyboards
Essayer minimax-h3-max-turbo/image-to-video
Entrée
Créations
Voir toutes les créationsSortie
videoTarifs
minimax-h3-max-turbo/image-to-video per second
| Spécifications | Prix unitaire |
|---|---|
| 480P | $0.025 |
| 768P | $0.040 |
| 1080P | $0.080 |
Présentation
Générez un clip vidéo à partir d'une image unique utilisée comme première image, le canevas de sortie reprenant le ratio de l'image d'entrée. Idéal pour les développeurs souhaitant transformer une image statique en court-métrage animé : création rapide de contenus pour les réseaux sociaux, prévisualisation animée de storyboards publicitaires ou valorisation dynamique de visuels. Il est possible de contraindre l'image de fin avec une image de dernière image facultative, et de contrôler le résultat via le prompt, la durée et les paramètres de résolution.
Points clés
- Génération pilotée par la première image — importez une image comme première image ; le canevas vidéo de sortie reprend son ratio et conserve le point de départ de la composition.
- Contrainte de dernière image facultative — fournissez en plus une image de fin pour faire converger la dernière image de la vidéo vers l'image indiquée, idéal pour les transitions ou les arrêts sur image.
- Durée et résolution ajustables — la durée d'une génération peut aller de 1 à 15 secondes, avec un choix de résolution parmi 480P, 768P et 1080P.
- Graine contrôlable et reproductible — le paramètre seed permet de fixer la graine aléatoire, facilitant la reproduction ou l'ajustement fin d'une même évolution d'image en génération par lots.
Fonctionnalités
Image vers vidéo à partir de la première image : indiquez l'image de départ via image_url et générez une vidéo animée à l'aide du prompt ; le canevas de sortie suit le ratio de cette image, ce qui convient pour transformer une image statique en clip animé.
Contrainte de l'image de fin : en plus de la première image, vous pouvez fournir end_image_url comme image de fin afin que la dernière image de la vidéo se rapproche de l'image indiquée, pour des transitions ou des plans fixes.
Contrôle de la durée et de la résolution : duration peut être réglée entre 1 et 15 secondes ; la sortie réelle peut dépasser d'environ 0,7 seconde la durée demandée. resolution propose trois niveaux au choix — 480P, 768P, 1080P — le 1080P étant un agrandissement affiné basé sur une génération native en 768P.
Réglage de l'extension du prompt : prompt_expansion_mode peut valoir disabled, balanced ou quality, pour respectivement ignorer l'extension, obtenir un retour rapide ou consacrer environ 30 secondes à générer un prompt plus riche, afin de mieux contrôler les détails de génération.
Cas d'usage
- Animation de visuels pour les réseaux sociaux — les équipes marketing utilisent une photo produit ou une affiche comme première image et, avec un prompt court, génèrent rapidement une courte vidéo animée pour publication sur les réseaux sociaux ou comme matériel de fil d'actualité.
- Prévisualisation animée de storyboards publicitaires — les équipes de préproduction publicitaire ou audiovisuelle génèrent des clips de transition à partir d'images clés et d'une image de fin, comme storyboard animé de prévisualisation pour des présentations internes ou des références de tournage.
- Conversion de visuels en clips vidéo — les créateurs de contenu utilisent une photographie ou une illustration comme première image pour générer un court clip animé de quelques secondes, destiné à un portfolio ou à un plan de transition en montage vidéo.
- Création de plans de fin sur image fixe — en contraignant le début et la fin avec deux images (première et dernière), générez un clip passant de l'image de départ à l'image de fin indiquée, pour des effets d'arrêt sur image en ouverture ou en fermeture.
Limites et conseils de choix
L'image de départ image_url est obligatoire ; la génération à partir de texte seul n'est pas prise en charge. L'image de fin est une contrainte facultative et la convergence précise vers cette image n'est pas garantie. Le choix 1080P correspond à une sortie agrandie et affinée basée sur une génération native en 768P, et non à une génération native en 1080P. duration se règle de 1 à 15 secondes ; la sortie réelle peut dépasser d'environ 0,7 seconde la durée demandée. Le prompt est limité à 50 000 caractères et le lien d'image à 50 000 caractères. Le résultat généré ne garantit pas une cohérence absolue des personnages ni une reproduction exacte de l'image.
Nouveautés
Voir le journal des modifications →- Nouveau modèle MiniMax H3 Max Turbo est disponible : génération de vidéo à partir de texte et génération de vidéo à partir d'images de début et de fin
Questions fréquentes
Voir toutes les questions →-
Le 1080P de ce modèle est-il généré nativement ?
Ce n'est pas une génération native : le 1080P est obtenu par un raffinement dans l'espace latent à partir d'une source en 768P ; le niveau le plus élevé généré nativement par le modèle est 768P. Si vous avez des exigences strictes sur les détails de l'image, il est recommandé d'évaluer sur la base d'une génération native en 768P, ou de passer à un niveau prenant en charge un master 2K.
-
La génération de vidéo à partir d'une image permet-elle d'utiliser une image de référence pour verrouiller le personnage ?
La génération de vidéo à partir d'une image ne prend actuellement pas en charge les images de référence. image_url sert uniquement d'image de départ : le canevas de génération suit cette image, et il n'est pas possible d'utiliser une image de référence, un extrait de référence ou un fichier audio pour verrouiller le personnage et le style. Pour les scénarios nécessitant une cohérence du personnage, il convient d'utiliser un niveau prenant en charge les images de référence pour la génération de vidéo.
-
Comment configurer les première et dernière images pour contrôler le point d'arrivée du mouvement de caméra ?
Utilisez image_url pour spécifier la première image et end_image_url (facultatif) pour spécifier la dernière image ; le modèle interpolera le mouvement entre les deux. La première image détermine l'ensemble du canevas de sortie, donc la composition et le ratio de la dernière image doivent être proches de ceux de la première, sinon l'interpolation risque de produire des déformations.
-
La durée d'une vidéo générée peut-elle dépasser 15 secondes ?
Une génération unique dure au maximum 15 secondes ; il est impossible de produire un clip plus long en une seule fois. La sortie réelle peut être environ 0,7 seconde plus longue que la duration indiquée. Pour obtenir une vidéo plus longue, générez-la par segments de plan, puis assemblez-les.
Créer une tâche de génération
https://api.hiapi.ai/v1/tasks En-têtes
AuthorizationstringRequisClé API du compte. Requise sur chaque requête. Exemple : Bearer YOUR_HIAPI_API_KEY. Obtenir une clé API
Content-TypestringOptionnelLe corps de la requête est toujours analysé en JSON ; s'il est envoyé, seul application/json (charset facultatif) est accepté — toute autre valeur renvoie 415. Exemple : application/json.
Idempotency-KeystringOptionnelClé d'idempotence, jusqu'à 255 octets. Les reprises avec la même clé du même compte ne créent la tâche qu'une seule fois ; les rejeux renvoient le taskId d'origine.
En cas de timeout réseau ou de relance automatique du client, la même clé ne crée la tâche qu'une seule fois, sans double facturation (portée = le compte de la clé API). Utilisez un identifiant métier unique (ex. "order-42") ; les rejeux renvoient le taskId d'origine et les clés expirent 24 h après la première requête. La matrice complète des scénarios est dans la présentation de l'API asynchrone unifiée.
Corps
modelstringRequisValeur fixe actuelle : minimax-h3-max-turbo/image-to-video
routestringOptionnelValeur fixe actuelle : default
inputobjectRequis
Objet de paramètres métier pour minimax-h3-max-turbo/image-to-video et la route default — voir le tableau des paramètres ci-dessous.
seedintegerOptionnelGraine aléatoire servant à contrôler le caractère aléatoire du résultat généré ; si elle est omise, une graine aléatoire est choisie automatiquement.
promptstringRequisminLength 1maxLength 50000Prompt textuel utilisé pour la génération de la vidéo.
durationnumberOptionnelDéfaut: 5min 1max 15Durée de la vidéo, en secondes, 5 secondes par défaut ; la sortie réelle peut dépasser la valeur demandée d'au plus environ 0,7 seconde. Lorsque target_audio_url est fourni, la durée doit être d'au moins 2 secondes.
image_urlstringRequismaxLength 50000URL de l'image utilisée comme première image ; le canevas de sortie suivra cette image.
resolutionstringOptionnelDéfaut: "768P"Résolution de génération, 768P par défaut ; il est également possible de spécifier 1080P, auquel cas un raffinement dans l'espace latent est effectué à partir de la source native 768P.
480P768P1080Pend_image_urlstringOptionnelFacultatif, URL de l'image utilisée comme dernière image.
target_audio_urlstringOptionnelFacultatif, URL d'un extrait audio à fixer sur la musique de fond générée ; cet audio doit durer au moins 2 secondes et ne pas dépasser 15 Mo.
prompt_expansion_modestringOptionnelDéfaut: "balanced"Niveau d'effort consacré à la réécriture du prompt avant la génération, balanced par défaut : disabled ignore l'extension du prompt, balanced répond en environ 1 seconde, quality prend jusqu'à environ 30 secondes pour générer un prompt plus riche.
disabledbalancedqualitycallbackobjectOptionnel
Configuration de notification d'état terminal. Sans elle, aucun callback — interrogez la tâche vous-même.
Fournissez callback.url à la création et HiAPI envoie un POST à votre service à l'état terminal — plus besoin de polling. Le corps du rappel reprend la structure du détail de tâche ; vérification de signature, relances et idempotence sont décrits dans la présentation de l'API asynchrone unifiée.
urlstringRequisObligatoire si callback est présent. Un POST est envoyé vers cette URL à l'état terminal ; doit être une URL http(s) valide.
whenstringOptionnelDéfaut: "final"Seul final est pris en charge pour l'instant — notifié sur success et fail.
finalstoragestringOptionnelDéfaut: "temp"Niveau de stockage des artefacts : temp (par défaut, ~7 jours) ou persistent (long terme, facturé au volume). Solde insuffisant ou dépassement de limite ⇒ rétrogradation silencieuse en temp ; le niveau effectif figure dans la réponse de détail.
temppersistentExemples de requête
# Soumet une tâche asynchrone ; renvoie immédiatement un taskId (n'attend pas la génération)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minimax-h3-max-turbo/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
}' 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: "minimax-h3-max-turbo/image-to-video",
input: {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
}),
});
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": "minimax-h3-max-turbo/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_url": "…",
"resolution": "768P",
"prompt_expansion_mode": "balanced"
}
},
)
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"
} Obtenir le détail de la tâche
https://api.hiapi.ai/v1/tasks/:id Champs de réponse
taskIdstringRequisIdentifiant de tâche, toujours préfixé tk-hiapi-.
modelstringRequisNom complet résolu du modèle. Les tâches envoyées avec le paramètre route renvoient base@route (ex. gpt-image-2/text-to-image@ext) ; sinon identique au nom fourni.
routestringOptionnelPrésent uniquement si le paramètre route explicite a été utilisé ; renvoie la valeur soumise.
statusstringRequisStatut de la tâche.
queued En file, pas encore démarrée.
handling En cours de traitement.
archiving Traitement terminé, préparation des artefacts.
success Terminal : terminé, artefacts disponibles (output renvoyé).
fail Terminal : échec (error renvoyé).
Après soumission, suivez status : success et fail sont terminaux, le reste non terminal. Interrogez toutes les 1–3 s jusqu'à l'état terminal. En cas de succès, téléchargez les artefacts via output[].url et transférez-les avant expireAt ; pour une conservation longue durée, indiquez storage: "persistent" à la création.
creatednumberRequisDate de création de la tâche (secondes Unix).
completednumberRequisSecondes Unix de l'état terminal ; 0 tant que non terminal.
outputarrayOptionnel
Présent uniquement si status == success. Liste d'artefacts — toujours un tableau ; une tâche peut renvoyer plusieurs types à la fois (ex. video + first_frame).
Array [ object ]
Éléments du tableau
urlstringRequisURL de l'artefact, téléchargeable directement.
typestringRequisValeurs possibles actuelles : video, image, audio, first_frame, last_frame, thumbnail ; d'autres pourront s'ajouter.
expireAtnumberRequisSecondes Unix de disponibilité de l'artefact ; téléchargez ou transférez avant l'expiration.
errorobjectOptionnel
Présent uniquement si status == fail.
codestringRequisCode d'erreur métier.
messagestringRequisDescription de l'erreur.
Exemples de réponse
Succès
{
"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 cours (non terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Échec
{
"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"
}
}
} Articles
Voir tous les articles →Modèles associés
Voir tous les modèles →Même type
-
Gemini Omni 1.2 Google $0.023 /seconde -
Kling 4.0 Flash Kuaishou $0.122 /seconde -
HeyGen Avatar V HeyGen $0.150 /seconde -
HappyHorse 1.1 Alibaba $0.160 /seconde -
P-Video 2 Pro Replace Pruna AI $0.036 /seconde -
Vidu Q3 Vidu $0.149 /seconde -
Runway Gen 4.5 Runway $0.172 /seconde -
Kling 2.5 Kuaishou $0.090 /seconde -
HappyHorse 1.0 Alibaba $0.168 /seconde -
Veo 3.1 Lite Google $0.060 /seconde -
Wan 2.7 Video Alibaba $0.100 /seconde -
Grok Imagine 1.5 Lite xAI $0.029 /seconde



