Veo 3.1 ist das hochmoderne Modell von Google zum Generieren von 8‑sekündigen Videos mit einer Auflösung von 720p oder 1080p in hoher Qualität, die sich durch beeindruckenden Realismus und nativ generiertes Audio auszeichnen. Sie können programmatisch über die Gemini API auf dieses Modell zugreifen. Weitere Informationen zu den verfügbaren Veo-Modellvarianten finden Sie im Abschnitt Modellversionen.
Veo 3.1 eignet sich hervorragend für eine Vielzahl von visuellen und filmischen Stilen und bietet mehrere neue Funktionen:
- Video verlängern: Sie können Videos verlängern, die zuvor mit Veo generiert wurden.
- Frame-spezifische Generierung: Generieren Sie ein Video, indem Sie den ersten und den letzten Frame angeben.
- Bildbasierte Vorgaben: Sie können bis zu drei Referenzbilder verwenden, um die Inhalte Ihres generierten Videos zu steuern.
Weitere Informationen zum Schreiben effektiver Text-Prompts für die Videogenerierung finden Sie im Veo-Leitfaden zu Prompts.
Video aus Text
Wählen Sie ein Beispiel aus, um zu sehen, wie Sie ein Video mit Dialog, filmischem Realismus oder kreativer Animation erstellen:
Python
import time
from google import genai
from google.genai import types
client = genai.Client()
prompt = """A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'"""
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt=prompt,
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the generated video.
generated_video = operation.response.generated_videos[0]
client.files.download(file=generated_video.video)
generated_video.video.save("dialogue_example.mp4")
print("Generated video saved to dialogue_example.mp4")
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
const prompt = `A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'`;
let operation = await ai.models.generateVideos({
model: "veo-3.1-generate-preview",
prompt: prompt,
});
// Poll the operation status until the video is ready.
while (!operation.done) {
console.log("Waiting for video generation to complete...")
await new Promise((resolve) => setTimeout(resolve, 10000));
operation = await ai.operations.getVideosOperation({
operation: operation,
});
}
// Download the generated video.
ai.files.download({
file: operation.response.generatedVideos[0].video,
downloadPath: "dialogue_example.mp4",
});
console.log(`Generated video saved to dialogue_example.mp4`);
Ok
package main
import (
"context"
"log"
"os"
"time"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
prompt := `A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'`
operation, _ := client.Models.GenerateVideos(
ctx,
"veo-3.1-generate-preview",
prompt,
nil,
nil,
)
// Poll the operation status until the video is ready.
for !operation.Done {
log.Println("Waiting for video generation to complete...")
time.Sleep(10 * time.Second)
operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
}
// Download the generated video.
video := operation.Response.GeneratedVideos[0]
client.Files.Download(ctx, video.Video, nil)
fname := "dialogue_example.mp4"
_ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
log.Printf("Generated video saved to %s\n", fname)
}
REST
# Note: This script uses jq to parse the JSON response.
# GEMINI API Base URL
BASE_URL="https://generativelanguage.googleapis.com/v1beta"
# Send request to generate video and capture the operation name into a variable.
operation_name=$(curl -s "${BASE_URL}/models/veo-3.1-generate-preview:predictLongRunning" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-X "POST" \
-d '{
"instances": [{
"prompt": "A close up of two people staring at a cryptic drawing on a wall, torchlight flickering. A man murmurs, \"This must be it. That'\''s the secret code.\" The woman looks at him and whispering excitedly, \"What did you find?\""
}
]
}' | jq -r .name)
# Poll the operation status until the video is ready
while true; do
# Get the full JSON status and store it in a variable.
status_response=$(curl -s -H "x-goog-api-key: $GEMINI_API_KEY" "${BASE_URL}/${operation_name}")
# Check the "done" field from the JSON stored in the variable.
is_done=$(echo "${status_response}" | jq .done)
if [ "${is_done}" = "true" ]; then
# Extract the download URI from the final response.
video_uri=$(echo "${status_response}" | jq -r '.response.generateVideoResponse.generatedSamples[0].video.uri')
echo "Downloading video from: ${video_uri}"
# Download the video using the URI and API key and follow redirects.
curl -L -o dialogue_example.mp4 -H "x-goog-api-key: $GEMINI_API_KEY" "${video_uri}"
break
fi
# Wait for 5 seconds before checking again.
sleep 10
done
Bild-zu-Video-Generierung
Im folgenden Code wird gezeigt, wie ein Bild mit Gemini 2.5 Flash Image (auch bekannt als Nano Banana) generiert und dann als Startframe für die Generierung eines Videos mit Veo 3.1 verwendet wird.
Python
import time
from google import genai
client = genai.Client()
prompt = "Panning wide shot of a calico kitten sleeping in the sunshine"
# Step 1: Generate an image with Nano Banana.
image = client.models.generate_content(
model="gemini-2.5-flash-image",
prompt=prompt,
)
# Step 2: Generate video with Veo 3.1 using the image.
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt=prompt,
image=image.generated_images[0].image,
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the video.
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3_with_image_input.mp4")
print("Generated video saved to veo3_with_image_input.mp4")
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
const prompt = "Panning wide shot of a calico kitten sleeping in the sunshine";
// Step 1: Generate an image with Nano Banana.
const imageResponse = await ai.models.generateContent({
model: "gemini-2.5-flash-image",
prompt: prompt,
});
// Step 2: Generate video with Veo 3.1 using the image.
let operation = await ai.models.generateVideos({
model: "veo-3.1-generate-preview",
prompt: prompt,
image: {
imageBytes: imageResponse.generatedImages[0].image.imageBytes,
mimeType: "image/png",
},
});
// Poll the operation status until the video is ready.
while (!operation.done) {
console.log("Waiting for video generation to complete...")
await new Promise((resolve) => setTimeout(resolve, 10000));
operation = await ai.operations.getVideosOperation({
operation: operation,
});
}
// Download the video.
ai.files.download({
file: operation.response.generatedVideos[0].video,
downloadPath: "veo3_with_image_input.mp4",
});
console.log(`Generated video saved to veo3_with_image_input.mp4`);
Ok
package main
import (
"context"
"log"
"os"
"time"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
prompt := "Panning wide shot of a calico kitten sleeping in the sunshine"
// Step 1: Generate an image with Nano Banana.
imageResponse, err := client.Models.GenerateContent(
ctx,
"gemini-2.5-flash-image",
prompt,
nil, // GenerateImagesConfig
)
if err != nil {
log.Fatal(err)
}
// Step 2: Generate video with Veo 3.1 using the image.
operation, err := client.Models.GenerateVideos(
ctx,
"veo-3.1-generate-preview",
prompt,
imageResponse.GeneratedImages[0].Image,
nil, // GenerateVideosConfig
)
if err != nil {
log.Fatal(err)
}
// Poll the operation status until the video is ready.
for !operation.Done {
log.Println("Waiting for video generation to complete...")
time.Sleep(10 * time.Second)
operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
}
// Download the video.
video := operation.Response.GeneratedVideos[0]
client.Files.Download(ctx, video.Video, nil)
fname := "veo3_with_image_input.mp4"
_ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
log.Printf("Generated video saved to %s\n", fname)
}
Referenzbilder verwenden
Veo 3.1 kann jetzt bis zu drei Referenzbilder für die Inhalte des generierten Videos verwenden. Stellen Sie Bilder einer Person, einer Figur oder eines Produkts bereit, um das Erscheinungsbild des Motivs im Ausgabevideo beizubehalten.
Wenn Sie beispielsweise diese drei mit Nano Banana generierten Bilder als Referenzen mit einem gut formulierten Prompt verwenden, wird das folgende Video erstellt:
`dress_image` |
`woman_image` |
`glasses_image` |
---|---|---|
![]() |
![]() |
![]() |
Python
import time
from google import genai
client = genai.Client()
prompt = "The video opens with a medium, eye-level shot of a beautiful woman with dark hair and warm brown eyes. She wears a magnificent, high-fashion flamingo dress with layers of pink and fuchsia feathers, complemented by whimsical pink, heart-shaped sunglasses. She walks with serene confidence through the crystal-clear, shallow turquoise water of a sun-drenched lagoon. The camera slowly pulls back to a medium-wide shot, revealing the breathtaking scene as the dress's long train glides and floats gracefully on the water's surface behind her. The cinematic, dreamlike atmosphere is enhanced by the vibrant colors of the dress against the serene, minimalist landscape, capturing a moment of pure elegance and high-fashion fantasy."
dress_reference = types.VideoGenerationReferenceImage(
image=dress_image, # Generated separately with Nano Banana
reference_type="asset"
)
sunglasses_reference = types.VideoGenerationReferenceImage(
image=glasses_image, # Generated separately with Nano Banana
reference_type="asset"
)
woman_reference = types.VideoGenerationReferenceImage(
image=woman_image, # Generated separately with Nano Banana
reference_type="asset"
)
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt=prompt,
config=types.GenerateVideosConfig(
reference_images=[dress_reference, glasses_reference, woman_reference],
),
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the video.
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3.1_with_reference_images.mp4")
print("Generated video saved to veo3.1_with_reference_images.mp4")

