Zum Hauptinhalt springen
POST
Text- und bildbasierte Videogenerierung unterstützt ganze Sekunden von 3 bis 15; Standard ist 10. Start-/Endbild-Interpolation und der hinzugefügte Abschnitt einer Verlängerung unterstützen höchstens 10 Sekunden. Bei Bearbeitung wird duration ignoriert und die Länge des Quellvideos beibehalten. Videoeingaben werden standardmäßig bearbeitet. Zum Verlängern ist "omni_reference_task_type": "extend" erforderlich.

Authentifizierung

string
erforderlich
Bearer-Token verwenden. Einen Schlüssel erhalten Sie in der API-Key-Verwaltung. Anfragen mit Content-Type: application/json senden.

Anfrageparameter

string
erforderlich
Muss gemini-omni-1.2-flash sein.
string
erforderlich
Erforderliche Textanweisung: Bei Text-zu-Video die Szene beschreiben, bei Bild-zu-Video, Bearbeitung oder Verlängerung Bewegung, Stil oder Änderungen. prompt ist auch bei Referenzbildern, Start-/Endbildern, Videos oder extend_from_task_id erforderlich. Ohne diesen Parameter wird HTTP 400 zurückgegeben.
integer
Standard:"10"
Ausgabelänge für text- und bildbasierte Videogenerierung als Ganzzahl von 3 bis 15, Standard 10. Start-/Endbild-Interpolation und Verlängerung erlauben nur 3–10 Sekunden. Bei Verlängerung bezeichnet dies den hinzugefügten Abschnitt; das Ergebnis enthält das Original und den neuen Abschnitt. Bei Bearbeitung wird duration ignoriert und die Länge des Quellvideos beibehalten. Parameterwerte außerhalb des zulässigen Bereichs lassen die Aufgabe mit invalid_duration fehlschlagen.
string
Standard:"720p"
360p / 720p / 1080p / 4k, unabhängig von Groß-/Kleinschreibung. 2160p wird als 4k behandelt. 1080p und 4k werden hochskaliert. Die Auflösung beeinflusst Ausgabe-Token und reserviertes Guthaben. Andere Werte führen zu invalid_resolution.
string
Standard:"16:9"
Nur 16:9 (Querformat, Standard) und 9:16 (Hochformat). Andere Werte werden als 16:9 behandelt.
string[]
Referenzbilder ausschließlich als öffentlich zugängliche direkte HTTP(S)-Bild-URLs. Data-URLs und Base64 werden nicht unterstützt. Ein Bild dient standardmäßig als Startbild; mehrere Bilder als Motivvorlagen. Insgesamt höchstens 10 Bilder einschließlich Start-/Endbildern. Für Figuren werden höchstens 2 Figuren mit je bis zu 3 Bildern empfohlen, insgesamt maximal 6 Bilder.
string
Startbild. Allein verwendet beginnt das Video mit diesem Bild; zusammen mit last_frame_image wird zwischen Start- und Endbild interpoliert. Nur öffentlich zugängliche direkte HTTP(S)-Bild-URLs werden unterstützt.
string
Endbild; erfordert first_frame_image, sonst schlägt die Aufgabe mit invalid_frame_images fehl. Beide Bilder sollten dasselbe Seitenverhältnis haben und zu aspect_ratio passen. Nur öffentlich zugängliche direkte HTTP(S)-Bild-URLs werden unterstützt.
object[]
Bilder mit Rollen als Alternative zu den direkten Start-/Endbild-Feldern. Eine der beiden Schreibweisen wählen. Alle verwendeten Bilder zählen zur Gesamtgrenze von 10.
string[]
Video zur Bearbeitung oder Verlängerung: höchstens 1 Clip mit maximal 15 Sekunden. Nur öffentlich zugängliche direkte HTTP(S)-Video-URLs werden unterstützt. Data-URLs und Base64 werden nicht unterstützt. Videoeingaben werden standardmäßig bearbeitet.
string
Standard:"auto"
Aufgabentyp: auto (Standard, aus der Eingabe abgeleitet) / edit (Bearbeitung) / extend (Verlängerung) / reference (mehrere Referenzbilder). Auch text_to_video / image_to_video / reference_to_video werden akzeptiert. Ohne Angabe oder bei auto bewirken video_urls und extend_from_task_id standardmäßig eine Bearbeitung. Zum Verlängern explizit extend angeben.
string
ID einer eigenen vorherigen Generierungsaufgabe. Das Video wird ohne erneuten Upload verwendet. Standard ist Bearbeitung. Mit "omni_reference_task_type": "extend" wird am Ende ein Abschnitt von höchstens 10 Sekunden angefügt.

