使用 Veo 產生影片

Gemini API 可讓您存取 Google 最先進的影片生成模型 Veo 2。Veo 旨在協助您建構下一代 AI 應用程式,將使用者提示和圖片轉換為高品質的影片素材資源。

本指南可協助您開始使用 Gemini API 的 Veo。

關於 Veo

Veo 是 Google 至今最強大的影片生成模型。這項工具可產生多種電影和視覺風格的影片,並捕捉提示細微差異,以便在各個影格中一致呈現精細細節。

如要進一步瞭解並查看輸出結果範例,請參閱 Google DeepMind Veo 總覽

規格

模式
  • 文字轉影片生成
  • 圖像轉影片生成
要求延遲
  • 最短:11 秒
  • 上限:6 分鐘 (在尖峰時段)
可變長度產生 5 到 8 秒
解決方法 720p
影格速率 24fps
顯示比例
  • 16:9 - 橫向
  • 9:16 - 直向
輸入語言 (文字轉換成影片) 英文

Veo 製作的影片會使用 SynthID 浮水印,這是我們用來識別 AI 生成內容並加上浮水印的工具,並會經過安全篩選器和記憶檢查程序,有助於降低隱私權、版權和偏見風險。

事前準備

呼叫 Gemini API 前,請確認您已安裝所選 SDK,並設定 Gemini API 金鑰,以便使用。

如要搭配 Google Gen AI SDK 使用 Veo,請務必安裝下列其中一個版本:

產生影片

本節提供程式碼範例,說明如何使用文字提示使用圖片產生影片。

使用文字生成

您可以使用下列程式碼,透過 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

小貓在陽光下睡覺。

這個程式碼大約需要 2 到 3 分鐘才能執行完畢,但如果資源受限,可能需要更長的時間。執行完畢後,您應該會看到類似下方的影片:

如果您看到錯誤訊息,而非影片,表示資源受限,無法完成您的要求。在這種情況下,請再次執行程式碼。

系統會將產生的影片儲存在伺服器上 2 天,之後就會移除。如果您想儲存產生的影片的本機副本,必須在產生後的 2 天內執行 result()save()

從圖片產生

你也可以使用圖片產生影片。以下程式碼會使用 Imagen 產生圖片,然後將產生的圖片做為產生影片的起始影格。

首先,請使用 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

接著,使用產生的圖片做為第一個影格,產生影片:

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)

Veo 模型參數

(命名慣例依程式語言而異)。

  • prompt:影片的文字提示。如有提供,image 參數為選用參數。
  • image:要用來做為影片第一個影格的圖片。如有提供,prompt 參數為選用參數。
  • negativePrompt:文字字串,描述您希望模型不產生的內容
  • aspectRatio:變更產生影片的顯示比例。支援的值為 "16:9""9:16"。預設值為 "16:9"
  • personGeneration:允許模型產生人物影片。支援的值如下:
    • 文字轉影片產生:
      • "dont_allow":不允許包含人物或臉孔。
      • "allow_adult":生成包含成人但不含兒童的影片。
    • 圖片轉影片:
      • "dont_allow":圖片轉換為影片的預設值,也是唯一值。
  • numberOfVideos:要求輸出影片,可為 12
  • durationSeconds:每部輸出影片的長度,以秒為單位,介於 58 之間。
  • enhance_prompt:啟用或停用提示重寫器。預設為啟用。

試試以下功能

如要充分運用 Veo,請在提示中加入影片專屬術語。Veo 可辨識多種與下列項目相關的字詞:

  • 拍攝構圖:指定拍攝畫面中的構圖和主體數量 (例如 「單鏡頭」、「雙鏡頭」、「肩上鏡頭」)。
  • 攝影機位置和移動:使用「眼睛高度」、「高角度」、「蟲眼視角」、「推軌拍攝」、「縮放拍攝」、「平移拍攝」和「追蹤拍攝」等詞彙,控制攝影機的位置和移動。
  • 焦距和鏡頭效果:使用「淺焦」、「深焦」、「軟焦」、「微距鏡頭」和「廣角鏡頭」等詞彙,以獲得特定視覺效果。
  • 整體風格和主題:指定「科幻片」、「愛情喜劇片」、「動作片」或「動畫片」等風格,引導 Veo 的創意方向。您也可以描述想要的拍攝主題和背景,例如「城市景觀」、「自然」、「車輛」或「動物」。

