Skip to main content
Dieser Artikel stellt die Anleitung zur Integration der Gemini Videos Generation API vor, mit der durch die Eingabe von Text-Prompts (sowie optionalen Referenzbildern) Google-Gemini-Videos (omni-flash) generiert werden können.

Antragsprozess

Um die Gemini Videos Generation API zu verwenden, rufen Sie zunächst in der Ace Data Cloud-Konsole Ihren API-Token ab und bewahren Sie ihn als Reserve auf. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach Abschluss kehren Sie automatisch zu dieser Seite zurück. Ein API-Token kann alle Dienste der Plattform aufrufen, ohne dass für jeden Dienst ein separater Antrag erforderlich ist. Bei der ersten Beantragung wird ein kostenloses Guthaben gewährt, das kostenlos getestet werden kann; bei unzureichendem Guthaben kann in der Konsole ein allgemeines Guthaben aufgeladen werden.
📘 Vollständige Dokumentation: Gemini Videos Generation API →

Grundlegende Verwendung

Lernen wir zunächst die grundlegende Verwendung kennen. Durch die Eingabe des Prompts prompt, des Modells model sowie des Seitenverhältnisses aspect_ratio kann das entsprechende Video generiert werden. Hier ist zu sehen, dass wir Request Headers festgelegt haben, einschließlich:
  • accept: In welchem Format die Antwortergebnisse empfangen werden sollen. Hier wird application/json angegeben, also das JSON-Format.
  • authorization: Der Schlüssel zum Aufrufen der API, der nach der Beantragung direkt über ein Dropdown ausgewählt werden kann.
Zusätzlich wurde der Request Body festgelegt, einschließlich:
  • prompt: Der Text-Prompt zur Beschreibung des gewünschten Videoinhalts, erforderlich.
  • model: Das Modell zur Videogenerierung. Derzeit wird nur omni-flash unterstützt, der Standardwert ist ebenfalls omni-flash.
  • aspect_ratio: Das Seitenverhältnis des generierten Videos. Es kann 16:9 (Querformat) oder 9:16 (Hochformat) gewählt werden, der Standardwert ist 16:9.
  • resolution: Die optionale Ausgabeauflösung. Es kann 720p oder 1080p gewählt werden, der Standardwert ist 720p.
  • image_urls: Optionales Array von Referenzbild-Links zur Steuerung der Videogenerierung; leere Einträge werden ignoriert. Bei der Videobearbeitung mit video_urls ist dieser Parameter erforderlich (mindestens ein Bild).
  • video_urls: Optionales Array von Referenzvideo-Links (maximal 1) für Videobearbeitung / Videoreferenz; bei Angabe muss gleichzeitig mindestens ein image_urls bereitgestellt werden.
  • callback_url: Asynchrone Callback-Adresse. Nach dem Festlegen gibt die API sofort task_id zurück und sendet bei Abschluss der Aufgabe das Ergebnis per POST an diese Adresse.
  • async: Optional. Wenn es auf true gesetzt wird, gibt die Schnittstelle sofort task_id zurück, ohne dass callback_url angegeben werden muss. Anschließend wird das Ergebnis durch Abfragen der entsprechenden Task-Abfrage-Schnittstelle abgerufen.
Klicken Sie zum Testen auf die Schaltfläche „Try“. Das erhaltene Ergebnis sieht etwa wie folgt aus:
Das Rückgabeergebnis enthält mehrere Felder, die wie folgt beschrieben werden:
  • success: Ob diese Anfrage zur Videogenerierung erfolgreich war.
  • task_id: Die ID dieser Videogenerierungsaufgabe.
  • trace_id: Die Tracking-ID dieser Anfrage, die zur Fehleranalyse verwendet wird.
  • data: Liste der generierten Videoergebnisse.
    • id: Die eindeutige Kennung des generierten Videos.
    • video_url: Die Link-Adresse des generierten Videos (bei state = pending ist sie null).
    • state: Der Status der Videogenerierungsaufgabe; mögliche Werte sind pending / succeeded / failed.
    • aspect_ratio: Das Seitenverhältnis dieses Videos, das mit dem Anfrageparameter übereinstimmt.
    • prompt: Der zur Generierung dieses Videos verwendete Prompt.
