DEV Community

Cover image for Cara Memperpanjang Video menjadi 40 Detik dengan Gemini Omni 1.1 Flash
Walse
Walse

Posted on Originally published at apidog.com

Cara Memperpanjang Video menjadi 40 Detik dengan Gemini Omni 1.1 Flash

Gemini Omni 1.1 Flash menghasilkan klip berdurasi 10 detik. Fitur perpanjangan adegan menambahkan 10 detik pada setiap panggilan, hingga durasi kumulatif 40 detik.

Coba Apidog hari ini

Mekanisme ini sudah tersedia pada model pratinjau, tetapi konteksnya hanya mencakup detik terakhir rekaman. Akibatnya, warna dapat tetap konsisten, tetapi pakaian karakter bisa berubah dan pergerakan kamera diatur ulang.

Rilis GA pada 27 Agustus 2026 meningkatkan konteks sebelumnya menjadi 10 detik. Google menyebutnya sebagai "peningkatan konsistensi visual dan kepatuhan naratif".

Panduan ini membahas cara memanggil fitur tersebut, batasan yang perlu diperhitungkan, dan cara menjaga urutan 40 detik tetap konsisten hingga segmen terakhir.

Panggilan perpanjangan dasar

Perpanjangan menggunakan Files API. Unggah klip, lalu teruskan URI-nya bersama prompt yang menjelaskan kelanjutan adegan:

import base64
from google import genai

client = genai.Client()

video_file = client.files.upload(file="my_video.mp4")

interaction = client.interactions.create(
    model="gemini-omni-1.1-flash",
    input=[
        {"type": "document", "uri": video_file.uri},
        {"type": "text", "text": "Lanjutkan adegan."},
    ],
)

with open("extended.mp4", "wb") as f:
    f.write(base64.b64decode(interaction.output_video.data))

Enter fullscreen mode Exit fullscreen mode

Unggahan diproses secara asinkron. Periksa status file sebelum mengirim interaksi:

import time

while video_file.state == "PROCESSING":
    time.sleep(10)
    video_file = client.files.get(name=video_file.name)

if video_file.state == "FAILED":
    raise ValueError(video_file.state)

Enter fullscreen mode Exit fullscreen mode

Jika video berasal dari Omni dalam sesi yang sama, Anda dapat melewati proses unggah dan menggunakan ID interaksi sebelumnya. Cara ini lebih hemat token dan mempertahankan lebih banyak status:

res2 = client.interactions.create(
    model="gemini-omni-1.1-flash",
    previous_interaction_id=res1.id,
    input="Kamera mundur untuk menampilkan seluruh jalan.",
)

Enter fullscreen mode Exit fullscreen mode

Panduan API mencakup opsi resolusi dan metode pengiriman.

Membawa karakter ke dalam perpanjangan

Anda dapat melampirkan media referensi dan merujuknya dari prompt. Referensi yang diunggah mendapat slot seperti <IMAGE_REF_0>, <IMAGE_REF_1>, dan seterusnya:

video_file = client.files.upload(file="my_video.mp4")
character_img = client.files.upload(file="character.png")

interaction = client.interactions.create(
    model="gemini-omni-1.1-flash",
    input=[
        {"type": "document", "uri": video_file.uri},
        {"type": "document", "uri": character_img.uri},
        {"type": "text", "text": "Perpanjang video ini: minta karakter yang ditunjukkan di <IMAGE_REF_0> masuk ke adegan dan melambai."},
    ],
)

Enter fullscreen mode Exit fullscreen mode

Referensi video juga didukung, dengan batas tiga klip dan durasi maksimal tiga detik per klip. Model menggunakannya untuk memahami pergerakan dan penampilan; audio dari klip referensi diabaikan.

Batasan yang perlu diketahui

  • Durasi maksimal 40 detik. Satu urutan terdiri dari satu generasi awal dan maksimal tiga perpanjangan.
  • Perpanjangan hanya menambahkan ke akhir. Anda tidak dapat menambahkan rekaman di awal atau menyisipkannya di tengah. Jika segmen kedua bermasalah, segmen kedua dan semua segmen setelahnya harus dibuat ulang.
  • Input unggahan maksimal 10 detik. Batas ini berlaku untuk video yang diunggah. Rangkaian multi-giliran dengan previous_interaction_id tidak terikat batas tersebut karena model mempertahankan status sebelumnya.
  • Tidak ada dialog pada unggahan yang diperpanjang. Anda dapat memperpanjang klip milik pihak lain tanpa dialog atau menggunakan interaksi multi-giliran, tetapi dialog tidak dapat ditambahkan saat memperpanjang unggahan.
  • Ada pembatasan regional. Pengunggahan dan pengeditan video tidak tersedia di Wilayah Ekonomi Eropa, Swiss, dan Inggris. Video hasil generasi tetap dapat diedit di wilayah tersebut, sehingga jalur previous_interaction_id masih berfungsi, sedangkan jalur unggahan tidak.
  • Satu video pada satu waktu. Model tidak dapat menalar beberapa video input sekaligus.