Veo 提示指南

本節的 Veo 指南包含可使用 Veo 製作的影片範例,並說明如何修改提示以產生不同的結果。

安全性篩選器

Veo 會在 Gemini 中套用安全篩選器,確保產生的影片和上傳的相片不含任何令人反感的內容。違反條款和規範的提示會遭到封鎖。

提示撰寫基本知識

好的提示應具描述性且清楚明瞭。如要讓系統產生的影片盡可能符合您的需求,請先找出核心概念,然後加入關鍵字和修飾符,進一步調整構想。

提示應包含下列元素:

  • 主題:您希望在影片中出現的物件、人物、動物或風景。
  • 背景資訊:主體所在的背景或情境。
  • 動作:主體正在執行的動作 (例如走路跑步轉頭)。
  • 樣式:可以是一般或非常具體的樣式。建議使用特定電影類型的關鍵字,例如恐怖片黑色電影,或是卡通等動畫類型。
  • 攝影機動作:[選用] 攝影機的動作,例如空拍平視自上而下拍攝低角度拍攝
  • 構圖:[選填] 拍攝畫面的構圖方式,例如廣角鏡頭特寫鏡頭特寫鏡頭
  • Ambiance:[選用] 色彩和光線如何影響場景,例如藍色調夜晚暖色調

更多撰寫提示的訣竅

以下提示可協助你撰寫提示,以便產生影片:

  • 使用描述性語言:使用形容詞和副詞,向 Veo 提供明確的資訊。
  • 提供背景資訊:視需要提供背景資訊,協助模型瞭解您想要的結果。
  • 參考特定藝術風格:如果您有特定美學概念,請參考特定藝術風格或藝術流派。
  • 善用提示工程工具:建議您探索提示工程工具或資源,協助您修正提示並取得最佳結果。如需更多資訊,請參閱「提示設計簡介」。
  • 強化個人和團體相片中的臉部細節:指定臉部細節做為相片的焦點,例如在提示中使用「肖像」一詞。

提示和輸出內容範例

本節提供幾個提示,說明描述性細節如何提升每部影片的成效。

冰柱

這部影片示範如何在提示中使用提示撰寫的基本元素

提示 生成的輸出內容
在冰凍的岩壁上,以冷色調 (氛圍) 拍攝融化的冰柱 (主題) 特寫鏡頭 (構圖),並以縮放 (相機動作) 維持水滴的特寫細節 (動作)。 藍色背景的滴水冰柱。

男子在講電話

這些影片將示範如何修改提示,加入越來越具體的詳細資料,讓 Veo 根據您的喜好調整輸出內容。

提示 生成的輸出內容 分析
鏡頭以平移方式移動,呈現一名穿著綠色風衣的絕望男子特寫鏡頭。他正在使用旋轉式壁掛式電話撥打電話,電話上有綠色霓虹燈。看起來就像電影場景。 男子在講電話。 這是根據提示產生的第一部影片。
特寫鏡頭拍攝一位穿著褪色綠色風衣的男子,他正撥打裝在粗糙磚牆上的旋轉式電話,周圍有綠色霓虹燈的詭異光芒照射進來。攝影機鏡頭拉近,顯示他下巴的緊繃表情,以及他努力打電話時臉上顯露的絕望。淺景深的效果將焦點放在他皺起的眉頭和黑色旋轉式電話上,背景則模糊處理成霓虹色調和模糊陰影,營造出緊迫和孤立的氛圍。 男子講電話 詳細提示可讓影片更聚焦,並提供更豐富的環境。
影片以流暢的動作,拉近焦距,拍攝一名穿著綠色風衣的絕望男子,他正使用古老的旋轉式電話,背景是充滿詭異綠色霓虹燈光的牆壁。鏡頭從中距離開始,慢慢靠近男子的臉,揭露他急忙撥電話時的焦慮表情和額頭上的汗水。焦點放在男子的手上,他的手指在撥盤上笨拙地撥動,試圖連線。綠色霓虹燈投射在牆上的長長陰影,營造出緊張的氣氛。這場景的構圖強調了男子的孤立和絕望,突顯出霓虹燈的鮮豔光芒與男子嚴肅的決心之間的強烈對比。 男子在講電話。 加入更多細節,可讓主體呈現逼真的表情,並營造出強烈而生動的場景。

