Gemini API menyediakan akses ke Veo 2, model pembuatan video canggih Google. Veo dirancang untuk membantu Anda membuat aplikasi AI generasi berikutnya yang mengubah perintah dan gambar pengguna menjadi aset video berkualitas tinggi.
Panduan ini akan membantu Anda memulai Veo menggunakan Gemini API.
Tentang Veo
Veo adalah model pembuatan video tercanggih Google hingga saat ini. Model ini menghasilkan video dalam berbagai gaya sinematik dan visual, yang menangkap nuansa perintah untuk merender detail rumit secara konsisten di seluruh frame.
Untuk mempelajari lebih lanjut dan melihat contoh output, lihat ringkasan Google DeepMind Veo.
Spesifikasi
Modalitas |
|
Latensi permintaan |
|
Pembuatan panjang variabel | 5-8 detik |
Resolusi | 720p |
Kecepatan frame | 24 fps |
Rasio aspek |
|
Bahasa input (teks ke video) | Inggris |
Video yang dibuat oleh Veo diberi watermark menggunakan SynthID, alat kami untuk memberi watermark dan mengidentifikasi konten buatan AI, serta diteruskan melalui filter keamanan dan proses pemeriksaan menghafal yang membantu mengurangi risiko privasi, hak cipta, dan bias.
Sebelum memulai
Sebelum memanggil Gemini API, pastikan Anda telah menginstal SDK pilihan, dan kunci Gemini API dikonfigurasi serta siap digunakan.
Untuk menggunakan Veo dengan Google Gen AI SDK, pastikan Anda telah menginstal salah satu versi berikut:
- Python v1.10.0 atau yang lebih baru
- TypeScript dan JavaScript v0.8.0 atau yang lebih baru
- Go v1.0.0 atau yang lebih baru
Buat video
Bagian ini memberikan contoh kode untuk membuat video menggunakan perintah teks dan menggunakan gambar.
Membuat dari teks
Anda dapat menggunakan kode berikut untuk membuat video dengan Veo:
Python
import time
from google import genai
from google.genai import types
client = genai.Client() # read API key from GOOGLE_API_KEY
operation = client.models.generate_videos(
model="veo-2.0-generate-001",
prompt="Panning wide shot of a calico kitten sleeping in the sunshine",
config=types.GenerateVideosConfig(
person_generation="dont_allow", # "dont_allow" or "allow_adult"
aspect_ratio="16:9", # "16:9" or "9:16"
),
)
while not operation.done:
time.sleep(20)
operation = client.operations.get(operation)
for n, generated_video in enumerate(operation.response.generated_videos):
client.files.download(file=generated_video.video)
generated_video.video.save(f"video{n}.mp4") # save the video
REST
# Use curl to send a POST request to the predictLongRunning endpoint
# The request body includes the prompt for video generation
curl "${BASE_URL}/models/veo-2.0-generate-001:predictLongRunning?key=${GOOGLE_API_KEY}" \
-H "Content-Type: application/json" \
-X "POST" \
-d '{
"instances": [{
"prompt": "Panning wide shot of a calico kitten sleeping in the sunshine"
}
],
"parameters": {
"aspectRatio": "16:9",
"personGeneration": "dont_allow",
}
}' | tee result.json | jq .name | sed 's/"//g' > op_name
Kode ini memerlukan waktu sekitar 2-3 menit untuk dijalankan, meskipun mungkin memerlukan waktu lebih lama jika resource dibatasi. Setelah selesai berjalan, Anda akan melihat video yang terlihat seperti ini:
Jika Anda melihat pesan error, bukan video, artinya resource terbatas dan permintaan Anda tidak dapat diselesaikan. Dalam hal ini, jalankan kode lagi.
Video yang dihasilkan disimpan di server selama 2 hari, lalu dihapus. Jika ingin menyimpan salinan lokal video yang dihasilkan, Anda harus menjalankan
result()
dan save()
dalam waktu 2 hari setelah pembuatan.
Membuat dari gambar
Anda juga dapat membuat video menggunakan gambar. Kode berikut menghasilkan gambar menggunakan Imagen, lalu menggunakan gambar yang dihasilkan sebagai frame awal untuk video yang dihasilkan.
Pertama, buat gambar menggunakan Imagen:
Python
prompt="Panning wide shot of a calico kitten sleeping in the sunshine",
imagen = client.models.generate_images(
model="imagen-3.0-generate-002",
prompt=prompt,
config=types.GenerateImagesConfig(
aspect_ratio="16:9",
number_of_images=1
)
)
imagen.generated_images[0].image
Kemudian, buat video menggunakan gambar yang dihasilkan sebagai frame pertama:
Python
operation = client.models.generate_videos(
model="veo-2.0-generate-001",
prompt=prompt,
image = imagen.generated_images[0].image,
config=types.GenerateVideosConfig(
# person_generation only accepts "dont_allow" for image-to-video
aspect_ratio="16:9", # "16:9" or "9:16"
number_of_videos=2
),
)
# Wait for videos to generate
while not operation.done:
time.sleep(20)
operation = client.operations.get(operation)
for n, video in enumerate(operation.response.generated_videos):
fname = f'with_image_input{n}.mp4'
print(fname)
client.files.download(file=video.video)
video.video.save(fname)
Parameter model Veo
(Konvensi penamaan bervariasi menurut bahasa pemrograman.)
prompt
: Perintah teks untuk video. Jika ada, parameterimage
bersifat opsional.image
: Gambar yang akan digunakan sebagai frame pertama untuk video. Jika ada, parameterprompt
bersifat opsional.negativePrompt
: String teks yang mendeskripsikan apa pun yang ingin Anda cegah agar tidak dihasilkan modelaspectRatio
: Mengubah rasio aspek video yang dihasilkan. Nilai yang didukung adalah"16:9"
dan"9:16"
. Nilai default-nya adalah"16:9"
.personGeneration
: Mengizinkan model membuat video orang. Nilai berikut didukung:- Pembuatan teks ke video:
"dont_allow"
: Jangan izinkan penyertaan orang atau wajah."allow_adult"
: Membuat video yang menyertakan orang dewasa, tetapi tidak menyertakan anak-anak.
- Pembuatan gambar menjadi video:
"dont_allow"
: Nilai default dan satu-satunya untuk pembuatan gambar menjadi video.
- Pembuatan teks ke video:
numberOfVideos
: Video output yang diminta,1
atau2
.durationSeconds
: Durasi setiap video output dalam detik, antara5
dan8
.enhance_prompt
: Mengaktifkan atau menonaktifkan penulis ulang perintah. Diaktifkan secara default.
Untuk dicoba
Untuk mendapatkan hasil maksimal dari Veo, sertakan terminologi khusus video ke dalam perintah Anda. Veo memahami berbagai istilah yang terkait dengan:
- Komposisi pengambilan gambar: Tentukan framing dan jumlah subjek dalam pengambilan gambar (misalnya, "single shot," "two shot," "over-the-shoulder shot").
- Pemosisi dan gerakan kamera: Mengontrol lokasi dan gerakan kamera menggunakan istilah seperti "sejajar mata", "sudut tinggi", "sudut rendah", "dolly shot", "zoom shot", "pan shot", dan "tracking shot".
- Efek fokus dan lensa: Gunakan istilah seperti "fokus dangkal", "fokus dalam", "fokus lembut", "lensa makro", dan "lensa sudut lebar" untuk mendapatkan efek visual tertentu.
- Gaya dan subjek secara keseluruhan: Pandu arah kreatif Veo dengan menentukan gaya seperti "sci-fi", "komedi romantis", "film laga", atau "animasi". Anda juga dapat mendeskripsikan subjek dan latar belakang yang Anda inginkan, seperti "pemandangan kota", "alam", "kendaraan", atau "hewan".
Panduan perintah Veo
Bagian panduan Veo ini berisi contoh video yang dapat Anda buat menggunakan Veo, dan menunjukkan cara mengubah perintah untuk menghasilkan hasil yang berbeda.
Filter keamanan
Veo menerapkan filter keamanan di seluruh Gemini untuk membantu memastikan bahwa video yang dibuat dan foto yang diupload tidak berisi konten yang menyinggung. Perintah yang melanggar persyaratan dan pedoman kami akan diblokir.
Dasar-dasar penulisan perintah
Perintah yang baik bersifat deskriptif dan jelas. Agar video yang dihasilkan sebisa mungkin sesuai dengan yang Anda inginkan, mulailah dengan mengidentifikasi ide inti, lalu pertajam ide Anda dengan menambahkan kata kunci dan pengubah.
Elemen berikut harus disertakan dalam perintah Anda:
- Subjek: Objek, orang, hewan, atau pemandangan yang Anda inginkan dalam video.
- Konteks: Latar belakang atau konteks tempat subjek ditempatkan.
- Tindakan: Apa yang dilakukan subjek (misalnya, berjalan, berlari, atau menolehkan kepala).
- Gaya: Gaya dapat bersifat umum atau sangat spesifik. Pertimbangkan untuk menggunakan kata kunci gaya film tertentu, seperti film horor, film noir, atau gaya animasi seperti gaya kartun.
- Gerakan kamera: [Opsional] Tindakan yang dilakukan kamera, seperti tampilan udara, sejajar mata, tampilan dari atas ke bawah, atau tampilan sudut rendah.
- Komposisi: [Opsional] Cara pengambilan gambar, seperti shot lebar, close-up, atau extreme close-up.
- Ambiance: [Opsional] Cara warna dan cahaya berkontribusi pada tampilan, seperti nuansa biru, malam, atau nuansa hangat.
Tips lainnya untuk menulis perintah
Tips berikut membantu Anda menulis perintah yang menghasilkan video:
- Gunakan bahasa deskriptif: Gunakan kata sifat dan kata keterangan untuk memberikan gambaran yang jelas kepada Veo.
- Berikan konteks: Jika perlu, sertakan informasi latar belakang untuk membantu model memahami apa yang Anda inginkan.
- Mereferensikan gaya artistik tertentu: Jika Anda memiliki estetika tertentu, referensikan gaya artistik atau gerakan seni tertentu.
- Memanfaatkan alat prompt engineering: Pertimbangkan untuk mempelajari alat atau referensi prompt engineering untuk membantu Anda meningkatkan kualitas perintah dan mencapai hasil yang optimal. Untuk informasi selengkapnya, buka Pengantar desain perintah.
- Meningkatkan detail wajah dalam gambar pribadi dan grup Anda: Tentukan detail wajah sebagai fokus foto seperti menggunakan kata potret dalam perintah.
Contoh perintah dan output
Bagian ini menyajikan beberapa perintah, yang menyoroti bagaimana detail deskriptif dapat meningkatkan hasil setiap video.
Bunga Es
Video ini menunjukkan cara menggunakan elemen dasar-dasar penulisan perintah dalam perintah Anda.
Perintah | Output yang dihasilkan |
---|---|
Close up shot (komposisi) dari es yang mencair (subjek) di dinding batu beku (konteks) dengan tone biru dingin (ambiens), diperbesar (gerakan kamera) mempertahankan detail close up tetesan air (tindakan). |
![]() |
Pria sedang menelepon
Video ini menunjukkan cara merevisi perintah dengan detail yang lebih spesifik agar Veo dapat meningkatkan kualitas output sesuai keinginan Anda.
Perintah | Output yang dihasilkan | Analisis |
---|---|---|
Kamera bergerak maju untuk menampilkan close up seorang pria yang putus asa mengenakan mantel hujan hijau. Ia sedang melakukan panggilan di telepon dinding bergaya putar dengan lampu neon hijau. Tampilannya seperti adegan film. |
![]() |
Ini adalah video pertama yang dibuat berdasarkan perintah. |
Tampilan sinematik jarak dekat mengikuti seorang pria yang putus asa mengenakan mantel hujan hijau yang sudah usang saat ia memutar telepon putar yang dipasang di dinding bata yang kasar, yang diterangi cahaya aneh dari tanda neon hijau. Kamera bergerak mendekat, memperlihatkan ketegangan di rahang dan keputusasaan yang terukir di wajahnya saat dia berjuang untuk melakukan panggilan. Kedalaman bidang yang dangkal berfokus pada kerutan alisnya dan telepon putar hitam, memburamkan latar belakang menjadi lautan warna neon dan bayangan yang tidak jelas, menciptakan rasa urgensi dan isolasi. |
![]() |
Perintah yang lebih mendetail akan menghasilkan video yang lebih fokus dengan lingkungan yang lebih kaya. |
Video dengan gerakan halus yang di-dolly ke arah pria putus asa mengenakan mantel hujan hijau, menggunakan telepon putar vintage di dinding yang diterangi cahaya lampu neon hijau yang menyeramkan. Kamera dimulai dari jarak sedang, perlahan-lahan bergerak lebih dekat ke wajah pria, mengungkapkan ekspresi paniknya dan keringat di dahinya saat dia menelepon dengan tergesa-gesa. Fokusnya adalah pada tangan pria, jarinya memutar tombol saat dia berusaha keras untuk terhubung. Lampu neon hijau memunculkan bayangan panjang di dinding, yang menambah suasana tegang. Adegan dibingkai untuk menekankan isolasi dan keputusasaan pria tersebut, yang menyoroti kontras yang mencolok antara cahaya neon yang cerah dan tekad pria yang suram. |
![]() |
Menambahkan lebih banyak detail akan memberikan ekspresi realistis pada subjek dan menciptakan scene yang intens dan cerah. |
Macan tutul salju
Contoh ini menunjukkan output yang mungkin dihasilkan Veo untuk perintah sederhana.
Perintah | Output yang dihasilkan |
---|---|
Makhluk lucu dengan bulu seperti macan tutul salju sedang berjalan di hutan musim dingin, render gaya kartun 3D. |
![]() |
Macan tutul salju yang berlari
Perintah ini memiliki lebih banyak detail dan menunjukkan output yang dihasilkan yang mungkin lebih mendekati apa yang Anda inginkan dalam video.
Perintah | Output yang dihasilkan |
---|---|
Buat adegan animasi 3D singkat dalam gaya kartun yang menyenangkan. Makhluk lucu dengan bulu seperti macan tutul salju, mata besar yang ekspresif, dan bentuk bulat yang ramah dengan senang hati menari-nari di hutan musim dingin yang aneh. Latar belakangnya harus menampilkan pohon bulat yang tertutup salju, kepingan salju yang turun dengan lembut, dan sinar matahari hangat yang menembus ranting. Gerakan yang melenting dan senyum lebar makhluk tersebut harus menyampaikan kegembiraan murni. Usahakan nuansa yang ceria dan hangat dengan warna cerah dan ceria serta animasi yang menyenangkan. |
![]() |
Contoh berdasarkan elemen penulisan
Contoh ini menunjukkan cara menyaring perintah menurut setiap elemen dasar.
Subjek
Contoh ini menunjukkan cara menentukan deskripsi subjek.
Deskripsi subjek | Perintah | Output yang dihasilkan |
---|---|---|
Deskripsi dapat mencakup subjek, atau beberapa subjek dan tindakan. Di sini, subjek kita adalah "gedung apartemen beton putih". | Rendering arsitektural gedung apartemen beton putih dengan bentuk organik yang mengalir, yang berpadu dengan sempurna dengan tanaman hijau yang rimbun dan elemen futuristik |
![]() |
Konteks
Contoh ini menunjukkan cara menentukan konteks.
Konteks | Perintah | Output yang dihasilkan |
---|---|---|
Latar belakang atau konteks tempat subjek akan ditempatkan sangat penting. Coba tempatkan subjek di berbagai latar belakang seperti di jalan yang ramai, atau di luar angkasa. | Satelit yang mengambang di luar angkasa dengan bulan dan beberapa bintang di latar belakang. |
![]() |
Tindakan
Contoh ini menunjukkan cara menentukan tindakan.
Tindakan | Perintah | Output yang dihasilkan |
---|---|---|
Apa yang dilakukan subjek seperti berjalan, berlari, atau menolehkan kepala. | Bidikan lebar seorang wanita yang berjalan di sepanjang pantai, terlihat puas dan santai ke arah cakrawala saat matahari terbenam. |
![]() |
Gaya
Contoh ini menunjukkan cara menentukan gaya.
Gaya | Perintah | Output yang dihasilkan |
---|---|---|
Anda dapat menambahkan kata kunci untuk meningkatkan kualitas pembuatan dan mengarahkannya lebih dekat ke gaya yang diinginkan, seperti kedalaman bidang yang dangkal, still film, minimalis, surealis, vintage, futuristik, atau eksposur ganda. | Gaya film noir, pria dan wanita berjalan di jalan, misteri, sinematik, hitam putih. |
![]() |
Gerakan kamera
Contoh ini menunjukkan cara menentukan gerakan kamera.
Gerakan kamera | Perintah | Output yang dihasilkan |
---|---|---|
Opsi untuk gerakan kamera mencakup rekaman POV, tampilan udara, tampilan drone pelacakan, atau rekaman pelacakan. | Rekaman POV dari mobil vintage yang melaju di tengah hujan, Kanada pada malam hari, sinematik. |
![]() |
Komposisi
Contoh ini menunjukkan cara menentukan komposisi.
Komposisi | Perintah | Output yang dihasilkan |
---|---|---|
Cara pengambilan gambar (wide shot, close-up, low angle). | Close-up ekstrem dari mata dengan pantulan kota di dalamnya. |
![]() |
Buat video dengan sudut lebar yang menampilkan peselancar berjalan di pantai dengan papan selancar, matahari terbenam yang indah, dan nuansa sinematik. |
![]() |
Suasana
Contoh ini menunjukkan cara menentukan suasana.
Suasana | Perintah | Output yang dihasilkan |
---|---|---|
Palet warna memainkan peran penting dalam fotografi, memengaruhi suasana hati, dan menyampaikan emosi yang diinginkan. Coba gunakan kata-kata seperti "nada hangat oranye yang lembut", "cahaya alami", "matahari terbit", atau "matahari terbenam". Misalnya, palet emas yang hangat dapat memberikan nuansa romantis dan atmosferik ke dalam foto. | Close-up seorang gadis yang memegang anak anjing golden retriever yang menggemaskan di taman, sinar matahari. |
![]() |
Rekaman close-up sinematik seorang wanita sedih yang naik bus di tengah hujan, dengan nuansa biru dingin dan suasana sedih. |
![]() |
Menggunakan gambar referensi untuk membuat video
Anda dapat menghidupkan gambar menggunakan kemampuan gambar ke video Veo. Anda dapat menggunakan aset yang ada, atau mencoba Imagen untuk membuat sesuatu yang baru.
Perintah | Output yang dihasilkan |
---|---|
Kelinci dengan cokelat batangan. |
![]() |
Kelinci lari. |
![]() |
Perintah negatif
Perintah negatif dapat menjadi alat yang efektif untuk membantu menentukan elemen yang tidak Anda inginkan dalam video. Deskripsikan hal yang tidak ingin Anda buat oleh model setelah frasa "Perintah negatif". Ikuti tips berikut:
❌ Jangan gunakan bahasa atau kata-kata yang instruktif seperti tidak atau jangan. Misalnya, "Tidak ada dinding" atau "jangan tampilkan dinding".
✅ Deskripsikan hal yang tidak ingin Anda lihat. Misalnya, "dinding, bingkai", yang berarti Anda tidak ingin dinding atau bingkai dalam video.
Perintah | Output yang dihasilkan |
---|---|
Buat animasi pendek yang ditata gayanya dari pohon ek besar dan soliter dengan daun yang tertiup kencang oleh angin yang kencang. Pohon harus memiliki bentuk yang sedikit berlebihan dan aneh, dengan cabang yang dinamis dan mengalir. Daun harus menampilkan berbagai warna musim gugur, berputar dan menari di angin. Animasi harus menggunakan palet warna yang hangat dan menarik. |
![]() |
Buat animasi pendek yang ditata gayanya dari pohon ek besar dan soliter
dengan daun yang tertiup kencang oleh angin yang kencang. Pohon harus memiliki bentuk yang sedikit
berlebihan dan aneh, dengan cabang yang dinamis dan mengalir. Daun harus
menampilkan berbagai warna musim gugur, berputar dan menari di angin. Animasi
harus menggunakan palet warna yang hangat dan menarik.
Dengan perintah negatif - latar belakang perkotaan, struktur buatan manusia, suasana gelap, badai, atau mengancam. |
![]() |
Rasio aspek
Pembuatan video Gemini Veo mendukung dua rasio aspek berikut:
Rasio aspek | Deskripsi |
---|---|
Layar lebar atau 16:9 | Rasio aspek yang paling umum untuk televisi, monitor, dan layar ponsel (lanskap). Gunakan ini jika Anda ingin mengambil lebih banyak latar belakang, seperti di lanskap yang indah. |
Potret atau 9:16 | Layar lebar yang diputar. Rasio aspek ini telah dipopulerkan oleh aplikasi video berdurasi singkat, seperti YouTube Shorts. Gunakan ini untuk potret atau objek tinggi dengan orientasi vertikal yang kuat, seperti
bangunan, pohon, air terjun, atau bangunan. |
Layar Lebar
Perintah ini adalah contoh rasio aspek layar lebar 16:9.
Perintah | Output yang dihasilkan |
---|---|
Buat video dengan tampilan drone pelacak seorang pria yang mengendarai mobil konversi merah di Palm Springs, tahun 1970-an, sinar matahari hangat, bayangan panjang. |
![]() |
Potret
Perintah ini adalah contoh rasio aspek potret 9:16.
Perintah | Output yang dihasilkan |
---|---|
Buat video yang menyoroti gerakan halus air terjun Hawaii yang megah di dalam hutan hujan yang rimbun. Fokus pada aliran air yang realistis, dedaunan yang mendetail, dan pencahayaan alami untuk menyampaikan ketenangan. Rekam air yang deras, atmosfer berkabut, dan sinar matahari yang menerobos kanopi lebat. Gunakan gerakan kamera yang halus dan sinematik untuk menampilkan air terjun dan sekitarnya. Usahakan nuansa yang tenang dan realistis, yang membawa penonton ke keindahan yang tenang dari hutan hujan Hawaii. |
![]() |
Langkah berikutnya
- Dapatkan lebih banyak pengalaman dalam membuat video AI dengan Veo Colab.