Anda dapat menggunakan Gemini Omni Flash atau Veo di Gemini Enterprise Agent Platform untuk memperpanjang video. Video input dibatasi antara 1 dan 30 detik. Video dapat diperpanjang hingga 40 detik untuk Gemini Omni Flash atau 37 detik untuk Veo di Gemini Enterprise Agent Platform. Anda dapat memperpanjang video menggunakan konsol Google Cloud atau Agent Platform API.
Model berikut mendukung perluasan video:
Gemini Omni Flash
Klik untuk meluaskan model yang didukung
Veo
Klik untuk meluaskan model yang didukung
Untuk mengetahui informasi tentang cara menulis perintah teks yang efektif untuk pembuatan video, lihat Panduan perintah video.
Coba Gemini Omni Flash di Colab
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
Enable the Agent Platform API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
Enable the Agent Platform API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Siapkan autentikasi untuk lingkungan Anda.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan konsol Google Cloud untuk mengakses layanan dan API Google Cloud , Anda tidak perlu menyiapkan autentikasi.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Batasan Veo
Saat menggunakan Veo untuk memperpanjang video, video input tunduk pada batasan berikut:
- File input harus dalam format MP4.
- Durasinya harus antara 1 hingga 30 detik.
- Kecepatan frame harus 24 frame per detik.
- Resolusi harus salah satu dari: 720p, 1080p, atau 4k.
- Rasio aspek untuk video input dapat berupa 9:16 atau 16:9.
Saat menggunakan Veo untuk memperpanjang video, video output tunduk pada batasan berikut
- File output-nya adalah MP4.
- Durasi yang diperpanjang adalah 7 detik.
- Kecepatan frame-nya adalah 24 frame per detik.
- Resolusinya dapat berupa 720p, 1080p, atau 4k.
- Rasio aspek untuk video output dapat berupa 9:16 atau 16:9.
Memperpanjang video menggunakan Gemini Omni Flash
Untuk memperpanjang video menggunakan Gemini Omni Flash, lakukan hal berikut:
REST
Pembuatan video dapat memerlukan waktu lebih dari satu menit hingga selesai. Anda dapat memilih dari beberapa mode interaksi, bergantung pada alur kerja Anda:
- Sinkron: stateless: Buat video dalam satu permintaan tanpa mempertahankan status interaksi di server.
- Sinkron: stateful: Tetapkan
storeketrueuntuk mempertahankan status interaksi, yang memungkinkan Anda mengambil hasilnya nanti atau mereferensikan ID interaksi untuk pengeditan video multi-turn. - Sinkron: streaming stateful: Tetapkan
storedanstreamketrueuntuk menerima pemikiran model secara inkremental saat dibuat, diikuti dengan video output. - Asinkron: Tetapkan
backgroundketrueuntuk menjalankan pembuatan video di latar belakang dan mengambil hasilnya nanti menggunakan ID interaksi.
Interaksi yang disimpan dan asinkron dipertahankan hingga 14 hari.
Untuk mengetahui informasi selengkapnya tentang cara menggunakan Gemini Omni Flash API, lihat Interactions API.
Sinkron: stateless
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
MODEL_ID: String yang mewakili ID model yang akan digunakan. Berikut adalah nilai yang diterima:"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: Perintah teks yang digunakan untuk memandu pembuatan video. -
CLOUD_STORAGE_VIDEO_URI: String yang mewakili bucket Cloud Storage yang berisi video input. Contoh:"gs://video-bucket/input/". -
VIDEO_MIME: String yang mewakili jenis MIME video. Berikut adalah nilai yang diterima:video/3gppvideo/mp4video/mpegvideo/quicktimevideo/webmvideo/x-flvvideo/x-ms-wmv
-
CLOUD_STORAGE_OUTPUT_URI: Opsional: String yang mewakili bucket Cloud Storage untuk menyimpan video output. Jika tidak diberikan, byte video akan ditampilkan dalam respons. Contoh:"gs://video-bucket/output/". -
ASPECT_RATIO: Opsional: String yang mewakili rasio aspek yang diharapkan dari video output. Jika tidak diberikan, rasio aspek akan disimpulkan dari perintah. Berikut adalah nilai yang diterima:"16:9""9:16"
-
DURATION: String yang mewakili durasi file video yang dihasilkan. String yang diizinkan adalah bilangan bulat antara3dan10, diikuti dengan "s" untuk detik. Contoh,"10s".
Metode HTTP dan URL:
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Meminta isi JSON:
{
"model": "MODEL_ID",
"input": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "video",
"uri": "CLOUD_STORAGE_VIDEO_URI",
"mime_type": "VIDEO_MIME"
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
lalu jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-1.1-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
]
},
{
"type":"model_output",
"content":[
{
"type":"video",
"uri":"gs://some/output_path/123.mp4",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z"
}
Sinkron: stateful
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
MODEL_ID: String yang mewakili ID model yang akan digunakan. Berikut adalah nilai yang diterima:"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: Perintah teks yang digunakan untuk memandu pembuatan video. -
CLOUD_STORAGE_VIDEO_URI: String yang mewakili bucket Cloud Storage yang berisi video input. Contoh:"gs://video-bucket/input/". -
VIDEO_MIME: String yang mewakili jenis MIME video. Berikut adalah nilai yang diterima:video/3gppvideo/mp4video/mpegvideo/quicktimevideo/webmvideo/x-flvvideo/x-ms-wmv
-
CLOUD_STORAGE_OUTPUT_URI: Opsional: String yang mewakili bucket Cloud Storage untuk menyimpan video output. Jika tidak diberikan, byte video akan ditampilkan dalam respons. Contoh:"gs://video-bucket/output/". -
ASPECT_RATIO: Opsional: String yang mewakili rasio aspek yang diharapkan dari video output. Jika tidak diberikan, rasio aspek akan disimpulkan dari perintah. Berikut adalah nilai yang diterima:"16:9""9:16"
-
DURATION: String yang mewakili durasi file video yang dihasilkan. String yang diizinkan adalah bilangan bulat antara3dan10, diikuti dengan "s" untuk detik. Contoh,"10s".
Metode HTTP dan URL:
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Meminta isi JSON:
{
"model": "MODEL_ID",
"background": false,
"store": true,
"stream": false,
"input": [
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "video",
"uri": "CLOUD_STORAGE_VIDEO_URI",
"mime_type": "VIDEO_MIME"
}
]
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
lalu jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-1.1-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
]
},
{
"type":"model_output",
"content":[
{
"type":"video",
"uri":"gs://some/output_path/123.mp4",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z"
}
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
INTERACTION_ID: ID interaksi dari permintaan asinkron.
Metode HTTP dan URL:
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"
PowerShell
Jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-1.1-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "5 second, 9:16 video. Use the image as the first frame."
},
{
"type": "image",
"uri": "gs://some/path",
"mime_type": "image/png"
}
]
},
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
]
},
{
"type":"model_output",
"content":[
{
"type":"video",
"data":"VIDEO DATA",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z"
}
Sinkron: streaming stateful
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
MODEL_ID: String yang mewakili ID model yang akan digunakan. Berikut adalah nilai yang diterima:"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: Perintah teks yang digunakan untuk memandu pembuatan video. -
CLOUD_STORAGE_VIDEO_URI: String yang mewakili bucket Cloud Storage yang berisi video input. Contoh:"gs://video-bucket/input/". -
VIDEO_MIME: String yang mewakili jenis MIME video. Berikut adalah nilai yang diterima:video/3gppvideo/mp4video/mpegvideo/quicktimevideo/webmvideo/x-flvvideo/x-ms-wmv
-
CLOUD_STORAGE_OUTPUT_URI: Opsional: String yang mewakili bucket Cloud Storage untuk menyimpan video output. Jika tidak diberikan, byte video akan ditampilkan dalam respons. Contoh:"gs://video-bucket/output/". -
ASPECT_RATIO: Opsional: String yang mewakili rasio aspek yang diharapkan dari video output. Jika tidak diberikan, rasio aspek akan disimpulkan dari perintah. Berikut adalah nilai yang diterima:"16:9""9:16"
-
DURATION: String yang mewakili durasi file video yang dihasilkan. String yang diizinkan adalah bilangan bulat antara3dan10, diikuti dengan "s" untuk detik. Contoh,"10s".
Metode HTTP dan URL:
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Meminta isi JSON:
{
"model": "MODEL_ID",
"background": false,
"store": true,
"stream": true,
"input": [
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "video",
"uri": "CLOUD_STORAGE_VIDEO_URI",
"mime_type": "VIDEO_MIME"
}
]
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
lalu jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
event: interaction.created
data: {"interaction":{"id":"INTERACTION_ID","status":"in_progress","object":"interaction","model":"gemini-omni-1.1-flash-preview"},"event_type":"interaction.created"}
event: interaction.status_update
data: {"interaction_id":"INTERACTION_ID","status":"in_progress","event_type":"interaction.status_update"}
event: step.start
data: {"index":0,"step":{"type":"thought"},"event_type":"step.start"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"signature":"...","type":"thought_signature"},"event_type":"step.delta"}
event: step.stop
data: {"index":0,"event_type":"step.stop"}
event: step.start
data: {"index":1,"step":{"type":"model_output"},"event_type":"step.start"}
event: step.delta
data: {"index":1,"delta":{"mime_type":"video/mp4","uri":"gs://some/output_path/123.mp4","type":"video"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.stop
data: {"index":1,"event_type":"step.stop"}
event: interaction.completed
data: {"interaction":{"id":"INTERACTION_ID","status":"completed","usage":{"total_tokens":17812,"total_input_tokens":21,"input_tokens_by_modality":[{"modality":"text","tokens":21}],"total_output_tokens":17376,"output_tokens_by_modality":[{"modality":"video","tokens":17376}],"total_thought_tokens":415},"created":"2026-08-12T21:26:20Z","updated":"2026-08-12T21:26:20Z","event_id":"EVENT_ID","object":"interaction","model":"gemini-omni-1.1-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}
event: done
data: [DONE]
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
INTERACTION_ID: ID interaksi dari permintaan.
Metode HTTP dan URL:
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true"
PowerShell
Jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true" | Select-Object -Expand Content
event: interaction.created
data: {"interaction":{"id":"INTERACTION_ID","status":"in_progress","object":"interaction","model":"gemini-omni-1.1-flash-preview"},"event_type":"interaction.created"}
event: interaction.status_update
data: {"interaction_id":"INTERACTION_ID","status":"in_progress","event_type":"interaction.status_update"}
event: step.start
data: {"index":0,"step":{"type":"thought"},"event_type":"step.start"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"signature":"...","type":"thought_signature"},"event_type":"step.delta"}
event: step.stop
data: {"index":0,"event_type":"step.stop"}
event: step.start
data: {"index":1,"step":{"type":"model_output"},"event_type":"step.start"}
event: step.delta
data: {"index":1,"delta":{"mime_type":"video/mp4","uri":"gs://some/output_path/123.mp4","type":"video"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.stop
data: {"index":1,"event_type":"step.stop"}
event: interaction.completed
data: {"interaction":{"id":"INTERACTION_ID","status":"completed","usage":{"total_tokens":17664,"total_input_tokens":21,"input_tokens_by_modality":[{"modality":"text","tokens":21}],"total_output_tokens":17376,"output_tokens_by_modality":[{"modality":"video","tokens":17376}],"total_thought_tokens":267},"created":"2026-08-12T21:33:08Z","updated":"2026-08-12T21:33:08Z","event_id":"EVENT_ID","object":"interaction","model":"gemini-omni-1.1-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}
event: done
data: [DONE]
Asinkron
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
MODEL_ID: String yang mewakili ID model yang akan digunakan. Berikut adalah nilai yang diterima:"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: Perintah teks yang digunakan untuk memandu pembuatan video. -
CLOUD_STORAGE_VIDEO_URI: String yang mewakili bucket Cloud Storage yang berisi video input. Contoh:"gs://video-bucket/input/". -
VIDEO_MIME: String yang mewakili jenis MIME video. Berikut adalah nilai yang diterima:video/3gppvideo/mp4video/mpegvideo/quicktimevideo/webmvideo/x-flvvideo/x-ms-wmv
-
CLOUD_STORAGE_OUTPUT_URI: Opsional: String yang mewakili bucket Cloud Storage untuk menyimpan video output. Jika tidak diberikan, byte video akan ditampilkan dalam respons. Contoh:"gs://video-bucket/output/". -
ASPECT_RATIO: Opsional: String yang mewakili rasio aspek yang diharapkan dari video output. Jika tidak diberikan, rasio aspek akan disimpulkan dari perintah. Berikut adalah nilai yang diterima:"16:9""9:16"
-
DURATION: String yang mewakili durasi file video yang dihasilkan. String yang diizinkan adalah bilangan bulat antara3dan10, diikuti dengan "s" untuk detik. Contoh,"10s".
Metode HTTP dan URL:
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Meminta isi JSON:
{
"model": "MODEL_ID",
"background": true,
"input": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "video",
"uri": "CLOUD_STORAGE_VIDEO_URI",
"mime_type": "VIDEO_MIME"
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
lalu jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"status":"in_progress",
"object":"interaction"
}
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
INTERACTION_ID: ID interaksi dari permintaan asinkron.
Metode HTTP dan URL:
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"
PowerShell
Jalankan perintah berikut:
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-1.1-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "5 second, 9:16 video. Use the image as the first frame."
},
{
"type": "image",
"uri": "gs://some/path",
"mime_type": "image/png"
}
]
},
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
]
},
{
"type":"model_output",
"content":[
{
"type":"video",
"data":"VIDEO DATA",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z"
}
Memperpanjang video menggunakan Veo
Contoh berikut menunjukkan cara memperpanjang video Veo:
Konsol
Di konsol Google Cloud , buka halaman Agent Platform > Media Studio.
Klik Video.
Di menu Task, pilih Video extension.
Dari menu Model, pilih model dari opsi yang ditampilkan.
Di bagian Input video, klik Add.
Di kotak Prompt, masukkan perintah teks yang menjelaskan video yang akan dibuat.
Opsional: Sesuaikan Parameter berikut:
Number of results: sesuaikan penggeser atau masukkan nilai antara 1 dan 4.
Durasi video: pilih durasi video dari menu.
- Output directory: klik Browse untuk membuat atau memilih bucket Cloud Storage guna menyimpan file yang dihasilkan.
- Klik Run.
Python
Instal
pip install --upgrade google-genai
Untuk mempelajari lebih lanjut, lihat dokumentasi referensi SDK.
Tetapkan variabel lingkungan untuk menggunakan Google Gen AI SDK dengan Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
REST
Untuk mengetahui informasi selengkapnya tentang Veo API, lihat referensi berikut:
- Metode:
endpoints.predict VideoGenerationModelInstanceVideoGenerationModelParamsVideoGenerationModelResult
Gunakan perintah berikut untuk mengirim permintaan pembuatan video. Permintaan ini memulai operasi yang berjalan lama dan menyimpan output ke bucket Cloud Storage yang Anda tentukan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PROJECT_ID: String yang mewakili project ID Google Cloud Anda. -
MODEL_ID: String yang mewakili ID model yang akan digunakan. Gunakan salah satu opsi berikut saat memperpanjang video:- Veo 3.1:
veo-3.1-generate-001 - Veo 3.1:
veo-3.1-fast-generate-001
- Veo 3.1:
-
TEXT_PROMPT: Perintah teks yang digunakan untuk memandu pembuatan video. -
PATH_TO_VIDEO: String yang merepresentasikan jalur Cloud Storage ke video Veo yang Anda perpanjang. Contoh:"gs://video-bucket/input/veo-video.mp4". -
OUTPUT_STORAGE_URI: Opsional: String yang mewakili bucket Cloud Storage untuk menyimpan video output. Jika tidak diberikan, byte video akan ditampilkan dalam respons. Contoh:"gs://video-bucket/output/". -
RESPONSE_COUNT: Jumlah file video yang akan dibuat. Rentang nilai yang diterima adalah1-4. -
Parameter opsional tambahan
Gunakan variabel opsional berikut bergantung pada kasus penggunaan Anda. Tambahkan beberapa atau semua parameter berikut dalam objek
"parameters": {}."parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", // "resolution": RESOLUTION, // Veo 3 models only "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }-
ASPECT_RATIO: Opsional: Nilai string yang menjelaskan rasio aspek video yang dibuat. Anda dapat menggunakan nilai berikut:"16:9"untuk lanskap"9:16"untuk potret
Nilai defaultnya adalah
"16:9" -
NEGATIVE_PROMPT: Opsional: Nilai string yang menjelaskan konten yang ingin Anda cegah agar tidak dibuat oleh model. -
PERSON_SAFETY_SETTING: Opsional: Nilai string yang mengontrol setelan keamanan untuk membuat orang atau wajah. Anda dapat menggunakan nilai berikut:-
"allow_adult": Hanya mengizinkan pembuatan orang dan wajah dewasa. -
"disallow": Tidak menghasilkan orang atau wajah.
Nilai defaultnya adalah
"allow_adult". -
-
RESOLUTION: Opsional: Nilai string yang mengontrol resolusi video yang dihasilkan. Hanya didukung oleh model Veo 3. Anda dapat menggunakan nilai berikut:"720p""1080p""4k"(Khusus model Pratinjau Veo 3.1)
Nilai defaultnya adalah
"720p". -
RESPONSE_COUNT: Opsional. Nilai bilangan bulat yang menjelaskan jumlah video yang akan dibuat. Rentang nilai yang diterima adalah1-4. -
SEED_NUMBER: Opsional. Nilai uint32 yang digunakan model untuk menghasilkan video deterministik. Menentukan nomor seed dengan permintaan Anda tanpa mengubah parameter lain akan memandu model untuk menghasilkan video yang sama. Rentang nilai yang diterima adalah0-4294967295.
-
Metode HTTP dan URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning
Meminta isi JSON:
{ "instances": [ { "prompt": "TEXT_PROMPT", "video": { "gcsUri": "PATH_TO_VIDEO", "mimeType": "video/mp4" } } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": RESPONSE_COUNT } }Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
Permintaan ini menampilkan nama operasi lengkap dengan ID operasi yang unik. Gunakan nama operasi lengkap ini untuk mengumpulkan status permintaan pembuatan video.curl
Simpan isi permintaan dalam file bernama
request.json, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning"PowerShell
Simpan isi permintaan dalam file bernama
request.json, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning" | Select-Object -Expand Content{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }-
Opsional: Periksa status operasi pembuatan video yang berjalan lama.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Google Cloud Anda.
- MODEL_ID: ID model yang akan digunakan.
- OPERATION_ID: ID operasi unik yang ditampilkan dalam permintaan pembuatan video asli.
Metode HTTP dan URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation
Meminta isi JSON:
{ "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID" }Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
Permintaan ini menampilkan informasi tentang operasi, termasuk apakah operasi masih berjalan atau sudah selesai.curl
Simpan isi permintaan dalam file bernama
request.json, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation"PowerShell
Simpan isi permintaan dalam file bernama
request.json, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation" | Select-Object -Expand Content