雪豹

以下範例說明 Veo 可能為簡單提示產生的輸出內容。

提示 生成的輸出內容
毛色如雪豹的可愛生物在冬季森林中漫步,3D 卡通風格渲染。 雪豹昏昏欲睡。

奔跑中的雪豹

這則提示會提供更多詳細資訊,並示範產生的輸出內容,這些內容可能更符合您在影片中想要的內容。

提示 生成的輸出內容
以歡樂的卡通風格製作 3D 動畫短片場景。這隻可愛的生物有著雪豹般的毛皮、大而有表情的眼睛,以及友善圓潤的外型,正在奇幻的冬季森林中快樂地奔跑。場景應包含圓形的積雪樹木、輕柔飄落的雪花,以及穿過樹枝的溫暖陽光。生物的彈跳動作和燦爛笑容,應傳達純粹的喜悅。使用明亮、愉悅的色彩和生動有趣的動畫,營造歡樂、溫馨的氛圍。 雪豹執行速度更快。

依書寫元素分類的範例

這些範例說明如何根據各基本元素調整提示。

主旨

這個範例說明如何指定主題說明。

主旨說明 提示 生成的輸出內容
說明可以包含主體,或多個主體和動作。這裡的主題是「白色混凝土公寓大樓」。 建築渲染圖:白色混凝土公寓大樓,流暢的自然形狀與鬱鬱蔥蔥的綠意和未來主義元素完美融合 預留位置。

背景資訊

這個範例說明如何指定情境。

背景資訊 提示 生成的輸出內容
主體的背景或情境非常重要。試著將拍攝對象置於各種背景中,例如繁忙的街道或外太空。 一顆衛星在外太空漂浮,背景有月亮和一些星星。 在氣氛中漂浮的衛星。

動作

這個範例說明如何指定動作。

動作 提示 生成的輸出內容
拍攝對象正在做什麼,例如走路、跑步或轉頭。 廣角鏡頭拍攝一名女子沿著海灘散步,她看起來很滿足且放鬆,望向日落時分的地平線。 日落景色實在太美了。

樣式

這個範例說明如何指定樣式。

樣式 提示 生成的輸出內容
您可以新增關鍵字來改善生成品質,並讓生成內容更接近預期風格,例如淺景深度、電影劇照、極簡、超現實、復古、未來感或雙重曝光。 黑色電影風格、男女在街上散步、神秘、電影風格、黑白。 黑色電影風格非常漂亮。

攝影機動作

這個範例說明如何指定攝影機動作。

攝影機動作 提示 生成的輸出內容
攝影機動作選項包括第一人稱視角、空拍、追蹤無人機視角或追蹤鏡頭。 在加拿大夜晚,透過復古車輛的駕駛視角拍攝,呈現電影般的畫面。 日落景色實在太美了。

樂曲

本範例說明如何指定組合。

組合 提示 生成的輸出內容
拍攝鏡頭的構圖方式 (廣角鏡頭、特寫鏡頭、低角度鏡頭)。 特寫眼球,眼球中反射出城市景觀。 日落景色實在太美了。
製作影片,以寬廣鏡頭拍攝衝浪客拿著衝浪板在海灘上行走,搭配美麗的日落,營造電影般的效果。 日落景色實在太美了。

