Générer une vidéo avec Veo

L'API Gemini donne accès à Veo 2, le modèle de génération vidéo de pointe de Google. Veo est conçu pour vous aider à créer des applications d'IA de nouvelle génération qui transforment les requêtes et les images des utilisateurs en éléments vidéo de haute qualité.

Ce guide vous aidera à vous lancer avec Veo à l'aide de l'API Gemini.

À propos de Veo

Veo est le modèle de génération de vidéos le plus performant de Google à ce jour. Il génère des vidéos dans un large éventail de styles cinématographiques et visuels, capturant les nuances de la requête pour afficher des détails complexes de manière cohérente d'un frame à l'autre.

Pour en savoir plus et voir un exemple de sortie, consultez la présentation de Google DeepMind Veo.

Spécifications

Modalités
  • Génération de texte en vidéo
  • Génération d'images en vidéo
Latence des requêtes
  • Min: 11 secondes
  • Max. : 6 minutes (pendant les heures de pointe)
Génération de longueur variable 5 à 8 secondes
Solution 720p
Fréquence d'images 24 ips
Format
  • 16:9 (paysage)
  • 9:16 (portrait)
Langues d'entrée (conversion texte-vidéo) Anglais

Les vidéos créées par Veo sont filigranées à l'aide de SynthID, notre outil permettant d'ajouter un filigrane et d'identifier les contenus générés par IA. Elles sont ensuite soumises à des filtres de sécurité et à des processus de vérification de la mémorisation qui aident à atténuer les risques liés à la confidentialité, aux droits d'auteur et aux biais.

Avant de commencer

Avant d'appeler l'API Gemini, assurez-vous d'avoir installé le SDK de votre choix et d'avoir configuré une clé API Gemini prête à l'emploi.

Pour utiliser Veo avec les SDK Google Gen AI, assurez-vous d'avoir installé l'une des versions suivantes:

Générer des vidéos

Cette section fournit des exemples de code pour générer des vidéos à l'aide d'invites textuelles et à l'aide d'images.

Générer à partir de texte

Vous pouvez utiliser le code suivant pour générer des vidéos avec Veo:

Python

import time
from google import genai
from google.genai import types

client = genai.Client()  # read API key from GOOGLE_API_KEY

operation = client.models.generate_videos(
    model="veo-2.0-generate-001",
    prompt="Panning wide shot of a calico kitten sleeping in the sunshine",
    config=types.GenerateVideosConfig(
        person_generation="dont_allow",  # "dont_allow" or "allow_adult"
        aspect_ratio="16:9",  # "16:9" or "9:16"
    ),
)

while not operation.done:
    time.sleep(20)
    operation = client.operations.get(operation)

for n, generated_video in enumerate(operation.response.generated_videos):
    client.files.download(file=generated_video.video)
    generated_video.video.save(f"video{n}.mp4")  # save the video

REST

# Use curl to send a POST request to the predictLongRunning endpoint
# The request body includes the prompt for video generation
curl "${BASE_URL}/models/veo-2.0-generate-001:predictLongRunning?key=${GOOGLE_API_KEY}" \
  -H "Content-Type: application/json" \
  -X "POST" \
  -d '{
    "instances": [{
        "prompt": "Panning wide shot of a calico kitten sleeping in the sunshine"
      }
    ],
    "parameters": {
      "aspectRatio": "16:9",
      "personGeneration": "dont_allow",
    }
  }' | tee result.json | jq .name | sed 's/"//g' > op_name

Chaton endormi au soleil.

L'exécution de ce code prend environ deux à trois minutes, mais cela peut prendre plus de temps si les ressources sont limitées. Une fois l'exécution terminée, une vidéo devrait s'afficher, comme suit:

Si un message d'erreur s'affiche à la place d'une vidéo, cela signifie que les ressources sont limitées et que votre requête n'a pas pu être traitée. Dans ce cas, exécutez à nouveau le code.

Les vidéos générées sont stockées sur le serveur pendant deux jours, puis supprimées. Si vous souhaitez enregistrer une copie locale de la vidéo générée, vous devez exécuter result() et save() dans les deux jours suivant la génération.

Générer à partir d'images

Vous pouvez également générer des vidéos à partir d'images. Le code suivant génère une image à l'aide d'Imagen, puis utilise l'image générée comme frame de départ de la vidéo générée.

Commencez par générer une image à l'aide d'Imagen:

Python

prompt="Panning wide shot of a calico kitten sleeping in the sunshine",