Ersten und letzten Frame verwenden
Mit Veo 3.1 können Sie Videos erstellen, indem Sie die Interpolation verwenden oder den ersten und letzten Frame des Videos angeben. Informationen zum Schreiben effektiver Text-Prompts für die Videogenerierung finden Sie im Veo-Prompt-Leitfaden.
Python
import time
from google import genai
client = genai.Client()
prompt = "A cinematic, haunting video. A ghostly woman with long white hair and a flowing dress swings gently on a rope swing beneath a massive, gnarled tree in a foggy, moonlit clearing. The fog thickens and swirls around her, and she slowly fades away, vanishing completely. The empty swing is left swaying rhythmically on its own in the eerie silence."
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt=prompt,
image=first_image, # Generated separately with Nano Banana
config=types.GenerateVideosConfig(
last_frame=last_image # Generated separately with Nano Banana
),
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the video.
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3.1_with_interpolation.mp4")
print("Generated video saved to veo3.1_with_interpolation.mp4")
`first_image` |
`last_image` |
veo3.1_with_interpolation.mp4 |
---|---|---|
![]() |
![]() |
![]() |
Veo-Videos verlängern
Mit Veo 3.1 können Sie Videos, die Sie zuvor mit Veo erstellt haben, um 7 Sekunden und bis zu 20-mal verlängern.
Einschränkungen für Eingabevideos:
- Von Veo generierte Videos sind maximal 141 Sekunden lang.
- Die Gemini API unterstützt nur Videoerweiterungen für von Veo generierte Videos.
- Eingabevideos müssen eine bestimmte Länge, ein bestimmtes Seitenverhältnis und bestimmte Abmessungen haben:
- Seitenverhältnis: 9:16 oder 16:9
- Auflösung: 720p
- Videolänge: maximal 141 Sekunden
Die Ausgabe der Erweiterung ist ein einzelnes Video, in dem das vom Nutzer eingegebene Video und das generierte erweiterte Video kombiniert werden. Das Video kann bis zu 148 Sekunden lang sein.
In diesem Beispiel wird das von Veo generierte Video butterfly_video, das hier mit dem ursprünglichen Prompt zu sehen ist, mit dem Parameter video
und einem neuen Prompt erweitert:
Prompt | Ausgabe: butterfly_video |
---|---|
Ein Origami-Schmetterling schlägt mit den Flügeln und fliegt durch die Fenstertüren in den Garten. |
![]() |
Python
import time
from google import genai
client = genai.Client()
prompt = "Track the butterfly into the garden as it lands on an orange origami flower. A fluffy white puppy runs up and gently pats the flower."
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
video=butterfly_video,
prompt=prompt,
config=types.GenerateVideosConfig(
number_of_videos=1,
resolution="720p"
),
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the video.
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3.1_extension.mp4")
print("Generated video saved to veo3.1_extension.mp4")