Susun alur sebelum merender

Urutan 40 detik pada 720p berharga sekitar $4,06 untuk output video. Masalah sering muncul pada segmen ketiga, sehingga Anda mungkin perlu membuat ulang segmen ketiga dan keempat—bahkan berisiko mengubah bagian pembuka segmen ketiga yang sudah bagus.

Mulailah dengan merancang seluruh alur pada 360p. Mode ini dapat menghasilkan video hingga 60% lebih cepat dengan sepertiga biaya, sehingga empat segmen berharga sekitar $1,35. Setelah alurnya konsisten, render ulang pada 720p atau lebih tinggi menggunakan prompt yang telah divalidasi.

Artikel harga memuat perhitungan lengkap.

Atur resolusi melalui format respons:

interaction = client.interactions.create(
    model="gemini-omni-1.1-flash",
    input=[
        {"type": "document", "uri": video_file.uri},
        {"type": "text", "text": "Lanjutkan adegan."},
    ],
    response_format={"type": "video", "resolution": "360p"},
)

Enter fullscreen mode Exit fullscreen mode

Tulis prompt yang konsisten di empat segmen

Gunakan pola berikut:

Jelaskan perubahan, bukan seluruh adegan. Model sudah melihat 10 detik sebelumnya. Mengulang deskripsi latar dapat membuatnya menafsirkan ulang adegan. Gunakan instruksi seperti “Kamera mendekat ke pintu”, bukan paragraf baru tentang ruangan.

Berikan satu gerakan per segmen. Prompt yang meminta dua aksi sering menghasilkan keduanya secara terburu-buru. Anggap 10 detik sebagai satu tindakan.

Sebutkan jangkar kontinuitas secara eksplisit. Nyatakan elemen yang harus tetap sama, misalnya “jaket merah yang sama” atau “sudut rendah yang sama”.

Rencanakan sesuai urutan pemutaran. Karena fitur ini hanya menambahkan ke akhir, Anda tidak dapat memperbaiki awal klip tanpa membuat ulang semua segmen setelahnya.

Keahlian prompt sangat penting. Panduan prompt Veo membahas prinsip yang dapat diterapkan di berbagai model video.

Uji setiap perpanjangan secara konsisten

Empat panggilan berantai berarti ada empat titik tempat perilaku model dapat berubah. Menilai regresi hanya dari render akhir juga sulit dilakukan secara visual.

Simpan setiap tahap sebagai permintaan terpisah di Apidog. Simpan URI file dan ID interaksi dalam variabel lingkungan agar segmen tertentu dapat dijalankan ulang tanpa membangun ulang seluruh rantai.

Periksa format respons karena perpanjangan beresolusi tinggi dapat membuat file melebihi 4 MB, sehingga respons beralih dari base64 inline ke URI. Tingkatkan batas waktu jauh di atas nilai default karena perpanjangan membutuhkan waktu lebih lama daripada generasi awal saat model membaca konteks 10 detik sebelumnya.

Harness ini dapat menghemat waktu ketika Anda perlu menentukan apakah masalah jahitan disebabkan oleh prompt atau pembaruan model. Unduh Apidog untuk memulainya.

FAQ

Berapa durasi maksimal video Gemini Omni?

Durasi kumulatifnya 40 detik: generasi awal 10 detik ditambah tiga perpanjangan masing-masing 10 detik.

Bisakah saya memperpanjang video yang direkam sendiri?

Bisa, hingga 10 detik input, selama Anda berada di luar EEA, Swiss, dan Inggris. Unggah video melalui Files API, lalu gunakan URI-nya.

Bisakah saya menambahkan rekaman ke awal klip?

Tidak. Perpanjangan hanya menambahkan rekaman ke akhir.

Mengapa penampilan karakter berubah di antara segmen?

Biasanya karena prompt mengulang deskripsi adegan, bukan menjelaskan perubahannya, atau karena jangkar kontinuitas tidak disebutkan secara eksplisit. Nyatakan elemen yang harus tetap sama dan pertimbangkan untuk meneruskan gambar karakter sebagai referensi.

Apakah setiap perpanjangan dikenai biaya tambahan?

Ya. Setiap perpanjangan menagih 10 detik output video, ditambah token input untuk konteks yang dibaca model.

Bagaimana jika saya membutuhkan video lebih dari 40 detik?

Veo 3.1 dapat memperpanjang video 7 detik per panggilan hingga 148 detik, tetapi hanya pada 720p. Perbandingan model membahas pertukarannya, sedangkan panduan API Veo menjelaskan detail integrasi.

Perpanjangan adegan mengubah Omni dari demo menjadi fitur yang dapat digunakan dalam produk, tetapi hasilnya tetap membutuhkan perencanaan. Buat storyboard empat ketukan, uji seluruh alur pada 360p, batasi setiap prompt pada satu gerakan, lalu gunakan anggaran 720p hanya untuk versi yang sudah terbukti berhasil.

Top comments (0)