Bei synchroner Rückgabe werden auf oberster Ebene auch Felder wie started_at, finished_at, elapsed (Dauer, Sekunden) sowie cost (Kosten dieser Anfrage, Einheit: Credit) hinzugefügt. Wir müssen nur das generierte Video über die Link-Adresse video_url in data im Ergebnis abrufen. Der entsprechende CURL-Code lautet wie folgt:
Der entsprechende Python-Code lautet wie folgt:

Bild-zu-Video

Wenn Sie ein Video auf Basis von Referenzbildern generieren möchten, können Sie in image_urls einen oder mehrere Bild-Links übergeben, um die Videogenerierung zu steuern:

Videobearbeitung / Referenzvideo (Video eingeben, Video generieren)

Es wird unterstützt, direkt „ein Video einzugeben und ein neues Video zu generieren“: Übergeben Sie in video_urls einen Referenzvideo-Link (maximal 1) und stellen Sie gleichzeitig in image_urls mindestens ein Referenzbild bereit (zwingende Anforderung der vorgelagerten Schnittstelle). Beschreiben Sie dann mit prompt den gewünschten Bearbeitungseffekt (Stil ändern, Szene wechseln, Elemente hinzufügen oder entfernen usw.). Nachfolgend finden Sie ein vollständiges reales Beispiel — ein sonniges Strandvideo wird in eine verschneite Winterszene geändert, während die Anordnung von Strand, Palmen und Booten beibehalten wird. Die Videobearbeitung dauert länger (in diesem Beispiel etwa 6,5 Minuten), daher wird sie mit async: true asynchron übermittelt:
Nach der Übermittlung gibt die API sofort die task_id zurück:
Verwenden Sie anschließend diese task_id als id, um die Gemini Tasks API abzufragen. Nach Abschluss der Aufgabe können Sie das neu generierte Video abrufen (dies ist das tatsächliche Rückgabeergebnis dieses Beispiels):
Für ein Ergebnis mit höherer Auflösung können Sie resolution auf 1080p setzen (die übrigen Parameter bleiben unverändert).
Hinweis: Die Eingabe-/Ausgabe-Medienlinks im Beispiel sind allesamt echte Generierungsergebnisse. Die von der Plattform generierten Video- und Bildlinks haben eine Aufbewahrungsfrist und werden nach Ablauf ungültig. Laden Sie sie nach Erhalt der Ergebnisse bitte zeitnah herunter und speichern Sie sie in Ihrem eigenen Speicher.
Achtung: Es ist höchstens 1 Referenzvideo erlaubt; außerdem muss beim Bereitstellen von video_urls mindestens ein image_urls-Bild bereitgestellt werden, andernfalls wird der folgende Parameterfehler zurückgegeben:

Asynchroner Callback

Die Videogenerierung benötigt eine gewisse Verarbeitungszeit. Wenn Sie nicht auf eine lange Verbindung warten möchten, können Sie callback_url übergeben. In diesem Fall gibt die API sofort die task_id zurück und sendet nach Abschluss der Aufgabe das Endergebnis per POST an diese Adresse:
Das sofort zurückgegebene Ergebnis lautet wie folgt:

Aufgabenergebnis abfragen

Wenn ein asynchroner Callback verwendet wurde oder Sie den Aufgabenstatus aktiv abfragen möchten, können Sie über die Gemini Tasks API (POST https://api.acedata.cloud/gemini/tasks) anhand der task_id den neuesten Status und das Ergebnis der Aufgabe abfragen. Übergeben Sie im Request-Body die beim Erstellen des Videos zurückgegebene task_id als id:
Das nach Abschluss der Aufgabe zurückgegebene Ergebnis sieht ähnlich wie folgt aus. Die Struktur von response.data entspricht derjenigen bei der synchronen Generierung (während der Generierung ist state pending und video_url null):

Fehlerbehandlung

Wenn bei einer Anfrage ein Problem auftritt, gibt die API den entsprechenden Fehlercode und eine Beschreibung zurück. Häufige Fälle sind:
  • 400: Die Anfrageparameter sind fehlerhaft, zum Beispiel fehlt prompt oder der Wert von aspect_ratio ist ungültig.
  • 401: Authentifizierung fehlgeschlagen, das Token ist ungültig oder stimmt nicht mit der API überein.
  • 403: Unzureichendes Guthaben oder der Prompt wurde aufgrund der Inhaltsprüfung abgelehnt.
  • 500: Interner Serverfehler oder die Upstream-Generierung ist fehlgeschlagen.