Informationen zum Schreiben effektiver Text-Prompts für die Videogenerierung finden Sie im Veo-Prompt-Leitfaden.
Umgang mit asynchronen Vorgängen
Das Generieren von Videos ist eine rechenintensive Aufgabe. Wenn Sie eine Anfrage an die API senden, wird ein lang andauernder Job gestartet und sofort ein operation
-Objekt zurückgegeben. Anschließend müssen Sie den Status abrufen, bis das Video bereit ist. Das ist der Fall, wenn der Status done
auf „true“ gesetzt ist.
Das Herzstück dieses Prozesses ist eine Polling-Schleife, die regelmäßig den Status des Jobs prüft.
Python
import time
from google import genai
from google.genai import types
client = genai.Client()
# After starting the job, you get an operation object.
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt="A cinematic shot of a majestic lion in the savannah.",
)
# Alternatively, you can use operation.name to get the operation.
operation = types.GenerateVideosOperation(name=operation.name)
# This loop checks the job status every 10 seconds.
while not operation.done:
time.sleep(10)
# Refresh the operation object to get the latest status.
operation = client.operations.get(operation)
# Once done, the result is in operation.response.
# ... process and download your video ...
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
// After starting the job, you get an operation object.
let operation = await ai.models.generateVideos({
model: "veo-3.1-generate-preview",
prompt: "A cinematic shot of a majestic lion in the savannah.",
});
// Alternatively, you can use operation.name to get the operation.
// operation = types.GenerateVideosOperation(name=operation.name)
// This loop checks the job status every 10 seconds.
while (!operation.done) {
await new Promise((resolve) => setTimeout(resolve, 1000));
// Refresh the operation object to get the latest status.
operation = await ai.operations.getVideosOperation({ operation });
}
// Once done, the result is in operation.response.
// ... process and download your video ...
Veo API-Parameter und ‑Spezifikationen
Dies sind die Parameter, die Sie in Ihrer API-Anfrage festlegen können, um den Prozess der Videogenerierung zu steuern.
Parameter | Beschreibung | Veo 3.1 und Veo 3.1 Fast | Veo 3 und Veo 3 Fast | Veo 2 |
---|---|---|---|---|
prompt |
Die Textbeschreibung für das Video. Unterstützt Audio-Hinweise. | string |
string |
string |
negativePrompt |
Text, der beschreibt, was nicht im Video enthalten sein darf. | string |
string |
string |
image |
Ein Ausgangsbild für die Animation. | Image Objekt |
Image Objekt |
Image Objekt |
lastFrame |
Das endgültige Bild für ein Interpolationsvideo, in das übergegangen werden soll. Muss in Kombination mit dem Parameter image verwendet werden. |
Image Objekt |
Image Objekt |
Image Objekt |
referenceImages |
Bis zu drei Bilder, die als Referenzen für Stil und Inhalt verwendet werden sollen. | VideoGenerationReferenceImage -Objekt (nur Veo 3.1) |
– | – |
video |
Video, das für die Videoerweiterung verwendet werden soll. | Video Objekt |
– | – |
aspectRatio |
Das Seitenverhältnis des Videos. | "16:9" (Standard, 720p und 1080p),"9:16" (720p und 1080p) |
"16:9" (Standard, 720p und 1080p),"9:16" (720p und 1080p) |
"16:9" (Standard, 720p),"9:16" (720p) |
resolution |
Das Seitenverhältnis des Videos. | "720p" (Standard), "1080p" (unterstützt nur eine Dauer von 8 Sekunden)"720p" nur für Erweiterung |
"720p" (Standard), "1080p" (nur 16:9) |
Nicht unterstützt |
durationSeconds |
Länge des generierten Videos. | "4" , "6" , "8" .Muss „8“ sein, wenn die Erweiterung oder Interpolation verwendet wird (unterstützt sowohl 16:9 als auch 9:16) und wenn referenceImages verwendet wird (unterstützt nur 16:9). |
"4" , "6" , "8" |
"5" , "6" , "8" |
personGeneration |
Steuert die Generierung von Personen. (Informationen zu regionalen Einschränkungen finden Sie unter Einschränkungen.) |
Text-zu-Video und Erweiterung:"allow_all" nurBild-zu-Video, Interpolation und Referenzbilder: "allow_adult" nur
|
Text zu Video:"allow_all" nurBild zu Video: "allow_adult" nur
|
Text zu Video: "allow_all" , "allow_adult" , "dont_allow"
Bild zu Video: "allow_adult" und "dont_allow"
|
Der Parameter seed
ist auch für Veo 3-Modelle verfügbar.
Sie garantiert keinen Determinismus, verbessert ihn aber leicht.
Sie können die Videogenerierung anpassen, indem Sie Parameter in Ihre Anfrage aufnehmen.
Sie können beispielsweise negativePrompt
angeben, um das Modell zu steuern.
Python
import time
from google import genai
from google.genai import types
client = genai.Client()
operation = client.models.generate_videos(
model="veo-3.1-generate-preview",
prompt="A cinematic shot of a majestic lion in the savannah.",
config=types.GenerateVideosConfig(negative_prompt="cartoon, drawing, low quality"),
)
# Poll the operation status until the video is ready.
while not operation.done:
print("Waiting for video generation to complete...")
time.sleep(10)
operation = client.operations.get(operation)
# Download the generated video.
generated_video = operation.response.generated_videos[0]
client.files.download(file=generated_video.video)
generated_video.video.save("parameters_example.mp4")
print("Generated video saved to parameters_example.mp4")
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
let operation = await ai.models.generateVideos({
model: "veo-3.1-generate-preview",
prompt: "A cinematic shot of a majestic lion in the savannah.",
config: {
aspectRatio: "16:9",
negativePrompt: "cartoon, drawing, low quality"
},
});
// Poll the operation status until the video is ready.
while (!operation.done) {
console.log("Waiting for video generation to complete...")
await new Promise((resolve) => setTimeout(resolve, 10000));
operation = await ai.operations.getVideosOperation({
operation: operation,
});
}
// Download the generated video.
ai.files.download({
file: operation.response.generatedVideos[0].video,
downloadPath: "parameters_example.mp4",
});
console.log(`Generated video saved to parameters_example.mp4`);
Ok
package main
import (
"context"
"log"
"os"
"time"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
log.Fatal(err)
}
videoConfig := &genai.GenerateVideosConfig{
AspectRatio: "16:9",
NegativePrompt: "cartoon, drawing, low quality",
}
operation, _ := client.Models.GenerateVideos(
ctx,
"veo-3.1-generate-preview",
"A cinematic shot of a majestic lion in the savannah.",
nil,
videoConfig,
)
// Poll the operation status until the video is ready.
for !operation.Done {
log.Println("Waiting for video generation to complete...")
time.Sleep(10 * time.Second)
operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
}
// Download the generated video.
video := operation.Response.GeneratedVideos[0]
client.Files.Download(ctx, video.Video, nil)
fname := "parameters_example.mp4"
_ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
log.Printf("Generated video saved to %s\n", fname)
}
REST
# Note: This script uses jq to parse the JSON response.
# GEMINI API Base URL
BASE_URL="https://generativelanguage.googleapis.com/v1beta"
# Send request to generate video and capture the operation name into a variable.
operation_name=$(curl -s "${BASE_URL}/models/veo-3.1-generate-preview:predictLongRunning" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-X "POST" \
-d '{
"instances": [{
"prompt": "A cinematic shot of a majestic lion in the savannah."
}
],
"parameters": {
"aspectRatio": "16:9",
"negativePrompt": "cartoon, drawing, low quality"
}
}' | jq -r .name)
# Poll the operation status until the video is ready
while true; do
# Get the full JSON status and store it in a variable.
status_response=$(curl -s -H "x-goog-api-key: $GEMINI_API_KEY" "${BASE_URL}/${operation_name}")
# Check the "done" field from the JSON stored in the variable.
is_done=$(echo "${status_response}" | jq .done)
if [ "${is_done}" = "true" ]; then
# Extract the download URI from the final response.
video_uri=$(echo "${status_response}" | jq -r '.response.generateVideoResponse.generatedSamples[0].video.uri')
echo "Downloading video from: ${video_uri}"
# Download the video using the URI and API key and follow redirects.
curl -L -o parameters_example.mp4 -H "x-goog-api-key: $GEMINI_API_KEY" "${video_uri}"
break
fi
# Wait for 5 seconds before checking again.
sleep 10
done
Veo-Prompt-Anleitung
In diesem Abschnitt finden Sie Beispiele für Videos, die Sie mit Veo erstellen können. Außerdem wird gezeigt, wie Sie Prompts anpassen, um unterschiedliche Ergebnisse zu erzielen.
Sicherheitsfilter
Veo wendet Sicherheitsfilter für Gemini an, um sicherzustellen, dass generierte Videos und hochgeladene Fotos keine anstößigen Inhalte enthalten. Prompts, die gegen unsere Nutzungsbedingungen und Richtlinien verstoßen, werden blockiert.
Grundlagen zum Schreiben von Prompts
Gute Prompts sind beschreibend und klar. Damit Sie Veo optimal nutzen können, sollten Sie zuerst Ihre Kernidee formulieren, sie dann durch Hinzufügen von Keywords und Modifikatoren verfeinern und schließlich videospezifische Begriffe in Ihre Prompts einfügen.
Ihr Prompt sollte die folgenden Elemente enthalten:
- Motiv: Das Objekt, die Person, das Tier oder die Landschaft, die Sie in Ihrem Video sehen möchten, z. B. Stadtansicht, Natur, Fahrzeuge oder Welpen.
- Aktion: Was das Subjekt tut, z. B. gehen, laufen oder den Kopf drehen.
- Stil: Geben Sie die kreative Richtung mit bestimmten Filmstil-Schlüsselwörtern an, z. B. Science-Fiction, Horrorfilm, Film noir oder animierte Stile wie Cartoon.
- Kamerapositionierung und -bewegung: [Optional] Steuern Sie die Position und Bewegung der Kamera mit Begriffen wie Luftaufnahme, Augenhöhe, Aufnahme von oben, Kamerafahrt oder Froschperspektive.
- Komposition: [Optional] Wie die Aufnahme gerahmt ist, z. B. Weitwinkelaufnahme, Nahaufnahme, Einzelaufnahme oder Zweieraufnahme.
- Fokus- und Objektiveffekte: [Optional] Verwenden Sie Begriffe wie geringe Schärfentiefe, große Schärfentiefe, Weichzeichner, Makroobjektiv und Weitwinkelobjektiv, um bestimmte visuelle Effekte zu erzielen.
- Atmosphäre: [Optional] Wie Farbe und Licht zur Szene beitragen, z. B. Blautöne, Nacht oder warme Farbtöne.
Weitere Tipps zum Verfassen von Prompts
- Beschreibende Sprache verwenden: Verwenden Sie Adjektive und Adverbien, um Veo ein klares Bild zu vermitteln.
- Gesichtsdetails optimieren: Geben Sie Gesichtsdetails als Fokus des Fotos an, z. B. indem Sie das Wort Porträt im Prompt verwenden.
Umfassendere Strategien für das Erstellen von Prompts finden Sie unter Einführung in das Prompt-Design.
Aufforderung für Audio
Mit Veo 3 können Sie Hinweise für Soundeffekte, Umgebungsgeräusche und Dialoge geben. Das Modell erfasst die Nuancen dieser Hinweise, um einen synchronisierten Soundtrack zu generieren.
- Dialog:Verwenden Sie Anführungszeichen für bestimmte Äußerungen. (Beispiel: „Das muss der Schlüssel sein“, murmelte er.)
- Soundeffekte (SFX): Beschreiben Sie Geräusche explizit. Beispiel: Reifen quietschen laut, Motor dröhnt.
- Umgebungslärm:Beschreiben Sie die Geräuschkulisse der Umgebung. Beispiel: Im Hintergrund ist ein leises, unheimliches Summen zu hören.
In diesen Videos wird gezeigt, wie die Audio-Generierung von Veo 3 mit zunehmendem Detaillierungsgrad erfolgt.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Mehr Details (Dialog und Ambiente) Eine Weitwinkelaufnahme eines nebligen Waldes im pazifischen Nordwesten. Zwei erschöpfte Wanderer, ein Mann und eine Frau, kämpfen sich durch Farne, als der Mann abrupt stehen bleibt und auf einen Baum starrt. Nahaufnahme: Frische, tiefe Krallenspuren sind in die Rinde des Baumes geritzt. Mann: (Hand auf seinem Jagdmesser) „Das ist kein gewöhnlicher Bär.“ Frau: (Stimme angespannt vor Angst, blickt in den Wald) „Was ist es dann?“ Eine raue Rinde, knisternde Zweige, Schritte auf dem feuchten Boden. Ein einzelner Vogel zwitschert. |
![]() |
Weniger Details (Dialog) Paper Cut-Out Animation. Neuer Bibliothekar: „Wo bewahren Sie die verbotenen Bücher auf?“ Alter Kurator: „Nein. Sie behalten uns.“ |
![]() |
Probieren Sie diese Prompts selbst aus, um den Ton zu hören. Veo 3 ausprobieren
Prompts mit Referenzbildern
Sie können ein oder mehrere Bilder als Eingabe verwenden, um die generierten Videos zu steuern. Dazu nutzen Sie die Bild-zu-Video-Funktionen von Veo. Veo verwendet das Eingabebild als ersten Frame. Wähle ein Bild aus, das der ersten Szene deines Videos am nächsten kommt. Du kannst damit Alltagsgegenstände animieren, Zeichnungen und Gemälde zum Leben erwecken und Naturszenen Bewegung und Sound hinzufügen.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Eingabebild (generiert von Nano Banana) Ein hyperrealistisches Makrofoto von winzigen, Miniatur-Surfern, die auf Meereswellen in einem rustikalen Waschbecken aus Stein reiten. Ein Wasserhahn aus Messing im Vintage-Stil läuft und erzeugt die ewige Brandung. Surreal, skurril, helles natürliches Licht. |
![]() |
Ausgabe-Video (generiert von Veo 3.1) Ein surreales, filmreifes Makrovideo. Winzige Surfer reiten auf endlosen, sanften Wellen in einem Waschbecken aus Stein. Ein laufender Wasserhahn aus Messing im Vintage-Stil erzeugt die endlose Welle. Die Kamera schwenkt langsam über die skurrile, sonnenbeschienene Szene, während die Miniaturfiguren gekonnt durch das türkisfarbene Wasser gleiten. |
![]() |
Mit Veo 3.1 können Sie Bilder oder Zutaten als Referenz verwenden, um die Inhalte Ihres generierten Videos zu steuern. Stellen Sie bis zu drei Asset-Bilder einer einzelnen Person, einer Figur oder eines Produkts bereit. Veo behält das Erscheinungsbild des Motivs im Ausgabevideo bei.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Referenzbild (generiert von Nano Banana) Ein Tiefsee-Anglerfisch lauert im tiefen, dunklen Wasser. Er hat die Zähne gefletscht und der Köder leuchtet. |
![]() |
Referenzbild (generiert von Nano Banana) Ein rosa Prinzessinnenkostüm für Kinder mit Zauberstab und Tiara auf einem schlichten Produkthintergrund. |
![]() |
Ausgabe-Video (generiert von Veo 3.1) Erstelle eine alberne Cartoon-Version des Fisches, der das Kostüm trägt, schwimmt und mit dem Zauberstab winkt. |
![]() |
Mit Veo 3.1 können Sie auch Videos generieren, indem Sie den ersten und den letzten Frame des Videos angeben.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Erstes Bild (generiert von Nano Banana) Ein hochwertiges fotorealistisches Frontbild einer roten Katze, die ein rotes Cabriolet auf der Küstenstraße der Côte d’Azur fährt. |
![]() |
Letztes Bild (generiert von Nano Banana) Zeige, was passiert, wenn das Auto von einer Klippe abhebt. |
![]() |
Ausgabe-Video (generiert von Veo 3.1) Optional |
![]() |
Mit dieser Funktion können Sie die Komposition Ihres Shots genau steuern, indem Sie den Start- und Endframe festlegen. Laden Sie ein Bild hoch oder verwenden Sie einen Frame aus einem früheren Video, um sicherzustellen, dass Ihre Szene genau so beginnt und endet, wie Sie es sich vorstellen.
Prompt für die Erweiterung
Wenn Sie ein mit Veo generiertes Video mit Veo 3.1 verlängern möchten, verwenden Sie das Video als Eingabe zusammen mit einem optionalen Text-Prompt. Mit „Verlängern“ wird die letzte Sekunde oder die letzten 24 Frames Ihres Videos fertiggestellt und die Handlung fortgesetzt.
Hinweis: Wenn die Stimme nicht in der letzten Sekunde des Videos zu hören ist, kann sie nicht effektiv verlängert werden.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Eingabevideo (generiert von Veo 3.1) Der Gleitschirmflieger startet vom Gipfel des Berges und gleitet die Berge hinunter, die auf die blumenbedeckten Täler blicken. |
![]() |
Ausgabevideo (generiert von Veo 3.1) Erweitere dieses Video, sodass der Gleitschirmflieger langsam landet. |
![]() |
Beispiel-Prompts und -Ausgabe
In diesem Abschnitt werden mehrere Prompts vorgestellt, die zeigen, wie beschreibende Details das Ergebnis jedes Videos verbessern können.
Eiszapfen
In diesem Video wird gezeigt, wie Sie die Elemente der Grundlagen zum Verfassen von Prompts in Ihrem Prompt verwenden können.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Nahaufnahme (Komposition) von schmelzenden Eiszapfen (Motiv) an einer gefrorenen Felswand (Kontext) mit kühlen Blautönen (Atmosphäre), herangezoomt (Kamerabewegung), wobei die Nahaufnahmedetails von Wassertropfen (Aktion) beibehalten werden. |
![]() |
Mann am Telefon
In diesen Videos wird gezeigt, wie Sie Ihren Prompt mit immer spezifischeren Details überarbeiten können, damit Veo die Ausgabe nach Ihren Wünschen anpasst.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Weniger Details Die Kamera fährt heran, um eine Nahaufnahme eines verzweifelten Mannes in einem grünen Trenchcoat zu zeigen. Er telefoniert mit einem Wandtelefon mit Wählscheibe und einer grünen Neonleuchte. Es sieht aus wie eine Filmszene. |
![]() |
Mehr Details Eine filmische Nahaufnahme zeigt einen verzweifelten Mann in einem abgewetzten grünen Trenchcoat, der ein Wählscheibentelefon wählt, das an einer schmutzigen Backsteinmauer angebracht ist und im unheimlichen Schein eines grünen Leuchtreklameschilds steht. Die Kamera fährt näher heran und zeigt die Anspannung in seinem Kiefer und die Verzweiflung in seinem Gesicht, während er versucht, den Anruf zu tätigen. Die geringe Schärfentiefe lenkt den Fokus auf seine gerunzelte Stirn und das schwarze Wählscheibentelefon. Der Hintergrund verschwimmt zu einem Meer aus Neonfarben und undeutlichen Schatten, was ein Gefühl der Dringlichkeit und Isolation erzeugt. |
![]() |
Schneeleopard
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Einfacher Prompt Eine niedliche Kreatur mit einem Fell wie ein Schneeleopard geht in einem Winterwald, gerendert im 3D‑Cartoonstil. |
![]() |
Detaillierter Prompt: Erstelle eine kurze 3D-Animationsszene in einem fröhlichen Cartoonstil. Eine niedliche Kreatur mit schneeleopardenähnlichem Fell, großen ausdrucksstarken Augen und einer freundlichen, runden Form hüpft fröhlich durch einen skurrilen Winterwald. Die Szene sollte runde, schneebedeckte Bäume, sanft fallende Schneeflocken und warmes Sonnenlicht zeigen, das durch die Äste scheint. Die hüpfenden Bewegungen und das breite Lächeln der Kreatur sollten pure Freude vermitteln. Der Ton sollte optimistisch und herzerwärmend sein. Die Farben sollten hell und fröhlich sein und die Animationen verspielt. |
![]() |
Beispiele nach Textelementen
In diesen Beispielen sehen Sie, wie Sie Ihre Prompts anhand der einzelnen grundlegenden Elemente optimieren können.
Thema und Kontext
Geben Sie den Hauptfokus (Motiv) und den Hintergrund oder die Umgebung (Kontext) an.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Eine architektonische Darstellung eines Apartmentgebäudes aus weißem Beton mit fließenden organischen Formen, das nahtlos in üppiges Grün und futuristische Elemente übergeht |
![]() |
Ein Satellit, der durch das Weltall schwebt, mit dem Mond und einigen Sternen im Hintergrund. |
![]() |
Aktion
Geben Sie an, was das Motiv tut (z.B. gehen, laufen oder den Kopf drehen).
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Eine Weitwinkelaufnahme einer Frau, die am Strand entlanggeht und bei Sonnenuntergang zufrieden und entspannt auf den Horizont blickt. |
![]() |
Stil
Fügen Sie Keywords hinzu, um die Generierung in eine bestimmte Richtung zu lenken, z.B. surreal, Vintage, futuristisch oder Film noir.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Film-noir-Stil, Mann und Frau gehen auf der Straße, Mystery, filmisch, schwarz-weiß. |
![]() |
Kamerabewegung und Bildkomposition
Geben Sie an, wie sich die Kamera bewegen soll (POV-Aufnahme, Luftaufnahme, Drohnenaufnahme mit Nachverfolgungsfunktion) und wie die Aufnahme gerahmt werden soll (Weitwinkelaufnahme, Nahaufnahme, Froschperspektive).
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Eine POV-Aufnahme aus einem Oldtimer, der nachts im Regen in Kanada fährt, filmreif. |
![]() |
Extrem nah aufgenommenes Auge, in dem sich eine Stadt spiegelt. |
![]() |
Ambiente
Farbpaletten und Beleuchtung beeinflussen die Stimmung. Verwenden Sie Begriffe wie „gedämpftes Orange, warme Farbtöne“, „natürliches Licht“, „Sonnenaufgang“ oder „kühle Blautöne“.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Nahaufnahme eines Mädchens, das einen niedlichen Golden Retriever-Welpen im Park hält, Sonnenlicht. |
![]() |
Kinoreife Nahaufnahme einer traurigen Frau, die im Regen mit dem Bus fährt, kühle Blautöne, traurige Stimmung. |
![]() |
Negative Prompts
Mit negativen Prompts geben Sie Elemente an, die nicht im Video enthalten sein sollen.
- ❌ Verwenden Sie keine Formulierungen wie keine oder nicht. (z. B. mit der „Keine Wände“).
- ✅ Beschreiben Sie, was Sie nicht sehen möchten. (z. B. mit der „Wand, Rahmen“).
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Ohne negativen Prompt Erstelle eine kurze, stilisierte Animation einer großen, einzelnen Eiche, deren Blätter im starken Wind wehen… [truncated] |
![]() |
Mit negativem Prompt: [Same prompt] Negativer Prompt: urbaner Hintergrund, von Menschen geschaffene Strukturen, dunkle, stürmische oder bedrohliche Atmosphäre. |
![]() |
Seitenverhältnisse
Mit Veo können Sie das Seitenverhältnis für Ihr Video festlegen.
Eingabeaufforderung | Generierte Ausgabe |
---|---|
Widescreen (16:9) Erstelle ein Video mit einer Tracking-Drohnenansicht eines Mannes, der in den 1970er-Jahren in Palm Springs in einem roten Cabrio fährt. Warmes Sonnenlicht, lange Schatten. |
![]() |
Hochformat (9:16) Erstelle ein Video, das die sanfte Bewegung eines majestätischen hawaiianischen Wasserfalls in einem üppigen Regenwald zeigt. Konzentriere dich auf einen realistischen Wasserfluss, detaillierte Blätter und natürliche Beleuchtung, um Ruhe zu vermitteln. Nehmen Sie das rauschende Wasser, die neblige Atmosphäre und das gefleckte Sonnenlicht auf, das durch das dichte Blätterdach dringt. Verwende sanfte, filmische Kamerabewegungen, um den Wasserfall und seine Umgebung zu präsentieren. Der Ton sollte ruhig und realistisch sein und den Zuschauer in die friedliche Schönheit des hawaiianischen Regenwalds entführen. |
![]() |
Beschränkungen
- Anfragelatenz:Min.: 11 Sekunden; Max.: 6 Minuten (während der Stoßzeiten).
- Regionale Einschränkungen:In der EU, im Vereinigten Königreich, in der Schweiz und in der MENA-Region sind die folgenden Werte für
personGeneration
zulässig:- Veo 3: Nur
allow_adult
. - Veo 2:
dont_allow
undallow_adult
. Der Standardwert istdont_allow
.
- Veo 3: Nur
- Videoaufbewahrung:Generierte Videos werden 2 Tage lang auf dem Server gespeichert und dann entfernt. Wenn Sie eine lokale Kopie speichern möchten, müssen Sie Ihr Video innerhalb von zwei Tagen nach der Erstellung herunterladen. Verlängerte Videos werden als neu generierte Videos behandelt.
- Wasserzeichen:Mit Veo erstellte Videos werden mit SynthID mit Wasserzeichen versehen. SynthID ist unser Tool zum Kennzeichnen und Identifizieren von KI-generierten Inhalten. Videos können über die SynthID-Bestätigungsplattform überprüft werden.
- Sicherheit:Generierte Videos werden durch Sicherheitsfilter und Prozesse zur Überprüfung der Speicherung geleitet, um Risiken in Bezug auf Datenschutz, Urheberrecht und Voreingenommenheit zu minimieren.
- Audiofehler:Veo 3.1 verhindert manchmal die Generierung eines Videos aufgrund von Sicherheitsfiltern oder anderen Verarbeitungsproblemen mit dem Audio. Wenn die Erstellung Ihres Videos blockiert wird, entstehen Ihnen keine Kosten.
Modellfunktionen
Funktion | Beschreibung | Veo 3.1 und Veo 3.1 Fast | Veo 3 und Veo 3 Fast | Veo 2 |
---|---|---|---|---|
Audio | Audio wird nativ mit Video generiert. | Audio wird nativ mit Video generiert. | ✔️ Immer aktiv | ❌ Nur stumm |
Eingabemodalitäten | Der Eingabetyp, der für die Generierung verwendet wird. | Video aus Text, Video aus Bild, Video aus Video | Video aus Text, Video aus Bild | Video aus Text, Video aus Bild |
Lösung | Die Ausgabeauflösung des Videos. | 720p und 1080p (nur 8 Sekunden lang) 720p nur bei Verwendung der Videoerweiterung. |
720p und 1080p (nur 16:9) | 720p |
Framerate | Die Ausgabeframerate des Videos. | 24 fps | 24 fps | 24 fps |
Videodauer | Länge des generierten Videos. | 8 Sekunden, 6 Sekunden, 4 Sekunden 8 Sekunden nur bei Verwendung von Referenzbildern |
8 Sekunden | 5–8 Sekunden |
Videos pro Anfrage | Anzahl der Videos, die pro Anfrage generiert werden. | 1 | 1 | 1 oder 2 |
Status und Details | Modellverfügbarkeit und weitere Details | Vorschau | Stabil | Stabil |
Modellversionen
Weitere Informationen zur Nutzung des Veo-Modells finden Sie auf den Seiten Preise und Ratenbeschränkungen.
Veo 3.1 (Vorabversion)
Attribut | Beschreibung |
---|---|
Modellcode |
Gemini API
|
Unterstützte Datentypen |
Eingabe Text, Bild Ausgabe Video mit Audio |
-Limits |
Texteingabe 1.024 Tokens Ausgabe-Video 1 |
Letzte Aktualisierung | September 2025 |
Veo 3.1 Fast (Vorabversion)
Attribut | Beschreibung |
---|---|
Modellcode |
Gemini API
|
Unterstützte Datentypen |
Eingabe Text, Bild Ausgabe Video mit Audio |
-Limits |
Texteingabe 1.024 Tokens Ausgabe-Video 1 |
Letzte Aktualisierung | September 2025 |
Veo 3
Attribut | Beschreibung |
---|---|
Modellcode |
Gemini API
|
Unterstützte Datentypen |
Eingabe Text, Bild Ausgabe Video mit Audio |
-Limits |
Texteingabe 1.024 Tokens Ausgabe-Video 1 |
Letzte Aktualisierung | Juli 2025 |
Veo 3 Fast
Mit Veo 3 Fast können Entwickler Videos mit Ton erstellen, die eine hohe Qualität aufweisen und für Schnelligkeit und geschäftliche Anwendungsfälle optimiert sind. Es eignet sich ideal für Backend-Dienste, mit denen programmatisch Anzeigen generiert werden, für Tools zum schnellen A/B-Testen von kreativen Konzepten oder für Apps, mit denen schnell Inhalte für soziale Medien erstellt werden müssen.Attribut | Beschreibung |
---|---|
Modellcode |
Gemini API
|
Unterstützte Datentypen |
Eingabe Text, Bild Ausgabe Video mit Audio |
-Limits |
Texteingabe 1.024 Tokens Ausgabe-Video 1 |
Letzte Aktualisierung | Juli 2025 |
Veo 2
Attribut | Beschreibung |
---|---|
Modellcode |
Gemini API
|
Unterstützte Datentypen |
Eingabe Text, Bild Ausgabe Video |
-Limits |
Texteingabe – Bildeingabe Beliebige Bildauflösung und beliebiges Seitenverhältnis bis zu einer Dateigröße von 20 MB Ausgabe-Video Bis zu 2 |
Letzte Aktualisierung | April 2025 |