Membuat dan mengedit video dengan Gemini Omni Flash

Gemini Omni Flash (gemini-omni-flash-preview) adalah model multimodal berperforma tinggi yang dirancang untuk pembuatan, pengeditan, dan kontrol sinematik video berkecepatan tinggi. Gemini Omni dibangun berdasarkan kemampuan inti berikut yang membedakannya dari model video sebelumnya:

  • Multimodalitas bawaan: model ini memproses teks, gambar, audio, dan video secara bersamaan, sehingga memberikan output yang lebih kohesif, konsisten, dan dapat dikontrol.
  • Pengeditan percakapan: diaktifkan oleh Interactions API, yang memungkinkan Anda menyempurnakan dan mengedit video secara berulang melalui percakapan bahasa alami. Deskripsikan hal yang ingin Anda ubah, dan model akan menerapkan pengeditan sambil mempertahankan bagian video yang ingin Anda pertahankan.
  • Pengetahuan dunia: Gemini Omni menggabungkan pemahaman tentang fisika dengan pengetahuan Gemini tentang sejarah, sains, dan konteks budaya, sehingga menjembatani kesenjangan dari fotorealisme ke penceritaan yang bermakna.

Pembuatan video dari teks

Buat video dari perintah teks. Model ini membuat video dengan audio berdasarkan deskripsi teks Anda. Tulis perintah dengan detail seperti deskripsi adegan, gerakan kamera, pencahayaan, dan suasana untuk mendapatkan hasil terbaik.

Python

import base64
from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-omni-flash-preview",
    input="A marble rolling fast on a chain reaction style track, continuous smooth shot."
)
with open("marble.mp4", "wb") as f:
    f.write(base64.b64decode(interaction.output_video.data))

JavaScript

import { GoogleGenAI } from '@google/genai';
import * as fs from 'fs';
const ai = new GoogleGenAI({});

const interaction = await ai.interactions.create({  
  model: 'gemini-omni-flash-preview',  
  input: 'A marble rolling fast on a chain reaction style track, continuous smooth shot.',
});

if (interaction.output_video?.data) {
  fs.writeFileSync('marble.mp4', Buffer.from(interaction.output_video.data, 'base64'));
}

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions?key=$API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "gemini-omni-flash-preview",
 "input": "A marble rolling fast on a chain reaction style track, continuous smooth shot."
}'

Skema respons REST

Kolom praktis interaction.output_video hanya untuk SDK. Dapatkan output video dari array steps saat menggunakan REST API secara langsung.

Struktur JSON REST mentah:

{
  "steps": [
    { "type": "user_input", "content": [{"type": "text", "text": "..."}] },
    { "type": "thought", "content": [{"text": "...", "type": "thought"}] },
    {
      "type": "model_output",
      "content": [
        {
          "type": "video",
          "mime_type": "video/mp4",
          "data": "AAAAIGZ0eXBpc29t..." // Base64 encoded video data
        }
      ]
    }
  ],
  "id": "v1_...",
  "status": "completed",
  "model": "gemini-omni-flash-preview",
  "object": "interaction"
}

Mengontrol rasio aspek

Tetapkan aspect_ratio ke "9:16" untuk membuat video potret. Lanskap (16:9) adalah setelan default.

Python

import base64
from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-omni-flash-preview",
    input="A futuristic city with neon lights and flying cars, cyberpunk style",
    response_format={
        "type": "video",  # optional
        "aspect_ratio": "9:16"  # Supported values: "9:16", "16:9"
    }
)
with open("example.mp4", "wb") as f:
    f.write(base64.b64decode(interaction.output_video.data))

JavaScript

import { GoogleGenAI } from '@google/genai';
import * as fs from 'fs';
const ai = new GoogleGenAI({});

const interaction = await ai.interactions.create({
  model: 'gemini-omni-flash-preview',
  input: 'A futuristic city with neon lights and flying cars, cyberpunk style',
  response_format: {
    type: 'video', // optional
    aspect_ratio: '9:16' // Supported values: '9:16', '16:9'
  },
});

if (interaction.output_video?.data) {
  fs.writeFileSync('example.mp4', Buffer.from(interaction.output_video.data, 'base64'));
}

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions?key=$API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "gemini-omni-flash-preview",
 "input": "A futuristic city with neon lights and flying cars, cyberpunk style",
 "response_format": {
   "type": "video",
   "aspect_ratio": "9:16"
 }
}'

Pembuatan video dari gambar

Anda dapat memberikan gambar referensi dengan perintah teks. Bergantung pada perintah Anda, model akan memutuskan cara menggunakan gambar. Hal ini berguna untuk menghidupkan foto produk, ilustrasi, atau foto.

Contoh berikut menunjukkan cara menggunakan gambar referensi gambar ikan yang melompat keluar dari air:

Gambar ikan melompat dari air

Dengan perintah berikut:

turn this into realistic footage, using the drawing only as a guide for movement, do not show the drawing in the final video

Untuk membuat video gambar yang realistis.

Python

import base64
from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-omni-flash-preview",
    input=[
        {"type": "image", "data": base64_image, "mime_type": "image/jpeg"},
        {"type": "text", "text": "turn this into realistic footage, using the drawing only as a guide for movement, do not show the drawing in the final video"}
    ],
)
with open("clownfish.mp4", "wb") as f:
    f.write(base64.b64decode(interaction.output_video.data))

JavaScript

import { GoogleGenAI }