類別

這個範例說明如何指定環境光源。

Ambiance 提示 生成的輸出內容
調色盤在攝影中扮演著重要角色,影響情緒並傳達意圖。你可以試試「柔和的橘色暖色調」、「自然光」、「日出」或「日落」等。舉例來說,溫暖的金色調色板可為相片增添浪漫氛圍。 特寫:公園內的陽光下,一位女孩手上抱著可愛的黃金獵犬幼犬。 小女孩手臂上的小狗。
悲傷的女子在雨中搭乘公車,特寫鏡頭拍攝她悲傷的表情,色調偏冷色調,營造悲傷氛圍。 一名女子在公車上感到難過。

使用參考圖片產生影片

你可以使用 Veo 的圖片轉影片功能,讓圖片更生動有趣。您可以使用現有素材資源,或試試 Imagen 產生新素材資源。

提示 生成的輸出內容
兔子拿著巧克力糖。 兔子正在逃跑。
兔子跑走了。 兔子正在逃跑。

負面提示

排除提示是一種強大的工具,可協助您指定影片中不希望出現的元素。說明您希望模型在「負面提示」詞後不產生哪些內容。請遵循下列提示:

  • ❌ 請勿使用「不」或「不要」等指示性用語或字詞。例如「No walls」或「don't show walls」。

  • ✅ 請說明您不想看到的內容。例如「牆、相框」,表示你不希望影片中出現牆或相框。

提示 生成的輸出內容
產生簡短的圖像化動畫,其中有棵孤立的大橡樹,葉子在強風中搖曳。樹木應具有略為誇張、奇特的形狀,並具有動態的流動樹枝。葉子應呈現各種秋季色彩,在風中旋轉舞動。動畫應使用溫暖、吸引人的色彩組合。 使用單字的樹狀圖。
產生簡短的圖像化動畫,其中有棵孤立的大橡樹,葉子在強風中搖曳。樹木應具有略為誇張、奇特的形狀,並具有動態的流動樹枝。葉子應呈現各種秋季色彩,在風中旋轉舞動。動畫應使用溫暖、吸引人的色彩組合。

含有負面提示 - 都市背景、人造建築物、黑暗、暴風或威脅的氣氛。
沒有負面字詞的樹狀結構。

顯示比例

Gemini Veo 影片生成功能支援下列兩種顯示比例:

顯示比例 說明
寬螢幕或 16:9 電視、螢幕和手機螢幕 (橫向) 最常見的顯示比例。如要拍攝更多背景,例如風景照,請使用此模式。
直向或 9:16 旋轉的寬螢幕。這類長寬比已在 YouTube Shorts 等短篇影片應用程式中廣為流行。適用於具有明顯垂直方向的肖像或高物體,例如建築物、樹木、瀑布或建築物。

寬螢幕

這個提示是 16:9 寬螢幕顯示比例的範例。

提示 生成的輸出內容
製作影片,使用無人機追蹤拍攝,拍攝一名男子在 1970 年代的棕櫚泉市駕駛紅色敞篷車,並呈現溫暖的陽光和長長的影子。 瀑布實在太美了。

直向

這則提示是 9:16 直向顯示比例的範例。

提示 生成的輸出內容
製作影片,突顯茂密雨林中壯麗的夏威夷瀑布流暢的動作。著重於真實的水流、細緻的樹葉和自然光線,營造寧靜氛圍。捕捉湍急的河水、朦朧的氣氛,以及穿過茂密樹冠的斑駁陽光。使用流暢的電影鏡頭移動方式,展示瀑布及其周圍環境。盡量營造平靜、寫實的氛圍,讓觀眾沉浸在夏威夷雨林的寧靜美景中。 瀑布實在太美了。

後續步驟

  • 使用 Veo Colab,進一步瞭解如何生成 AI 影片。