> ## Documentation Index
> Fetch the complete documentation index at: https://gccai.heqingsong.uk/llms.txt
> Use this file to discover all available pages before exploring further.

# Génération vidéo MiniMax-H3-Max

>  - Version rapide de MiniMax Video Generation V2 avec soumission asynchrone
- Prend en charge le texte-vers-vidéo, le contrôle des images de début/fin et les références multimodales
- Prend en charge 480P / 768P / 1080P, des durées de 5 à 15 secondes et une piste audio
- Accepte des images, vidéos et audios de référence ; sans 2K ni images intermédiaires 

> [!NOTE]
>
> **Choix du modèle :** `MiniMax-H3-Max` convient à la génération rapide depuis un texte, au contrôle des images de début/fin et aux références multimodales en 480P, 768P ou 1080P. Pour la 2K ou les images intermédiaires, utilisez [MiniMax-H3](https://gccai.heqingsong.uk/fr/api-reference/videos/minimax-h3/generation.md).

```bash cURL theme={null}
curl --request POST \
  --url https://gccai.heqingsong.uk/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "MiniMax-H3-Max",
    "prompt": "Un détective en imperméable se retourne dans une rue néon sous la pluie. La caméra avance lentement.",
    "duration": 5,
    "resolution": "768P",
    "aspect_ratio": "16:9"
  }'
```

```python Python theme={null}
import requests

response = requests.post(
    "https://gccai.heqingsong.uk/v1/videos/generations",
    headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
    json={
        "model": "MiniMax-H3-Max",
        "prompt": "Un détective se retourne dans une rue néon sous la pluie.",
        "duration": 5,
        "resolution": "768P",
        "aspect_ratio": "16:9",
    },
)
print(response.json())
```

```json 200 theme={null}
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
    }
  ]
}
```

```json 400 theme={null}
{
  "error": {
    "code": 400,
    "message": "Paramètres de requête non valides",
    "type": "invalid_request_error"
  }
}
```

```json 401 theme={null}
{
  "error": {
    "code": 401,
    "message": "Échec de l'authentification. Vérifiez votre clé API.",
    "type": "authentication_error"
  }
}
```

```json 402 theme={null}
{
  "error": {
    "code": 402,
    "message": "Solde du compte insuffisant",
    "type": "payment_required"
  }
}
```

## Authentification

**Authorization** `string` *required*

Tous les endpoints nécessitent un Bearer Token. Obtenez votre clé sur la [page des clés API](https://gccai.heqingsong.uk/keys).

```
Authorization: Bearer YOUR_API_KEY
```

## Choisir le bon modèle

| Capacité | `MiniMax-H3` | `MiniMax-H3-Max` |
| - | - | - |
| Résolution | `2K` / `768P`, par défaut `2K` | `480P` / `768P` / `1080P`, par défaut `768P` |
| Durée | 4 à 15 secondes | 5 à 15 secondes |
| Texte-vers-vidéo | Pris en charge | Pris en charge |
| Première / dernière image | Pris en charge | Pris en charge |
| Image intermédiaire | Pris en charge | Non pris en charge |
| Références multimodales | Image, vidéo et audio | Image, vidéo et audio |
| Coût des images d'entrée | 5 premières gratuites | Les 2 premières images sont gratuites ; les suivantes sont facturées par image |
| Tarif des vidéos de référence | Selon la durée en entrée, au même tarif que la sortie de même résolution | Selon la durée en entrée, à un tarif distinct |
| Filigrane AIGC | Pris en charge | Disponible en 480P / 768P ; indisponible en 1080P |

> [!WARNING]
>
> `MiniMax-H3-Max` ne prend pas en charge la 2K et sa sortie ne peut pas servir de source à [Regeneration](https://gccai.heqingsong.uk/fr/api-reference/videos/minimax-h3/regeneration.md).

## Modes de génération

Les champs de la requête déterminent automatiquement le mode ; n'envoyez pas de champ `mode`.

| Mode | Déclencheur | Comportement |
| - | - | - |
| Texte-vers-vidéo (T2V) | Uniquement `prompt` et les champs communs | Génération depuis le texte |
| Image-vers-vidéo (I2V) | `first_frame_image` / `last_frame_image` ou rôles équivalents dans `image_with_roles` | Contrôle de la première image, de la dernière ou des deux |
| Références multimodales (R2V) | `image_urls` / `video_urls` / `audio_urls`, ou `reference_image` dans `image_with_roles` | Génération depuis des images, vidéos et audios de référence, y compris en 1080P |

> [!WARNING]
>
> Les images de début/fin ne peuvent pas être combinées aux références. Un audio de référence exige au moins une image ou vidéo de référence. Une combinaison invalide renvoie HTTP 400 de manière synchrone, sans création ni facturation de tâche.

## Paramètres de requête

**model** `string` *required*

Valeur fixe : `MiniMax-H3-Max`. La casse n'est pas prise en compte ; `minimax-h3-max` est également accepté.

**prompt** `string` *required*

Description vidéo non vide, obligatoire dans tous les modes. Maximum : `7000` caractères.

**duration** `integer` (default: 5)

Durée en secondes : entier de `5` à `15`, valeur par défaut `5`. Une durée de 4 secondes n'est pas prise en charge.

**resolution** `string` (default: 768P)

Résolution de sortie : `480P`, `768P` (par défaut) ou `1080P`.

En `1080P`, omettez `watermark` et son alias `aigc_watermark`, même si leur valeur est `false`.

> [!WARNING]
>
> `2K`, `1440P` et `2048P` ne sont pas pris en charge. Une valeur non valide renvoie HTTP 400 sans réduction silencieuse.

**aspect\_ratio** `string`

Format de sortie. Les alias `size` et `ratio` sont également acceptés.

Valeurs T2V : `21:9`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`.

* T2V sans valeur ou avec `adaptive` : retour à `16:9`
* I2V : déterminé par l'image d'entrée ; ce champ est ignoré
* Références multimodales : facultatif, valeur par défaut `adaptive` ; un ratio explicite est également possible

**first\_frame\_image** `string`

URL publique de l'image utilisée comme première image de la vidéo.

**last\_frame\_image** `string`

URL publique de la dernière image. Peut être utilisée seule ou avec `first_frame_image`.

**image\_with\_roles** `object[]`

Tableau d’images avec rôles, en remplacement de `first_frame_image`, `last_frame_image` ou `image_urls`.

**Élément image\_with\_roles**

**url** `string` *required*

URL publique de l'image

**role** `string`

Rôles pris en charge :

* `first_frame` ; alias `first` et `start`
* `last_frame` ; alias `last`, `end_frame` et `tail`
* `reference_image` : image de référence ; alias `reference` ; un rôle vide est traité comme une image de référence

Au plus une image de début et une de fin. Les références de ce tableau et de `image_urls` totalisent au maximum `9` images. Ne mélangez pas les rôles de début/fin et de référence.

**image\_urls** `string[]`

Tableau d’URL publiques d’images de référence. Au maximum `9` images avec les références de `image_with_roles`. Toutes sont des références, jamais automatiquement des images de début/fin. Utilisez `first_frame_image` ou le rôle `first_frame` pour contrôler le début.

**video\_urls** `string[]`

Tableau d’URL publiques de vidéos de référence ; `video_url` (string) convient aussi à une vidéo unique. Au maximum `3` clips de `2` à `15` secondes chacun, pour un total vidéo de `15` secondes maximum.

La durée des vidéos de référence est lue à la soumission pour la facturation. Si elle ne peut pas être lue, HTTP 400 est renvoyé de manière synchrone, sans création ni facturation de tâche.

**audio\_urls** `string[]`

Tableau d’URL publiques d’audios de référence ; `audio_url` (string) convient aussi à un clip unique. Au maximum `3` clips de `2` à `15` secondes chacun, pour un total audio de `15` secondes maximum. Au moins une image ou vidéo de référence est obligatoire ; l’audio seul est interdit.

**watermark** `boolean` (default: false)

Ajoute un filigrane AIGC. Alias : `aigc_watermark`.

Le filigrane est disponible uniquement en `480P` / `768P`. En `1080P`, omettez `watermark` et son alias `aigc_watermark`, même si leur valeur est `false`.

**webhook** `string`

Reçoit une notification lorsque la tâche se termine par un succès ou un échec.

> [!NOTE]
>
> Utilisez `webhook` et non `callback_url` de MiniMax. La passerelle réserve `callback_url` à son usage interne.

## Contraintes des paramètres

Les paramètres ou combinaisons invalides suivants renvoient HTTP 400 avant création et facturation de la tâche :

| Paramètre / valeur | Raison |
| - | - |
| Images de début/fin combinées aux références | I2V et R2V sont mutuellement exclusifs |
| Plus de `9` images de référence ou plus de `3` vidéos ou audios de référence | Nombre de médias dépassé |
| Audio de référence seul | Image ou vidéo de référence obligatoire |
| `resolution: "2K"` | Uniquement `480P`, `768P` et `1080P` |
| `duration: 4` ou supérieure à `15` | Uniquement 5 à 15 secondes |

Chaque vidéo ou audio de référence doit durer de 2 à 15 secondes. Les totaux vidéo et audio sont calculés séparément, chacun limité à 15 secondes. Découpez les médias trop longs avant soumission ; ils ne constituent pas des entrées valides.

> [!WARNING]
>
> En `1080P`, omettez `watermark` et son alias `aigc_watermark`, même si leur valeur est `false`.

> [!TIP]
>
> Pour la 2K, les images intermédiaires ou une vidéo de 4 secondes, utilisez [MiniMax-H3](https://gccai.heqingsong.uk/fr/api-reference/videos/minimax-h3/generation.md) et adaptez les paramètres.

## Limites des médias en entrée

Le corps total de la requête ne doit pas dépasser 64 Mo. Utilisez des URL publiques pour les images, vidéos et audios, sans Base64.

### Images

| Élément | Limite |
| - | - |
| Formats | JPG / JPEG / PNG / WEBP / HEIC / HEIF |
| Par fichier | ≤ 30 Mo |
| Largeur et hauteur | 256–5760 px |
| Format largeur / hauteur | 0,4–2,5 |
| Nombre | Au maximum 1 image de début, 1 de fin et 9 références ; ne pas combiner images de début/fin et références |

### Vidéos de référence

| Élément | Limite |
| - | - |
| Formats | MP4 / MOV, H.264 / H.265 |
| Par fichier | ≤ 50 MB |
| Nombre | ≤ 3 |
| Durée par clip | 2–15 s |
| Durée totale | ≤ 15 s |
| Largeur et hauteur | 256–5760 px |
| Format largeur / hauteur | 0.4–2.5 |
| Fréquence d’images | 23.976–60 fps |

### Audios de référence

| Élément | Limite |
| - | - |
| Formats | WAV / MP3 |
| Par fichier | ≤ 15 MB |
| Nombre | ≤ 3 |
| Durée par clip | 2–15 s |
| Durée totale | ≤ 15 s |

Un audio de référence exige une image ou vidéo de référence. Les durées vidéo et audio sont totalisées séparément, chacune limitée à 15 secondes.

Des médias non conformes peuvent provoquer un échec pendant la génération ; les tâches échouées sont remboursées automatiquement.

## Exemples

### Image-vers-vidéo avec première image

```json theme={null}
{
  "model": "MiniMax-H3-Max",
  "prompt": "La caméra avance lentement tandis que la vapeur monte.",
  "first_frame_image": "https://cdn.example.com/ramen.png",
  "duration": 5,
  "resolution": "480P"
}
```

### Image-vers-vidéo avec première et dernière images

```json theme={null}
{
  "model": "MiniMax-H3-Max",
  "prompt": "La scène passe progressivement du matin au coucher du soleil.",
  "first_frame_image": "https://cdn.example.com/morning.png",
  "last_frame_image": "https://cdn.example.com/sunset.png",
  "duration": 8,
  "resolution": "768P"
}
```

### Texte-vers-vidéo en 1080P

En `1080P`, omettez `watermark` et son alias `aigc_watermark`, même si leur valeur est `false`.

```json theme={null}
{
  "model": "MiniMax-H3-Max",
  "prompt": "Coucher de soleil sur la côte, vagues douces sur le sable, travelling avant lent, rendu cinématographique.",
  "duration": 5,
  "resolution": "1080P",
  "aspect_ratio": "16:9"
}
```

### Génération par références multimodales

Chaque vidéo ou audio de référence doit durer de 2 à 15 secondes. Les totaux vidéo et audio sont calculés séparément, chacun limité à 15 secondes. Découpez les médias trop longs avant soumission ; ils ne constituent pas des entrées valides.

```json theme={null}
{
  "model": "MiniMax-H3-Max",
  "prompt": "Le personnage de l’image de référence court dans la scène de la vidéo de référence au rythme de l’audio de référence.",
  "image_urls": [
    "https://cdn.example.com/role.png"
  ],
  "video_urls": [
    "https://cdn.example.com/scene.mp4"
  ],
  "audio_urls": [
    "https://cdn.example.com/beat.mp3"
  ],
  "duration": 6,
  "resolution": "1080P",
  "aspect_ratio": "16:9"
}
```

## Consulter une tâche

La soumission renvoie un `task_id`. Interrogez [l'état de la tâche](https://gccai.heqingsong.uk/fr/api-reference/tasks/status.md) toutes les 5 à 10 secondes et utilisez un délai client de 15 minutes.

| `status` | Signification |
| - | - |
| `pending` | Soumise ou en file d'attente |
| `processing` | Génération en cours |
| `completed` | URL vidéo dans `result.videos[0].url` |
| `failed` | Consultez `error.message` ; remboursement automatique |

> [!NOTE]
>
> Les URL générées expirent généralement après environ 24 heures. Téléchargez rapidement le résultat.

## Tarification

Le coût total comprend la vidéo générée, les images supplémentaires et les vidéos de référence :

```text theme={null}
Coût total = tarif de génération par seconde × durée de sortie
           + tarif par image supplémentaire × max(0, nombre d’images en entrée − 2)
           + tarif vidéo de référence par seconde × durée totale des vidéos de référence
```

Images de début, de fin et de référence sont comptées ensemble. Les 2 premières sont gratuites, les suivantes sont facturées par image. Les vidéos de référence totalisent au maximum 15 secondes.

| Élément | Tarif |
| - | - |
| Vidéo 1080P | Selon la tarification du modèle |
| Vidéo 768P | Selon la tarification du modèle |
| Vidéo 480P | Selon la tarification du modèle |
| Images d'entrée | Les 2 premières images sont gratuites ; les suivantes sont facturées par image; Selon la tarification du modèle |
| Vidéos de référence | Facturation par seconde en entrée selon la tarification du modèle ; varie selon la résolution de sortie, indépendamment du tarif de génération |
| Audios de référence | **Gratuit** |

| Exemple | Coût |
| - | - |
| 768P / 5s | 768P tarif de génération × 5 |
| 768P / 10s | 768P tarif de génération × 10 |
| 480P / 10s | 480P tarif de génération × 10 |
| 480P / 15s | 480P tarif de génération × 15 |
| 768P / 5s + Images × 3 | 768P tarif de génération × 5 + tarif par image supplémentaire × 1 |
| 480P / 10s + Vidéos de référence (12s) | 480P tarif de génération × 10 + 480P tarif vidéo de référence × 12 |
| 1080P / 5s + Images × 2 + Audios de référence | 1080P tarif de génération × 5 |

Tous les tarifs dépendent de la tarification du modèle. Dans l’exemple 1080P avec 2 images de référence et un audio de référence, images et audio sont gratuits.

Le montant estimé est réservé à la soumission. Les tâches échouées sont intégralement remboursées ; le champ `cost` de la tâche fait foi.

## Erreurs

| Scénario | Résultat |
| - | - |
| `prompt` vide ou supérieur à 7000 caractères | 400 ; aucune tâche |
| `duration` hors de 5–15 | 400 ; aucune tâche |
| `resolution` non prise en charge | 400 ; aucune tâche |
| Images de début/fin combinées aux références / Audio de référence seul | 400 ; aucune tâche |
| Plus de `9` images de référence ou plus de `3` vidéos ou audios de référence | 400 ; aucune tâche |
| Impossible de lire la durée des vidéos de référence | 400 ; aucune tâche |
| Rôle d’image invalide ou plusieurs images pour un même rôle de début/fin | 400 ; aucune tâche |
| Solde insuffisant | 402 |
| Rejet de sécurité du contenu | 422 |
| Limite de débit | 429 ; réessayer avec backoff |

Un échec de génération renvoie `status = failed` et `error.message`, avec remboursement automatique.

## Response

**code** `integer`

Code d'état ; 200 en cas de succès

**data** `array`

Résultat de soumission contenant l'état initial et l'ID de tâche

**Élément du tableau**

**status** `string`

Initialement `submitted`

**task\_id** `string`

Identifiant unique pour consulter la progression et le résultat


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.