imagen = client.models.generate_images(
    model="imagen-3.0-generate-002",
    prompt=prompt,
    config=types.GenerateImagesConfig(
      aspect_ratio="16:9",
      number_of_images=1
    )
)

imagen.generated_images[0].image

Ensuite, générez une vidéo en utilisant l'image obtenue comme premier frame:

Python

operation = client.models.generate_videos(
    model="veo-2.0-generate-001",
    prompt=prompt,
    image = imagen.generated_images[0].image,
    config=types.GenerateVideosConfig(
      # person_generation only accepts "dont_allow" for image-to-video
      aspect_ratio="16:9",  # "16:9" or "9:16"
      number_of_videos=2
    ),
)

# Wait for videos to generate
 while not operation.done:
  time.sleep(20)
  operation = client.operations.get(operation)

for n, video in enumerate(operation.response.generated_videos):
    fname = f'with_image_input{n}.mp4'
    print(fname)
    client.files.download(file=video.video)
    video.video.save(fname)

Paramètres du modèle Veo

(Les conventions d'attribution de noms varient selon le langage de programmation.)

  • prompt: requête textuelle de la vidéo. Le paramètre image est facultatif lorsqu'il est présent.
  • image: image à utiliser comme premier frame de la vidéo. Le paramètre prompt est facultatif lorsqu'il est présent.
  • negativePrompt: chaîne de texte décrivant tout élément que vous souhaitez décourager le modèle de générer
  • aspectRatio: modifie le format de la vidéo générée. Les valeurs acceptées sont "16:9" et "9:16". La valeur par défaut est "16:9".
  • personGeneration: autoriser le modèle à générer des vidéos de personnes. Les valeurs suivantes sont acceptées :
    • Génération de texte en vidéo :
      • "dont_allow": interdit l'inclusion de personnes ou de visages.
      • "allow_adult": générer des vidéos incluant des adultes, mais pas d'enfants
    • Génération d'images en vidéo :
      • "dont_allow": valeur par défaut et seule valeur pour la génération d'images en vidéo.
  • numberOfVideos: vidéos de sortie demandées, 1 ou 2.
  • durationSeconds: durée de chaque vidéo de sortie en secondes, entre 5 et 8.
  • enhance_prompt: active ou désactive le réécrivain d'invite. Activé par défaut.

Solutions possibles

Pour tirer le meilleur parti de Veo, incorporez la terminologie spécifique aux vidéos dans vos invites. Veo comprend un large éventail de termes liés aux éléments suivants:

  • Composition de la prise de vue:spécifiez le cadrage et le nombre de sujets dans la prise de vue (par exemple, "plan unique", "plan en deux plans", "plan en plongée").
  • Positionnement et mouvement de la caméra:contrôlez l'emplacement et le mouvement de la caméra à l'aide de termes tels que "hauteur des yeux", "angle élevé", "vue à hauteur du sol", "plan Dolly", "plan en zoom", "plan panoramique" et "plan de suivi".
  • Effets de mise au point et d'objectif:utilisez des termes tels que "mise au point faible", "mise au point profonde", "mise au point douce", "objectif macro" et "objectif grand-angle" pour obtenir des effets visuels spécifiques.
  • Style et sujet globaux:orientez la direction créative de Veo en spécifiant des styles comme "science-fiction ","comédie romantique","film d'action" ou "animation". Vous pouvez également décrire les sujets et les arrière-plans que vous souhaitez, par exemple "vue urbaine", "nature", "véhicules" ou "animaux".

Guide des requêtes Veo

Cette section du guide Veo contient des exemples de vidéos que vous pouvez créer avec Veo et vous explique comment modifier les requêtes pour obtenir des résultats distincts.

Filtres de sécurité

Veo applique des filtres de sécurité à Gemini pour s'assurer que les vidéos générées et les photos importées ne contiennent pas de contenu offensant. Les requêtes qui ne respectent pas nos Conditions d'utilisation et consignes sont bloquées.

Principes de base concernant l'écriture de requêtes

Les requêtes efficaces sont descriptives et claires. Pour que la vidéo générée soit la plus proche possible de ce que vous souhaitez, commencez par identifier votre idée de base, puis affinez-la en ajoutant des mots clés et des modificateurs.

Votre requête doit inclure les éléments suivants:

  • Objet: objet, personne, animal ou paysage que vous souhaitez inclure dans votre vidéo.
  • Contexte: arrière-plan ou contexte dans lequel le sujet est placé.
  • Action: ce que fait le sujet (par exemple, marcher, courir ou tourner la tête).
  • Style: il peut être général ou très spécifique. Pensez à utiliser des mots clés spécifiques au style de film, comme film d'horreur, film noir ou des styles d'animation comme le style dessin animé.
  • Mouvement de la caméra: [Facultatif] Mouvement de la caméra, par exemple vue aérienne, vue à hauteur des yeux, vue du dessus ou vue plongeante.
  • Composition: [Facultatif] Cadrage de la prise de vue, par exemple plan d'ensemble, gros plan ou gros plan extrême.
  • Ambiance: [Facultatif] Comment la couleur et la lumière contribuent à la scène, comme les tons bleus, la nuit ou les tons chauds.

Autres conseils pour rédiger des requêtes

Les conseils suivants vous aideront à rédiger des requêtes qui génèrent vos vidéos:

  • Utilisez un langage descriptif: utilisez des adjectifs et des adverbes pour donner une image claire à Veo.
  • Fournissez du contexte: si nécessaire, incluez des informations générales pour aider votre modèle à comprendre ce que vous voulez.
  • Référez-vous à des styles artistiques spécifiques: si vous avez une esthétique particulière en tête, faites référence à des styles ou mouvements artistiques spécifiques.
  • Utilisez des outils d'ingénierie des requêtes: envisagez d'explorer des outils ou des ressources d'ingénierie des requêtes pour vous aider à affiner vos requêtes et à obtenir des résultats optimaux. Pour en savoir plus, consultez la section Présentation de la conception des requêtes.
  • Mettez en valeur les détails du visage dans vos images personnelles et de groupe: indiquez les détails du visage comme sujet principal de la photo, par exemple en utilisant le mot portrait dans l'invite.

Exemples de requêtes et de résultats

Cette section présente plusieurs invites, qui mettent en évidence comment les détails descriptifs peuvent améliorer le résultat de chaque vidéo.

Glaçons

Cette vidéo montre comment utiliser les éléments des principes de base de l'écriture de requêtes dans votre requête.

Prompt (Invite) Résultat généré
Gros plan (composition) sur des glaçons en train de fondre (sujet) sur une paroi rocheuse gelée (contexte) avec des tons bleus froids (ambiance), avec un zoom avant (mouvement de la caméra) tout en conservant les détails du gros plan sur les gouttes d'eau (action). Glaçons qui coulent sur un arrière-plan bleu.

Homme au téléphone

Ces vidéos montrent comment réviser votre requête avec des détails de plus en plus spécifiques pour que Veo affine la sortie à votre goût.

Prompt (Invite) Résultat généré Analyse
La caméra fait un travelling pour montrer un gros plan d'un homme désespéré dans un manteau vert. Il passe un appel sur un téléphone mural rotatif avec une lumière néon verte. Il ressemble à une scène de film. Homme parlant au téléphone. Il s'agit de la première vidéo générée à partir de la requête.
Un plan cinématographique en gros plan suit un homme désespéré vêtu d'un trench-coat vert usé alors qu'il compose le numéro d'un téléphone rotatif fixé sur un mur de briques rugueux, baigné dans la lueur étrange d'un panneau néon vert. La caméra fait un travelling avant, révélant la tension dans sa mâchoire et le désespoir gravé sur son visage alors qu'il essaie de passer l'appel. La faible profondeur de champ se concentre sur son front plissé et le téléphone rotatif noir, floutant l'arrière-plan en une mer de couleurs néon et d'ombres indistinctes, créant un sentiment d'urgence et d'isolement. Homme parlant au téléphone Une invite plus détaillée permet de créer une vidéo plus ciblée avec un environnement plus riche.
Vidéo avec un mouvement fluide qui fait un travelling avant sur un homme désespéré vêtu d'un trench-coat vert, utilisant un téléphone rotatif vintage contre un mur baigné d'une étrange lueur de néon verte. La caméra commence à une distance moyenne, puis se rapproche lentement du visage de l'homme, révélant son expression frénétique et la sueur sur son front alors qu'il compose le numéro de téléphone de toute urgence. L'attention est portée sur les mains de l'homme, dont les doigts tâtonnent sur le cadran alors qu'il tente désespérément de se connecter. La lumière verte du néon projette de longues ombres sur le mur, ce qui renforce l'atmosphère tendue. La scène est cadrée pour mettre en avant l'isolement et le désespoir de l'homme, soulignant le contraste saisissant entre la lueur vibrante du néon et la détermination sombre de l'homme. Homme parlant au téléphone. Ajouter plus de détails donne au sujet une expression réaliste et crée une scène intense et vivante.

Léopard des neiges

Cet exemple montre le résultat que Veo peut générer pour une requête simple.

Prompt (Invite) Résultat généré
Une créature mignonne à la fourrure semblable à celle d'un léopard des neiges marche dans une forêt en hiver. Rendu de style dessin animé 3D. Le léopard des neiges est léthargique.

Léopard des neiges en course

Cette invite est plus détaillée et présente un résultat généré qui peut être plus proche de ce que vous souhaitez pour votre vidéo.

Prompt (Invite) Résultat généré
Créez une courte scène animée 3D dans un style cartoon joyeux. Une créature mignonne avec une fourrure semblable à celle d'un léopard des neiges, de grands yeux expressifs et une forme ronde et amicale gambade joyeusement dans une forêt hivernale fantaisiste. La scène doit comporter des arbres arrondis recouverts de neige, des flocons de neige qui tombent doucement et un soleil chaud qui filtre à travers les branches. Les mouvements rebondissants et le large sourire de la créature doivent traduire un pur bonheur. Optez pour un ton optimiste et chaleureux avec des couleurs vives et joyeuses, et une animation ludique. Snow Leopard s'exécute plus rapidement.

Exemples par éléments d'écriture

Ces exemples vous montrent comment affiner vos requêtes en fonction de chaque élément de base.

Objet

Cet exemple montre comment spécifier une description de sujet.

Description de l'objet Prompt (Invite) Résultat généré
La description peut inclure un sujet, ou plusieurs sujets et actions. Ici, l'objet est "immeuble d'appartements en béton blanc". Rendu architectural d'un immeuble d'appartements en béton blanc aux formes organiques fluides, qui se fondent parfaitement dans la végétation luxuriante et les éléments futuristes Espace réservé.

Contexte

Cet exemple vous montre comment spécifier le contexte.

Contexte Prompt (Invite) Résultat généré
L'arrière-plan ou le contexte dans lequel le sujet sera placé est très important. Essayez de placer votre sujet dans différents arrière-plans, comme dans une rue animée ou dans l'espace. Un satellite flottant dans l'espace avec la lune et quelques étoiles en arrière-plan. Satellite flottant dans l'atmosphère.

Action

Cet exemple montre comment spécifier une action.

Action Prompt (Invite) Résultat généré
Ce que fait le sujet (par exemple, marcher, courir ou tourner la tête). Plan large d'une femme marchant le long de la plage, regardant l'horizon au coucher du soleil avec un air satisfait et détendu. Le coucher de soleil est absolument magnifique.

Style

Cet exemple montre comment spécifier un style.

Style Prompt (Invite) Résultat généré
Vous pouvez ajouter des mots clés pour améliorer la qualité de génération et l'orienter vers le style souhaité, par exemple "profondeur de champ faible", "image fixe de film", "minimaliste", "surréaliste", "vintage", "futuriste" ou "double exposition". Style film noir, homme et femme marchant dans la rue, mystère, cinématographique, noir et blanc. Le style film noir est absolument magnifique.

Mouvements de caméra

Cet exemple montre comment spécifier le mouvement de la caméra.

Mouvement de la caméra Prompt (Invite) Résultat généré
Vous pouvez choisir entre un point de vue à la première personne, une vue aérienne, une vue avec un drone ou un plan de suivi. Vue à la première personne d'une voiture vintage sous la pluie, au Canada, de nuit, cinématographique. Le coucher de soleil est absolument magnifique.

Composition

Cet exemple montre comment spécifier la composition.

Composition Prompt (Invite) Résultat généré
Le cadrage de la prise de vue (plan large, gros plan, angle bas) Gros plan extrême d'un œil avec une ville reflétée. Le coucher de soleil est absolument magnifique.
Créez une vidéo en plan large d'un surfeur marchant sur une plage avec une planche de surf, avec un beau coucher de soleil, en mode cinématique. Le coucher de soleil est absolument magnifique.

Ambiance

Cet exemple montre comment spécifier une ambiance.

Ambiance Prompt (Invite) Résultat généré
Les palettes de couleurs jouent un rôle essentiel en photographie. Elles influencent l'ambiance et transmettent les émotions souhaitées. Essayez par exemple "tons chauds orangés atténués", "lumière naturelle", "lever du soleil" ou "coucher du soleil". Par exemple, une palette chaude et dorée peut insuffler une ambiance romantique et atmosphérique à une photographie. Gros plan d'une fille tenant un adorable chiot golden retriever dans le parc, en plein soleil. Un chiot dans les bras d'une jeune fille.
Gros plan cinématographique d'une femme triste dans un bus sous la pluie, avec des tons bleus froids et une ambiance triste. Femme dans un bus qui se sent triste.

Utiliser des images de référence pour générer des vidéos

Vous pouvez donner vie à vos images grâce à la fonctionnalité Image vers vidéo de Veo. Vous pouvez utiliser des composants existants ou essayer Imagen pour générer quelque chose de nouveau.

Prompt (Invite) Résultat généré
Lapin avec une barre de chocolat. Bunny s'enfuit.
Bunny s'enfuit. Bunny s'enfuit.

Requêtes négatives

Les requêtes négatives peuvent être un outil puissant pour spécifier les éléments que vous ne souhaitez pas dans la vidéo. Décrivez ce que vous souhaitez que le modèle ne génère pas après la phrase "Incitation négative". Suivez ces conseils:

  • ❌ N'utilisez pas de mots ou d'expressions instructives comme non ou ne pas. Par exemple, "Pas de murs" ou "Ne pas afficher les murs".

  • ✅ Décrivez ce que vous ne voulez pas voir. Par exemple, "mur, cadre", ce qui signifie que vous ne souhaitez pas qu'un mur ou un cadre apparaisse dans la vidéo.

Prompt (Invite) Résultat généré
Générez une courte animation stylisée d'un grand chêne solitaire dont les feuilles s'agitent vigoureusement dans un vent fort. L'arbre doit avoir une forme légèrement exagérée et fantaisiste, avec des branches dynamiques et fluides. Les feuilles doivent présenter une variété de couleurs d'automne, tourbillonnantes et dansantes dans le vent. L'animation doit utiliser une palette de couleurs chaleureuse et attrayante. Arbre avec des mots
Générez une courte animation stylisée d'un grand chêne solitaire dont les feuilles s'agitent vigoureusement dans un vent fort. L'arbre doit avoir une forme légèrement exagérée et fantaisiste, avec des branches dynamiques et fluides. Les feuilles doivent présenter une variété de couleurs d'automne, tourbillonnantes et dansantes dans le vent. L'animation doit utiliser une palette de couleurs chaleureuse et attrayante.

Avec une invite négative : arrière-plan urbain, structures artificielles, atmosphère sombre, orageuse ou menaçante.
Arborescence sans mots à exclure.

Formats

La génération de vidéos Gemini Veo est compatible avec les deux formats suivants:

Format Description
Écran large ou 16:9 Format le plus courant pour les téléviseurs, les écrans d'ordinateur et les écrans de téléphones mobiles (paysage). Utilisez-le lorsque vous souhaitez capturer plus d'arrière-plan, comme dans les paysages.
Portrait ou 9:16 Écran large pivoté. Ce format est popularisé par les applications de vidéos courtes, comme YouTube Shorts. Utilisez-le pour les portraits ou les objets hauts ayant une orientation verticale marquée, tels que les bâtiments, les arbres, les cascades ou les bâtiments.

Écran large

Cette invite est un exemple du format grand écran 16:9.

Prompt (Invite) Résultat généré
Créez une vidéo avec une vue de drone de suivi d'un homme au volant d'une voiture décapotable rouge à Palm Springs dans les années 1970, avec un soleil chaud et de longues ombres. La cascade est absolument magnifique.

Portrait

Cette invite est un exemple du format portrait 9:16.

Prompt (Invite) Résultat généré
Créez une vidéo mettant en avant le mouvement fluide d'une majestueuse cascade hawaïenne dans une forêt tropicale luxuriante. Concentrez-vous sur un débit d'eau réaliste, un feuillage détaillé et un éclairage naturel pour transmettre la sérénité. Capturez l'eau qui coule, l'atmosphère brumeuse et les rayons du soleil qui filtrent à travers la canopée dense. Utilisez des mouvements de caméra fluides et cinématiques pour mettre en valeur la cascade et son environnement. Optez pour un ton paisible et réaliste, qui transporte le spectateur dans la beauté sereine de la forêt tropicale hawaïenne. La cascade est absolument magnifique.

Étape suivante

  • Gagnez en expérience en générant des vidéos optimisées par l'IA avec le Colab Veo.