Video
MiniMax H3 Max
Générez avec MiniMax H3 Max des clips de 5 à 15 secondes avec son en 480P ou 768P : texte vers vidéo, première et dernière image et références vers vidéo, au format officiel MiniMax, livrés sous forme de tâche.
MiniMax H3 Max est la variante de MiniMax H3 à génération plus rapide. Une requête crée l’image et le son ensemble : un clip de 5 à 15 secondes en 480P ou 768P avec ses propres dialogues, ambiance et effets. Le corps de requête suit le format officiel MiniMax avec l’ID de modèle minimax-h3-max. Envoyez-le, conservez l’identifiant de tâche renvoyé et récupérez la vidéo terminée dans la tâche. Les images clés et les références sont transmises sous forme d’URL.
ID de modèle
| ID de modèle | Entrées | Résolutions | Durée |
|---|---|---|---|
minimax-h3-max | texte, première et dernière image, images, vidéos et audio de référence | 480P, 768P | 5 à 15 secondes |
Consultez la page du modèle pour les prix actuels.
Exemple rapide
curl https://api.seedrouter.ai/v1/videos/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minimax-h3-max",
"content": [
{"type": "text", "text": "A small sailboat glides across a calm turquoise bay at sunrise, seagulls in the distance, the sound of water and wind. No text, no logos."}
],
"resolution": "768P",
"duration": 5,
"ratio": "16:9"
}'Point de terminaison
POST https://api.seedrouter.ai/v1/videos/generations| En-tête | Valeur |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
La réponse est une tâche ({"id": "task_...", "status": "processing"}), pas la vidéo terminée. Interrogez GET /v1/tasks/{task_id} pour obtenir le résultat. Conservez les clés API dans du code côté serveur.
Paramètres
| Champ | Type | Par défaut | Remarques |
|---|---|---|---|
model | string | obligatoire | minimax-h3-max |
content | array | requis | Le prompt et les éventuels médias, sous forme des éléments décrits ci-dessous. Exactement un élément text non vide. |
resolution | enum | obligatoire | 480P ou 768P. |
duration | integer | obligatoire | Tout entier de 5 à 15 secondes. |
ratio | enum | selon l'entrée | adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16. Obligatoire avec le texte seul, où adaptive n'est pas accepté. |
extra | object | omis | Réglages facultatifs d’extension du prompt. |
extra.prompt_expansion_mode | enum | balanced | disabled, balanced ou quality. Omettre l’objet ou la propriété conserve le réglage par défaut du modèle. |
content_filter | boolean | true | Le filtre de contenu de SeedRouter, décrit ci-dessous. N'est pas envoyé au modèle. |
Le schéma est strict : les champs inconnus sont rejetés, pas ignorés. callback_url n’est pas disponible ; interrogez plutôt la tâche. extra est un objet strict facultatif contenant uniquement prompt_expansion_mode. Tous les champs refusent null ; omettez plutôt les champs facultatifs.
Éléments de content
type | Élément | role |
|---|---|---|
text | {"type": "text", "text": "..."}, jusqu'à 7 000 caractères | aucun |
image_url | {"type": "image_url", "image_url": {"url": "https://..."}, "role": "..."} | first_frame, last_frame ou reference_image |
video_url | {"type": "video_url", "video_url": {"url": "https://..."}, "role": "reference_video"} | reference_video |
audio_url | {"type": "audio_url", "audio_url": {"url": "https://..."}, "role": "reference_audio"} | reference_audio |
Une seule image sans role est la première image. Avec plus d'une image, chaque image doit avoir un role.
Modes
Ce sont les éléments de content qui déterminent le mode ; il n'y a pas de champ de mode.
| Mode | content contient | ratio |
|---|---|---|
| Texte vers vidéo | un élément text | obligatoire, pas adaptive |
| Image vers vidéo | text plus une image first_frame et/ou last_frame | toute valeur est traitée comme adaptive : l'image fixe le format |
| Références vers vidéo | text plus toute combinaison de jusqu'à 9 éléments reference_image, 3 reference_video et 3 reference_audio | facultatif, adaptive par défaut |
Les images clés et les références ne peuvent pas être combinées dans une requête. La documentation officielle mentionne une entrée avec la dernière image seule, mais contient aussi l’exigence contradictoire de l’associer à une première image. Ce cas n’a pas été vérifié sur SeedRouter. Utilisez les deux images lorsqu’une image de fin est nécessaire.
{
"model": "minimax-h3-max",
"content": [
{"type": "text", "text": "The person in the photo speaks to camera: Follow the wind. Voice follows the reference audio."},
{"type": "image_url", "image_url": {"url": "https://example.com/person.jpg"}, "role": "reference_image"},
{"type": "audio_url", "audio_url": {"url": "https://example.com/voice.mp3"}, "role": "reference_audio"}
],
"resolution": "768P",
"duration": 6
}Entrées média
Chaque élément image, vidéo et audio est une URL HTTP(S) publique. Les data URI en base64 et les identifiants mm_file:// ne sont pas acceptés : téléversez le fichier sur votre propre stockage et transmettez son URL.
| Entrée | Format | Limites |
|---|---|---|
| Image | JPG, JPEG, PNG, WebP, HEIC, HEIF | 30 Mo maximum ; chaque côté de 256 à 5760 px ; largeur / hauteur de 0,4 à 2,5 |
| Vidéo | MP4, MOV (H.264 ou H.265) | 50 Mo maximum ; de 2 à 15 secondes chacune, 15 secondes au total ; chaque côté de 256 à 5760 px ; largeur / hauteur de 0,4 à 2,5 ; de 23,976 à 60 fps |
| Audio | WAV, MP3 | 15 Mo maximum ; de 2 à 15 secondes chacun, 15 secondes au total |
Les vidéos de référence sont mesurées à l'acceptation de la requête ; une vidéo dont la durée ne peut pas être lue est refusée sans aucun frais. Les autres limites sont vérifiées avant la génération, et une requête qui en enfreint une échoue sans frais.
Filtre de contenu
content_filter vaut true sauf si vous le définissez. Avec le filtre activé, la requête, son texte et ses médias, est vérifiée avant la génération. Une requête signalée échoue avec le code 60001 et n'est pas facturée. Réglez content_filter sur false pour ignorer la vérification ; le Playground du site le laisse toujours activé.
Facteurs de coût
Consultez la section prix du modèle pour les tarifs actuels. MiniMax H3 Max facture séparément les secondes de sortie générées et les secondes de vidéo de référence, selon la résolution de sortie. Les deux premières images sont gratuites ; chaque image suivante est facturée.
output seconds = reported generated seconds
input seconds = reported reference-video seconds
extra images = max(0, reported input image count − 2)
cost = output seconds × output rate
+ input seconds × reference-video rate
+ extra images × image rateLes durées des vidéos de référence sont additionnées et arrondies à la seconde entière la plus proche pour l’utilisation finale. Deux clips de 2,4 secondes représentent donc cinq secondes d’entrée. L’audio de référence est sans frais d’entrée. Première et dernière images comptent comme images : deux images clés seules n’ajoutent donc aucuns frais d’image.
L’estimation du Playground arrondit les durées de référence à la seconde supérieure pour couvrir le coût final possible. L’utilisation finale est facturée au tarif enregistré pour votre requête. Si le rapport d’utilisation complet manque, l’estimation acceptée s’applique. Consultez les coûts dans l’historique d’utilisation du compte ; les réponses publiques des tâches n’incluent pas les frais. Les tâches échouées ne sont pas facturées.
Schéma de sortie
L'envoi renvoie la tâche :
{"id": "task_...", "model": "minimax-h3-max", "status": "processing", "created_at": 1789689600}Récupérer la tâche
GET https://api.seedrouter.ai/v1/tasks/{task_id}Interrogez toutes les 10 à 20 secondes jusqu'à ce que status vaille completed ou failed. Un dépassement de délai réseau pendant l'interrogation ne signifie pas que la génération a échoué : conservez l'identifiant de tâche et reprenez la vérification. Ne créez pas une autre tâche pour vérifier l'avancement.
Tâche terminée
{
"id": "task_...",
"model": "minimax-h3-max",
"status": "completed",
"created_at": 1789689600,
"finished_at": 1789689740,
"output": {
"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4",
"resolution": "768P",
"ratio": "16:9",
"duration": 5
}
}ratio est le format dans lequel le clip a été créé, y compris celui choisi pour adaptive. La tâche contient la résolution, le format et la durée réels lorsqu’ils sont déclarés. Le JSON ci-dessus illustre la structure de réponse ; ce n’est pas un résultat de génération mesuré.
Erreurs
Les requêtes rejetées avant la création d'une tâche renvoient une erreur HTTP avec un objet error et ne sont pas facturées. Une tâche qui échoue après acceptation renvoie HTTP 200 lorsqu'on l'interroge, avec status: "failed" et un objet error.
Voir le catalogue d'erreurs commun pour les codes, les statuts HTTP et les conseils de reprise.
{
"id": "task_...",
"model": "minimax-h3-max",
"status": "failed",
"error": {
"code": 60001,
"message": "the request was blocked by content moderation"
}
}Si l'envoi lui-même dépasse le délai, vérifiez vos tâches avant de renvoyer : la première requête a peut-être été acceptée.
Conseils
- Décrivez ensemble le plan et les sons associés : sujet, lieu, caméra, lumière, dialogues et effets.
- Écrivez les dialogues dans le prompt et joignez un extrait audio de référence quand la voix doit le suivre.
- Créez une ébauche en
480P, puis choisissez768Psi vous avez besoin de plus de détails. Chaque nouvelle génération est une requête payante distincte. - Utilisez
extra: {"prompt_expansion_mode": "disabled"}pour un prompt déjà complet, ou choisissez l’extensionbalanced/quality. - Utilisez une première et une dernière image pour contrôler où un plan commence et se termine ; utilisez des références pour conserver un produit, une personne ou un mouvement.
- Ajoutez
no text, no logospour éviter les marques inventées.
Ressources liées
Sources du contrat
Les paramètres suivent la documentation MiniMax de génération vidéo. SeedRouter utilise son propre ID de modèle, des tâches asynchrones, des médias uniquement par URL et des résultats hébergés ; les callbacks et l’annulation sont indisponibles. content_filter est une extension SeedRouter.