Funktionen und Grenzen

  • Ausgabe mit 24fps und Dialog, Musik oder Geräuschen. Gewünschten Ton in prompt beschreiben.
  • Audioeingaben, System-Prompts, temperature und negative Prompt-Parameter werden nicht unterstützt. Ausschlüsse direkt in prompt formulieren.
  • Regionale Beschränkungen des Anbieters: Im EWR, in der Schweiz und im Vereinigten Königreich werden die Bearbeitung oder Verlängerung hochgeladener Videos sowie die Bearbeitung von Bildern mit Minderjährigen nicht unterstützt.
  • Alle Ausgaben enthalten ein unsichtbares SynthID-Wasserzeichen.

Beispiele

Jeden JSON-Body an POST /v1/videos/generations senden. Beispiel-URLs und Aufgaben-IDs durch eigene nutzbare Eingaben ersetzen.

15 Sekunden in 4K im Hochformat

Bild-zu-Video und mehrere Motivvorlagen

Start-/Endbild-Interpolation

Bilder über Rollen zuweisen

Videobearbeitung

Bei Bearbeitung entspricht die Ausgabelänge dem Quellvideo; duration hat keine Wirkung. Kurze, konkrete Bearbeitungsanweisungen verwenden. Für eine lokale Änderung kann Keep everything else the same ergänzt werden.

Vorherige Aufgabe verlängern

Für ein hochgeladenes Video extend_from_task_id durch video_urls ersetzen und "omni_reference_task_type": "extend" beibehalten. Das zurückgegebene Video enthält das Original und den am Ende angefügten Abschnitt. duration steuert nur die neue Länge von höchstens 10 Sekunden; berechnet werden nur die hinzugefügten Sekunden. Ein 5 Sekunden langes Original mit duration: 4 ergibt beispielsweise ein Video von etwa 9 Sekunden.

Übermittlungsantwort und Aufgabenstatus

Eine erfolgreiche Übermittlung liefert HTTP 200. Die Aufgaben-ID steht in data[0].task_id. Den Aufgabenstatus alle 5–10 Sekunden bis completed oder failed abfragen. Insgesamt 10 Minuten Wartezeit vorsehen. Bei einem Client-Timeout die ursprüngliche Aufgabe weiter abfragen, statt sie erneut einzureichen.
Zeitliche Richtwerte: 15 Sekunden Video in 360p benötigen etwa 30 Sekunden, in 4K etwa 5 Minuten. Maßgeblich ist der Aufgabenstatus.
data der Abfrageantwort ist das Aufgabenobjekt. data.result.videos[0].url ist ein Array; die erste Video-URL lautet data.result.videos[0].url[0]. Direkt abspielen oder herunterladen und für eine dauerhafte Aufbewahrung selbst archivieren. data.cost ist der endgültige Betrag in USD.

Abrechnung und Guthabenreservierung

Tokenbasierte Abrechnung: Die Auflösung beeinflusst die Ausgabe-Token pro Sekunde. Bei text- und bildbasierter Videogenerierung bestimmt duration die Ausgabelänge. Bei Bearbeitung wird der Wert ignoriert und die Länge des Quellvideos beibehalten; bei Verlängerung bestimmt er nur die Länge des hinzugefügten Abschnitts. Aktuelle Tarife stehen auf der APIMart-Preisseite. Bei Übermittlung wird Guthaben anhand der Auflösung und max(10, duration) Sekunden reserviert; bei Videoeingaben werden 15 Sekunden geschätzt. Die Reservierung ist nicht der Endbetrag. Nach Erfolg wird anhand der tatsächlichen Nutzung abgerechnet. Den Endbetrag zeigt data.cost. Verlängerungen werden nur für hinzugefügte Sekunden berechnet. Fehlgeschlagene Aufgaben sind kostenfrei. Reicht das Guthaben für die Reservierung nicht aus, wird HTTP 402 zurückgegeben.

Fehlerbehandlung

Parameterfehler (invalid_* / unsupported_*) setzen die Aufgabe sofort auf failed, ohne Kosten. Auch nach erfolgreicher Übermittlung den Aufgabenstatus prüfen.

Häufige Fragen

Ist prompt auch bei Bildern oder Videos erforderlich?

Ja. Alle Modi erfordern prompt, einschließlich Bild-zu-Video, Start-/Endbild-Interpolation, Bearbeitung, Verlängerung und Wiederverwendung eines Videos über extend_from_task_id. Ohne dieses Feld wird HTTP 400 zurückgegeben.

Kann ich Bilder oder Videos direkt als Base64 senden?

Nein. image_urls, first_frame_image, last_frame_image, image_with_roles[].url und video_urls akzeptieren nur öffentlich zugängliche direkte HTTP(S)-URLs. Keine data:image/..., data:video/... oder reinen Base64-Zeichenfolgen senden.