Video
Gemini Omni 1.2 Flash
Générez des vidéos Gemini Omni 1.2 Flash de 3–15 secondes avec son natif à partir de texte, d'images, d'une première et d'une dernière image ou de références, ou modifiez et prolongez une vidéo, de 360p à 4K.
Gemini Omni 1.2 Flash est le modèle vidéo multimodal de Google pour une génération rapide, la modification par conversation et le contrôle cinématographique (mis à jour en novembre 2026). Un seul ID de modèle couvre le texte vers vidéo, l'image vers vidéo, l'interpolation entre première et dernière image, les références du sujet à partir d'au plus 10 images, la modification et le prolongement d'une vidéo. Chaque clip possède un son natif, dure 3–15 secondes et est rendu en 360p, 720p, 1080p ou 4K. Envoyez la requête, conservez l'identifiant de tâche renvoyé et récupérez la vidéo terminée dans la tâche. Les fichiers multimédias sont transmis sous forme d'URL.
ID de modèle
| ID de modèle | Modes | Résolutions | Durée |
|---|---|---|---|
gemini-omni-1.2-flash | texte, image, images clés, références, modification, prolongement | 360p, 720p, 1080p, 4k | 3–15 secondes |
Consultez la page du modèle pour les tarifs actuels.
Exemple rapide
curl https://api.seedrouter.ai/v1/videos/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-omni-1.2-flash",
"prompt": "A glass marble rolls fast along a wooden chain-reaction track through a sunlit workshop, one continuous smooth tracking shot. No text, no logos.",
"resolution": "720p",
"duration": 10,
"aspect_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 le résultat. Conservez les clés API dans le code côté serveur.
Paramètres
| Champ | Type | Par défaut | Notes |
|---|---|---|---|
model | chaîne | obligatoire | gemini-omni-1.2-flash |
prompt | chaîne | obligatoire | Requis dans chaque mode : le plan, le changement pour une modification, ou la suite pour un prolongement. Décrivez aussi le son ; placez les instructions négatives ici. |
duration | entier | 10 | 3–15 secondes. Au plus 10 avec une première et une dernière image et pour un prolongement (la partie ajoutée). Ignoré lors d'une modification, qui conserve la durée source. |
resolution | énumération | 720p | 360p, 720p, 1080p ou 4k (2160p signifie 4k), sans distinction de casse. 1080p et 4k sont mis à l'échelle depuis une résolution inférieure. |
aspect_ratio | énumération | 16:9 | 16:9 ou 9:16. |
image_urls | liste d'URL | aucun | Une image sert de première image ; plusieurs servent de références pour le sujet. Jusqu'à 10 images au total, images clés et images avec rôles comprises. |
first_frame_image | URL | aucun | Le clip s'ouvre sur cette image ; avec last_frame_image, le modèle interpole entre les deux. |
last_frame_image | URL | aucun | Le clip se termine sur cette image. Nécessite une première image. |
image_with_roles | liste d'objets | aucun | {"url", "role"} avec le rôle first_frame, last_frame ou tout autre rôle pour une référence. Fournissez les images clés de cette façon ou avec les deux champs d'images clés, pas les deux. |
video_urls | liste d'URL | aucun | Un clip de 15 secondes au maximum à modifier ou prolonger. |
omni_reference_task_type | énumération | auto | auto, edit, extend, reference, text_to_video, image_to_video ou reference_to_video. |
extend_from_task_id | chaîne | aucun | L'ID d'une de vos tâches gemini-omni-1.2-flash terminées, pour modifier ou prolonger sa vidéo sans la téléverser. |
Chaque clip est livré avec du son ; il n'y a pas de commutateur de son. Il n'y a ni negative_prompt, ni seed, ni entrée audio, ni callback_url. Le schéma est strict : les champs inconnus sont rejetés plutôt qu'ignorés.
Modes
| Mode | Comment le sélectionner |
|---|---|
| Texte vers vidéo | Aucune image ni vidéo. |
| Image vers vidéo | Une image dans image_urls, ou une première image. |
| Première et dernière image | first_frame_image et last_frame_image, ou les deux rôles. Au plus 10 secondes. |
| Références | Plusieurs images dans image_urls, ou des rôles de référence ; omni_reference_task_type: "reference" pour le sélectionner explicitement. |
| Modification | Une vidéo dans video_urls ou extend_from_task_id ; auto ou edit. |
| Prolongement | Une vidéo comme ci-dessus et omni_reference_task_type: "extend". Ajoute jusqu'à 10 secondes. |
Une vidéo en entrée déclenche une modification sauf si vous demandez extend ; avec une vidéo, reference, text_to_video, image_to_video et reference_to_video sont refusés.
Première et dernière image
{
"model": "gemini-omni-1.2-flash",
"prompt": "Smooth transition, the camera slowly pushes in.",
"first_frame_image": "https://example.com/start.jpg",
"last_frame_image": "https://example.com/end.jpg",
"duration": 8
}Modification
{
"model": "gemini-omni-1.2-flash",
"prompt": "Make the violin invisible. Keep everything else the same.",
"video_urls": ["https://example.com/clip.mp4"]
}La modification conserve la durée source ; duration n'a aucun effet. Les instructions courtes et précises fonctionnent le mieux ; pour un changement localisé, ajoutez « Conservez tout le reste à l'identique ».
Prolonger une tâche précédente
{
"model": "gemini-omni-1.2-flash",
"prompt": "The camera keeps panning across the mountains.",
"extend_from_task_id": "task_...",
"omni_reference_task_type": "extend",
"duration": 8
}Le résultat contient l'original suivi de la nouvelle partie ; les nouvelles secondes sont facturées, plus un huitième de la durée source. Pour prolonger votre propre clip, envoyez-le dans video_urls au lieu de extend_from_task_id.
Entrées multimédias
Les images et vidéos sont des URL HTTP(S) publiques. Les URI de données base64 ne sont pas acceptées : chargez vos fichiers vers votre propre stockage et transmettez leurs URL. La vidéo à modifier ou prolonger doit durer au plus 15 secondes ; sa durée est lue lors de l'acceptation de la requête, et une vidéo dont la durée ne peut pas être lue est rejetée avant toute facturation.
Dimensions de facturation
Consultez la section tarification du modèle pour les tarifs actuels. Gemini Omni 1.2 Flash est facturé à la seconde de vidéo, à un tarif défini par la résolution :
text, image, frames, references: cost = duration × rate
edit: cost = (source + source / 8) × rate
extend: cost = (added seconds + source / 8) × ratesource est la durée des images de la vidéo d'entrée, arrondie à la seconde supérieure, mesurée lors de l'acceptation de la requête : le montant réservé est donc le montant facturé ; le huitième couvre la lecture de la vidéo d'entrée. Exemples en 720p : modifier un clip de 6,2 secondes est facturé 7 + 7/8 = 7,875 secondes ; prolonger un clip de 8 secondes de 4 secondes est facturé 4 + 1 = 5 secondes. Les tâches échouées ne sont pas facturées.
Schéma de sortie
La soumission retourne la tâche :
{"id": "task_...", "model": "gemini-omni-1.2-flash", "status": "processing", "created_at": 1789689600}Récupère la tâche
GET https://api.seedrouter.ai/v1/tasks/{task_id}Interrogez toutes les 10–20 secondes jusqu'à ce que status soit completed ou failed. Un délai d'attente réseau lors de 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 la progression.
Tâche complétée
{
"id": "task_...",
"model": "gemini-omni-1.2-flash",
"status": "completed",
"created_at": 1789689600,
"finished_at": 1789689800,
"output": {
"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"
}
}Chaque vidéo porte le filigrane invisible SynthID de Google. Lors de nos tests, les clips de 5–8 secondes en 720p sont revenus en MP4 (H.264) à 1280 × 720 avec une piste AAC stéréo, 66–86 secondes après la soumission ; une modification d'un clip de 3 secondes est revenue avec une durée de 3 secondes.
Erreurs
Les requêtes rejetées avant la création d’une tâche retournent une erreur HTTP avec un objet error et ne sont pas facturées. Une tâche qui échoue après acceptation retourne HTTP 200 lors de la requête, avec status: "failed" et un objet error.
Consultez le catalogue d'erreurs partagé pour les codes, les statuts HTTP et les conseils de nouvelle tentative.
{
"id": "task_...",
"model": "gemini-omni-1.2-flash",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}Si la soumission elle-même expire, vérifiez vos tâches avant de soumettre à nouveau : la première requête a peut-être été acceptée.
Conseils
- Décrivez le sujet, le lieu, le mouvement de caméra, la lumière et le son ; l'audio du clip suit le prompt.
- Faites un brouillon en
360p, puis générez le plan retenu en1080pou4kavec la même requête. - Pour une modification, changez une seule chose à la fois et précisez ce qui doit rester identique.
- Ajoutez
no text, no logospour éviter les marques inventées.
