สร้างวิดีโอด้วย Veo 3 ใน Gemini API

Veo 3 เป็นโมเดลที่ล้ำสมัยของ Google สำหรับการสร้างวิดีโอความละเอียด 720p หรือ 1080p ความยาว 8 วินาทีที่มีความเที่ยงตรงสูงจากพรอมต์ข้อความ ซึ่งมีความสมจริงที่น่าทึ่งและเสียงที่สร้างขึ้นโดยตรง คุณสามารถเข้าถึงโมเดลนี้โดยใช้โปรแกรมผ่าน Gemini API Veo 3 ทำงานได้ดีกับ สไตล์ภาพและภาพยนตร์ที่หลากหลาย ดูข้อมูลเพิ่มเติมเกี่ยวกับตัวแปรของโมเดล Veo ที่มีได้ในส่วนเวอร์ชันของโมเดล

เลือกตัวอย่างเพื่อดูวิธีสร้างวิดีโอที่มีบทสนทนา ความสมจริงแบบภาพยนตร์ หรือภาพเคลื่อนไหวที่สร้างสรรค์

Python

import time
from google import genai
from google.genai import types

client = genai.Client()

prompt = """A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'"""

operation = client.models.generate_videos(
    model="veo-3.0-generate-001",
    prompt=prompt,
)

# Poll the operation status until the video is ready.
while not operation.done:
    print("Waiting for video generation to complete...")
    time.sleep(10)
    operation = client.operations.get(operation)

# Download the generated video.
generated_video = operation.response.generated_videos[0]
client.files.download(file=generated_video.video)
generated_video.video.save("dialogue_example.mp4")
print("Generated video saved to dialogue_example.mp4")

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

const prompt = `A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'`;

let operation = await ai.models.generateVideos({
    model: "veo-3.0-generate-001",
    prompt: prompt,
});

// Poll the operation status until the video is ready.
while (!operation.done) {
    console.log("Waiting for video generation to complete...")
    await new Promise((resolve) => setTimeout(resolve, 10000));
    operation = await ai.operations.getVideosOperation({
        operation: operation,
    });
}

// Download the generated video.
ai.files.download({
    file: operation.response.generatedVideos[0].video,
    downloadPath: "dialogue_example.mp4",
});
console.log(`Generated video saved to dialogue_example.mp4`);

Go

package main

import (
    "context"
    "log"
    "os"
    "time"

    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    prompt := `A close up of two people staring at a cryptic drawing on a wall, torchlight flickering.
    A man murmurs, 'This must be it. That's the secret code.' The woman looks at him and whispering excitedly, 'What did you find?'`

    operation, _ := client.Models.GenerateVideos(
        ctx,
        "veo-3.0-generate-001",
        prompt,
        nil,
        nil,
    )

    // Poll the operation status until the video is ready.
    for !operation.Done {
    log.Println("Waiting for video generation to complete...")
        time.Sleep(10 * time.Second)
        operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
    }

    // Download the generated video.
    video := operation.Response.GeneratedVideos[0]
    client.Files.Download(ctx, video.Video, nil)
    fname := "dialogue_example.mp4"
    _ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
    log.Printf("Generated video saved to %s\n", fname)
}

REST

# Note: This script uses jq to parse the JSON response.
# GEMINI API Base URL
BASE_URL="https://generativelanguage.googleapis.com/v1beta"

# Send request to generate video and capture the operation name into a variable.
operation_name=$(curl -s "${BASE_URL}/models/veo-3.0-generate-001:predictLongRunning" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -X "POST" \
  -d '{
    "instances": [{
        "prompt": "A close up of two people staring at a cryptic drawing on a wall, torchlight flickering. A man murmurs, \"This must be it. That'\''s the secret code.\" The woman looks at him and whispering excitedly, \"What did you find?\""
      }
    ]
  }' | jq -r .name)

# Poll the operation status until the video is ready
while true; do
  # Get the full JSON status and store it in a variable.
  status_response=$(curl -s -H "x-goog-api-key: $GEMINI_API_KEY" "${BASE_URL}/${operation_name}")

  # Check the "done" field from the JSON stored in the variable.
  is_done=$(echo "${status_response}" | jq .done)

  if [ "${is_done}" = "true" ]; then
    # Extract the download URI from the final response.
    video_uri=$(echo "${status_response}" | jq -r '.response.generateVideoResponse.generatedSamples[0].video.uri')
    echo "Downloading video from: ${video_uri}"

    # Download the video using the URI and API key and follow redirects.
    curl -L -o dialogue_example.mp4 -H "x-goog-api-key: $GEMINI_API_KEY" "${video_uri}"
    break
  fi
  # Wait for 5 seconds before checking again.
  sleep 10
done

การสร้างวิดีโอจากรูปภาพ

โค้ดต่อไปนี้แสดงการสร้างรูปภาพโดยใช้ Imagen จากนั้นใช้รูปภาพดังกล่าวเป็น เฟรมเริ่มต้นสำหรับการสร้างวิดีโอด้วย Veo 3

Python

import time
from google import genai

client = genai.Client()

prompt = "Panning wide shot of a calico kitten sleeping in the sunshine"

# Step 1: Generate an image with Imagen.
imagen = client.models.generate_images(
    model="imagen-4.0-generate-001",
    prompt=prompt,
)

# Step 2: Generate video with Veo 3 using the image.
operation = client.models.generate_videos(
    model="veo-3.0-generate-001",
    prompt=prompt,
    image=imagen.generated_images[0].image,
)

# Poll the operation status until the video is ready.
while not operation.done:
    print("Waiting for video generation to complete...")
    time.sleep(10)
    operation = client.operations.get(operation)

# Download the video.
video = operation.response.generated_videos[0]
client.files.download(file=video.video)
video.video.save("veo3_with_image_input.mp4")
print("Generated video saved to veo3_with_image_input.mp4")

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

const prompt = "Panning wide shot of a calico kitten sleeping in the sunshine";

// Step 1: Generate an image with Imagen.
const imagenResponse = await ai.models.generateImages({
  model: "imagen-4.0-generate-001",
  prompt: prompt,
});

// Step 2: Generate video with Veo 3 using the image.
let operation = await ai.models.generateVideos({
  model: "veo-3.0-generate-001",
  prompt: prompt,
  image: {
    imageBytes: imagenResponse.generatedImages[0].image.imageBytes,
    mimeType: "image/png",
  },
});

// Poll the operation status until the video is ready.
while (!operation.done) {
  console.log("Waiting for video generation to complete...")
  await new Promise((resolve) => setTimeout(resolve, 10000));
  operation = await ai.operations.getVideosOperation({
    operation: operation,
  });
}

// Download the video.
ai.files.download({
    file: operation.response.generatedVideos[0].video,
    downloadPath: "veo3_with_image_input.mp4",
});
console.log(`Generated video saved to veo3_with_image_input.mp4`);

Go

package main

import (
    "context"
    "log"
    "os"
    "time"

    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    prompt := "Panning wide shot of a calico kitten sleeping in the sunshine"

    // Step 1: Generate an image with Imagen.
    imagenResponse, err := client.Models.GenerateImages(
        ctx,
        "imagen-4.0-generate-001",
        prompt,
        nil, // GenerateImagesConfig
    )
    if err != nil {
        log.Fatal(err)
    }

    // Step 2: Generate video with Veo 3 using the image.
    operation, err := client.Models.GenerateVideos(
        ctx,
        "veo-3.0-generate-001",
        prompt,
        imagenResponse.GeneratedImages[0].Image,
        nil, // GenerateVideosConfig
    )
    if err != nil {
        log.Fatal(err)
    }

    // Poll the operation status until the video is ready.
    for !operation.Done {
        log.Println("Waiting for video generation to complete...")
        time.Sleep(10 * time.Second)
        operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
    }

    // Download the video.
    video := operation.Response.GeneratedVideos[0]
    client.Files.Download(ctx, video.Video, nil)
    fname := "veo3_with_image_input.mp4"
    _ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
    log.Printf("Generated video saved to %s\n", fname)
}

พารามิเตอร์และข้อกำหนดของ Veo API

พารามิเตอร์เหล่านี้คือพารามิเตอร์ที่คุณตั้งค่าในคำขอ API เพื่อควบคุมกระบวนการสร้างวิดีโอได้

พารามิเตอร์ คำอธิบาย Veo 3 และ Veo 3 Fast Veo 2
prompt คำอธิบายแบบข้อความสำหรับวิดีโอ รองรับการเตือนด้วยเสียง string string
negativePrompt ข้อความอธิบายสิ่งที่ไม่ควรใส่ในวิดีโอ string string
image รูปภาพเริ่มต้นที่จะสร้างภาพเคลื่อนไหว วัตถุ Image รายการ วัตถุ Image รายการ
aspectRatio สัดส่วนภาพของวิดีโอ "16:9" (ค่าเริ่มต้น, 720p และ 1080p),
"9:16" (720p)
"16:9" (ค่าเริ่มต้น, 720p),
"9:16" (720p)
resolution สัดส่วนภาพของวิดีโอ "720p" (ค่าเริ่มต้น),
"1080p" (16:9 เท่านั้น)
ไม่รองรับ
personGeneration ควบคุมการสร้างบุคคล
(ดูข้อจำกัดด้านภูมิภาคได้ที่ข้อจำกัด)
เปลี่ยนข้อความเป็นวิดีโอ:
"allow_all" เท่านั้น
เปลี่ยนรูปภาพเป็นวิดีโอ:
"allow_adult" เท่านั้น
ข้อความเป็นวิดีโอ:
"allow_all", "allow_adult", "dont_allow"
รูปภาพเป็นวิดีโอ:
"allow_adult" และ "dont_allow"

โปรดทราบว่าพารามิเตอร์ seed ยังใช้ได้กับรุ่น Veo 3 ด้วย ซึ่งไม่ได้เป็นการรับประกันความแน่นอน แต่จะช่วยปรับปรุงให้ดีขึ้นเล็กน้อย

คุณปรับแต่งการสร้างวิดีโอได้โดยการตั้งค่าพารามิเตอร์ในคำขอ เช่น คุณระบุ negativePrompt เพื่อเป็นแนวทางให้โมเดลได้

Python

import time
from google import genai
from google.genai import types

client = genai.Client()

operation = client.models.generate_videos(
    model="veo-3.0-generate-001",
    prompt="A cinematic shot of a majestic lion in the savannah.",
    config=types.GenerateVideosConfig(negative_prompt="cartoon, drawing, low quality"),
)

# Poll the operation status until the video is ready.
while not operation.done:
    print("Waiting for video generation to complete...")
    time.sleep(10)
    operation = client.operations.get(operation)

# Download the generated video.
generated_video = operation.response.generated_videos[0]
client.files.download(file=generated_video.video)
generated_video.video.save("parameters_example.mp4")
print("Generated video saved to parameters_example.mp4")

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

let operation = await ai.models.generateVideos({
  model: "veo-3.0-generate-001",
  prompt: "A cinematic shot of a majestic lion in the savannah.",
  config: {
    aspectRatio: "16:9",
    negativePrompt: "cartoon, drawing, low quality"
  },
});

// Poll the operation status until the video is ready.
while (!operation.done) {
  console.log("Waiting for video generation to complete...")
  await new Promise((resolve) => setTimeout(resolve, 10000));
  operation = await ai.operations.getVideosOperation({
    operation: operation,
  });
}

// Download the generated video.
ai.files.download({
    file: operation.response.generatedVideos[0].video,
    downloadPath: "parameters_example.mp4",
});
console.log(`Generated video saved to parameters_example.mp4`);

Go

package main

import (
    "context"
    "log"
    "os"
    "time"

    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    videoConfig := &genai.GenerateVideosConfig{
        AspectRatio: "16:9",
        NegativePrompt: "cartoon, drawing, low quality",
    }

    operation, _ := client.Models.GenerateVideos(
        ctx,
        "veo-3.0-generate-001",
        "A cinematic shot of a majestic lion in the savannah.",
        nil,
        videoConfig,
    )

    // Poll the operation status until the video is ready.
    for !operation.Done {
        log.Println("Waiting for video generation to complete...")
        time.Sleep(10 * time.Second)
        operation, _ = client.Operations.GetVideosOperation(ctx, operation, nil)
    }

    // Download the generated video.
    video := operation.Response.GeneratedVideos[0]
    client.Files.Download(ctx, video.Video, nil)
    fname := "parameters_example.mp4"
    _ = os.WriteFile(fname, video.Video.VideoBytes, 0644)
    log.Printf("Generated video saved to %s\n", fname)
}

REST

# Note: This script uses jq to parse the JSON response.
# GEMINI API Base URL
BASE_URL="https://generativelanguage.googleapis.com/v1beta"

# Send request to generate video and capture the operation name into a variable.
operation_name=$(curl -s "${BASE_URL}/models/veo-3.0-generate-001:predictLongRunning" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -X "POST" \
  -d '{
    "instances": [{
        "prompt": "A cinematic shot of a majestic lion in the savannah."
      }
    ],
    "parameters": {
      "aspectRatio": "16:9",
      "negativePrompt": "cartoon, drawing, low quality"
    }
  }' | jq -r .name)

# Poll the operation status until the video is ready
while true; do
  # Get the full JSON status and store it in a variable.
  status_response=$(curl -s -H "x-goog-api-key: $GEMINI_API_KEY" "${BASE_URL}/${operation_name}")

  # Check the "done" field from the JSON stored in the variable.
  is_done=$(echo "${status_response}" | jq .done)

  if [ "${is_done}" = "true" ]; then
    # Extract the download URI from the final response.
    video_uri=$(echo "${status_response}" | jq -r '.response.generateVideoResponse.generatedSamples[0].video.uri')
    echo "Downloading video from: ${video_uri}"

    # Download the video using the URI and API key and follow redirects.
    curl -L -o parameters_example.mp4 -H "x-goog-api-key: $GEMINI_API_KEY" "${video_uri}"
    break
  fi
  # Wait for 5 seconds before checking again.
  sleep 10
done

การจัดการการดำเนินการแบบไม่พร้อมกัน

การสร้างวิดีโอเป็นงานที่ต้องใช้การคำนวณอย่างเข้มข้น เมื่อคุณส่งคำขอ ไปยัง API ระบบจะเริ่มงานที่ใช้เวลานานและส่งออบเจ็กต์ operation กลับมาทันที จากนั้นคุณต้องทำการสำรวจจนกว่าวิดีโอจะพร้อม ซึ่งจะระบุโดยdone สถานะเป็นจริง

หัวใจสำคัญของกระบวนการนี้คือลูปการสำรวจ ซึ่งจะตรวจสอบสถานะของงานเป็นระยะๆ

Python

import time
from google import genai
from google.genai import types

client = genai.Client()

# After starting the job, you get an operation object.
operation = client.models.generate_videos(
    model="veo-3.0-generate-001",
    prompt="A cinematic shot of a majestic lion in the savannah.",
)

# Alternatively, you can use operation.name to get the operation.
operation = types.GenerateVideosOperation(name=operation.name)

# This loop checks the job status every 10 seconds.
while not operation.done:
    time.sleep(10)
    # Refresh the operation object to get the latest status.
    operation = client.operations.get(operation)

# Once done, the result is in operation.response.
# ... process and download your video ...

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

// After starting the job, you get an operation object.
let operation = await ai.models.generateVideos({
  model: "veo-3.0-generate-001",
  prompt: "A cinematic shot of a majestic lion in the savannah.",
});

// Alternatively, you can use operation.name to get the operation.
// operation = types.GenerateVideosOperation(name=operation.name)

// This loop checks the job status every 10 seconds.
while (!operation.done) {
    await new Promise((resolve) => setTimeout(resolve, 1000));
    // Refresh the operation object to get the latest status.
    operation = await ai.operations.getVideosOperation({ operation });
}

// Once done, the result is in operation.response.
// ... process and download your video ...

ฟีเจอร์ของโมเดล

ฟีเจอร์ คำอธิบาย Veo 3 และ Veo 3 Fast Veo 2
เสียง สร้างเสียงพร้อมวิดีโอแบบเนทีฟ ✔️ เปิดตลอดเวลา ❌ ไร้เสียงเท่านั้น
รูปแบบการป้อนข้อมูล ประเภทอินพุตที่ใช้ในการสร้าง เปลี่ยนข้อความเป็นวิดีโอ เปลี่ยนรูปภาพเป็นวิดีโอ เปลี่ยนข้อความเป็นวิดีโอ เปลี่ยนรูปภาพเป็นวิดีโอ
วิธีแก้ปัญหา ความละเอียดเอาต์พุตของวิดีโอ 720p และ 1080p (16:9 เท่านั้น) 720p
อัตราเฟรม อัตราเฟรมเอาต์พุตของวิดีโอ 24 เฟรมต่อวินาที 24 เฟรมต่อวินาที
ระยะเวลาของวิดีโอ ความยาวของวิดีโอที่สร้างขึ้น 8 วินาที 5-8 วินาที
วิดีโอต่อคำขอ จำนวนวิดีโอที่สร้างต่อคำขอ 1 1 หรือ 2
สถานะและรายละเอียด ความพร้อมใช้งานของโมเดลและรายละเอียดเพิ่มเติม เสถียร เสถียร

ดูรายละเอียดการใช้งาน Veo เพิ่มเติมได้ที่ส่วนรุ่นของโมเดล รวมถึงหน้าราคาและโควต้า อัตราการใช้งาน

คู่มือการใช้พรอมต์สำหรับ Veo

ส่วนนี้มีตัวอย่างวิดีโอที่คุณสร้างได้โดยใช้ Veo และแสดงวิธีแก้ไขพรอมต์เพื่อสร้างผลลัพธ์ที่แตกต่าง

ตัวกรองความปลอดภัย

Veo ใช้ตัวกรองความปลอดภัยใน Gemini เพื่อช่วยให้มั่นใจว่าวิดีโอที่สร้างขึ้นและรูปภาพที่อัปโหลดจะไม่มีเนื้อหาที่ทำให้เกิดความไม่พอใจ ระบบจะบล็อกพรอมต์ที่ละเมิดข้อกำหนดและหลักเกณฑ์ของเรา

ข้อมูลเบื้องต้นเกี่ยวกับการเขียนพรอมต์

พรอมต์ที่ดีต้องสื่อความหมายและชัดเจน หากต้องการใช้ Veo ให้เกิดประโยชน์สูงสุด ให้เริ่มต้นด้วย การระบุไอเดียหลัก ปรับแต่งไอเดียโดยการเพิ่มคีย์เวิร์ดและตัวแก้ไข และรวมคำศัพท์เฉพาะของวิดีโอลงในพรอมต์

พรอมต์ของคุณควรมีองค์ประกอบต่อไปนี้

  • เรื่อง: วัตถุ บุคคล สัตว์ หรือทิวทัศน์ที่คุณต้องการในวิดีโอ เช่น ทิวทัศน์เมือง ธรรมชาติ ยานพาหนะ หรือลูกสุนัข
  • การกระทำ: สิ่งที่วัตถุกำลังทำ (เช่น เดิน วิ่ง หรือหันศีรษะ)
  • สไตล์: ระบุแนวทางครีเอทีฟโฆษณาโดยใช้คีย์เวิร์ดสไตล์ภาพยนตร์ที่เฉพาะเจาะจง เช่น ไซไฟ ภาพยนตร์สยองขวัญ ฟิล์มนัวร์ หรือสไตล์ภาพเคลื่อนไหว เช่น การ์ตูน
  • การวางตำแหน่งและการเคลื่อนไหวของกล้อง: [ไม่บังคับ] ควบคุมตำแหน่ง และการเคลื่อนไหวของกล้องโดยใช้คำต่างๆ เช่น มุมมองจากด้านบน ระดับสายตา ภาพมุมสูง ภาพดอลลี่ หรือมุมมองจากด้านล่าง
  • องค์ประกอบ: [ไม่บังคับ] วิธีการจัดเฟรมภาพ เช่น ภาพกว้าง ภาพระยะใกล้ ภาพบุคคลเดี่ยว หรือภาพบุคคลคู่
  • โฟกัสและเอฟเฟกต์เลนส์: [ไม่บังคับ] ใช้คำต่างๆ เช่น โฟกัสตื้น โฟกัสลึก โฟกัสแบบนุ่ม เลนส์มาโคร และเลนส์มุมกว้างเพื่อให้ได้ เอฟเฟกต์ภาพที่เฉพาะเจาะจง
  • บรรยากาศ: [ไม่บังคับ] สีและแสงมีส่วนช่วยในฉากอย่างไร เช่น โทนสีน้ำเงิน กลางคืน หรือโทนสีอุ่น

เคล็ดลับเพิ่มเติมในการเขียนพรอมต์

  • ใช้ภาษาที่สื่อความหมาย: ใช้คำคุณศัพท์และคำกริยาวิเศษณ์เพื่อสร้างภาพที่ชัดเจน สำหรับ Veo
  • ปรับปรุงรายละเอียดใบหน้า: ระบุรายละเอียดใบหน้าเป็นจุดโฟกัสของรูปภาพ เช่น ใช้คำว่าภาพบุคคลในพรอมต์

ดูกลยุทธ์การแจ้งที่ครอบคลุมมากขึ้นได้ที่ข้อมูลเบื้องต้นเกี่ยวกับ การออกแบบพรอมต์

การป้อนพรอมต์สำหรับเสียง

Veo 3 ช่วยให้คุณระบุคิวสำหรับเอฟเฟกต์เสียง เสียงแวดล้อม และบทสนทนาได้ โมเดลจะจับภาพความแตกต่างของคิวเหล่านี้เพื่อสร้างซาวด์แทร็กที่ซิงค์กัน

  • บทสนทนา: ใช้เครื่องหมายคำพูดสำหรับคำพูดที่เฉพาะเจาะจง (เช่น "นี่ต้องเป็น กุญแจแน่ๆ" เขาพึมพำ)
  • เอฟเฟกต์เสียง (SFX): อธิบายเสียงอย่างชัดเจน (ตัวอย่าง: ยาง กรีดร้องเสียงดัง เครื่องยนต์คำราม)
  • เสียงแวดล้อม: อธิบายเสียงในสภาพแวดล้อม (ตัวอย่าง: เสียงฮัมเบาๆ ที่น่าขนลุกก้องกังวานอยู่เบื้องหลัง)

วิดีโอเหล่านี้แสดงการแจ้งให้ Veo 3 สร้างเสียงที่มีรายละเอียดเพิ่มขึ้น เรื่อยๆ

พรอมต์ เอาต์พุตที่สร้างขึ้น
รายละเอียดเพิ่มเติม (บทสนทนาและบรรยากาศ)
ภาพระยะใกล้ของคน 2 คนที่จ้องมองภาพวาดลึกลับบนผนัง โดยมีแสงไฟจากคบเพลิงส่องสว่าง "นี่ต้องเป็นกุญแจสำคัญ" เขากระซิบขณะลากนิ้วตามรูปแบบ "แต่ว่ามันหมายความว่ายังไงนะ" เธอกล่าวอย่างงุนงงพร้อมกับเอียงศีรษะ หินชื้น งานแกะสลักอันวิจิตร สัญลักษณ์ที่ซ่อนอยู่ เสียงฮัมเบาๆ ที่ชวนขนลุกก้องกังวานอยู่เบื้องหลัง
นักล่าสมบัติในถ้ำ
รายละเอียดน้อยลง (บทสนทนา)
การตั้งแคมป์ (สต็อปโมชัน): นักตั้งแคมป์: "ตอนนี้ฉันเป็นหนึ่งเดียวกับธรรมชาติแล้ว!" หมี: "ธรรมชาติคงอยากมีพื้นที่ส่วนตัวบ้าง"
นักล่าสมบัติในถ้ำ

ลองใช้พรอมต์เหล่านี้ด้วยตัวคุณเองเพื่อฟังเสียง ลองใช้ Veo 3

การใช้รูปภาพอ้างอิงเพื่อสร้างวิดีโอ

คุณสามารถสร้างภาพเคลื่อนไหวให้กับสิ่งของในชีวิตประจำวัน เติมชีวิตชีวาให้กับภาพวาด และเพิ่มการเคลื่อนไหวและเสียงให้กับฉากธรรมชาติได้โดยใช้ความสามารถเปลี่ยนรูปภาพเป็นวิดีโอของ Veo

พรอมต์ เอาต์พุตที่สร้างขึ้น
รูปภาพอินพุต (สร้างโดย Imagen)
กระต่ายกับช็อกโกแลตแท่ง
กระต่ายกำลังวิ่งหนี
วิดีโอเอาต์พุต (สร้างโดย Veo 3)
กระต่ายวิ่งหนี
กระต่ายกำลังวิ่งหนี

ตัวอย่างพรอมต์และเอาต์พุต

ส่วนนี้จะแสดงพรอมต์หลายรายการ โดยเน้นว่ารายละเอียดที่อธิบายได้จะช่วย ยกระดับผลลัพธ์ของวิดีโอแต่ละรายการได้อย่างไร

ตีระฆังเบา

วิดีโอนี้สาธิตวิธีใช้องค์ประกอบของพื้นฐานการเขียนพรอมต์ในพรอมต์

พรอมต์ เอาต์พุตที่สร้างขึ้น
ภาพระยะใกล้ (องค์ประกอบ) ของน้ำแข็งย้อยที่กำลังละลาย (วัตถุ) บนกำแพงหิน (บริบท) ที่แข็งตัวพร้อมโทนสีน้ำเงินเย็น (บรรยากาศ) ซึ่งซูมเข้า (การเคลื่อนไหวของกล้อง) เพื่อคงรายละเอียดระยะใกล้ของหยดน้ำ (การกระทำ) น้ำแข็งย้อยพร้อมพื้นหลังสีน้ำเงิน

ผู้ชายคุยโทรศัพท์

วิดีโอเหล่านี้แสดงให้เห็นวิธีแก้ไขพรอมต์ด้วยรายละเอียดที่เฉพาะเจาะจงมากขึ้นเรื่อยๆ เพื่อให้ Veo ปรับแต่งเอาต์พุตตามที่คุณต้องการ

พรอมต์ เอาต์พุตที่สร้างขึ้น
รายละเอียดน้อยลง
กล้องเลื่อนไปแสดงภาพระยะใกล้ของชายหนุ่มผู้สิ้นหวังในชุด เสื้อคลุมสีเขียว เขากำลังโทรออกด้วยโทรศัพท์ติดผนังสไตล์แป้นหมุนที่มี แสงไฟนีออนสีเขียว ดูเหมือนฉากในภาพยนตร์
ชายคุยโทรศัพท์
รายละเอียดเพิ่มเติม
ภาพระยะใกล้แบบภาพยนตร์ ติดตามชายหนุ่มผู้สิ้นหวังในชุดเสื้อคลุมสีเขียวที่ดูเก่า ขณะที่เขากำลังหมุนโทรศัพท์แป้นหมุนที่ติดอยู่บนกำแพงอิฐ ที่ดูเก่าและสกปรก ซึ่งอาบไปด้วยแสงไฟนีออนสีเขียวที่ดูน่าขนลุก กล้องซูมเข้าเผยให้เห็นความตึงเครียดที่กรามและ ความสิ้นหวังที่ปรากฏบนใบหน้าขณะที่เขาพยายามโทรออก ระยะชัดตื้นโฟกัสไปที่รอยย่นบนหน้าผากและโทรศัพท์หมุนสีดำ เบลอพื้นหลังให้กลายเป็นทะเลสีนีออนและเงาที่ไม่ชัดเจน สร้างความรู้สึกเร่งด่วนและโดดเดี่ยว
ผู้ชายคุยโทรศัพท์

เสือดาวหิมะ

พรอมต์ เอาต์พุตที่สร้างขึ้น
พรอมต์ง่ายๆ:
สิ่งมีชีวิตน่ารักที่มีขนคล้ายเสือดาวหิมะกำลังเดินอยู่ในป่าฤดูหนาว เรนเดอร์สไตล์การ์ตูน 3 มิติ
เสือดาวหิมะซึม
พรอมต์แบบละเอียด:
สร้างฉากแอนิเมชัน 3 มิติสั้นๆ ในสไตล์การ์ตูนที่สนุกสนาน สิ่งมีชีวิตน่ารัก ที่มีขนคล้ายเสือดาวหิมะ ดวงตาโตที่สื่ออารมณ์ และรูปร่างกลมมนที่เป็นมิตร เดินอย่างมีความสุขในป่าฤดูหนาวที่แปลกประหลาด ฉากควรมี ต้นไม้กลมๆ ที่ปกคลุมด้วยหิมะ เกล็ดหิมะที่ค่อยๆ ตกลงมา และแสงแดดอุ่นๆ ที่ส่องผ่านกิ่งไม้ การเคลื่อนไหวที่เด้งดึ๋งและรอยยิ้มกว้างของตัวละครควรสื่อถึงความสุขอย่างแท้จริง ใช้โทนที่สดใสและอบอุ่นใจด้วย สีสันสดใสและภาพเคลื่อนไหวที่สนุกสนาน
เสือดาวหิมะวิ่งเร็วขึ้น

ตัวอย่างตามองค์ประกอบการเขียน

ตัวอย่างเหล่านี้แสดงวิธีปรับแต่งพรอมต์ตามองค์ประกอบพื้นฐานแต่ละอย่าง

เรื่องและบริบท

ระบุโฟกัสหลัก (วัตถุ) และพื้นหลังหรือสภาพแวดล้อม (บริบท)

พรอมต์ เอาต์พุตที่สร้างขึ้น
ภาพเรนเดอร์สถาปัตยกรรมของอาคารอพาร์ตเมนต์คอนกรีตสีขาวที่มีรูปทรงออร์แกนิกที่ไหลลื่น ผสมผสานเข้ากับต้นไม้เขียวขจีและองค์ประกอบแห่งอนาคตได้อย่างลงตัว ตัวยึดตำแหน่ง
ดาวเทียมลอยผ่านอวกาศโดยมีดวงจันทร์และดวงดาวบางดวงเป็นฉากหลัง ดาวเทียมลอยอยู่ในชั้นบรรยากาศ

การดำเนินการ

ระบุสิ่งที่วัตถุกำลังทำ (เช่น เดิน วิ่ง หรือหันศีรษะ)

พรอมต์ เอาต์พุตที่สร้างขึ้น
ภาพมุมกว้างของหญิงสาวเดินเล่นริมชายหาด ดูมีความสุขและ ผ่อนคลายขณะมองไปยังขอบฟ้าตอนพระอาทิตย์ตก พระอาทิตย์ตกสวยงามมาก

รูปแบบ

เพิ่มคีย์เวิร์ดเพื่อนำการสร้างไปสู่สุนทรียะที่เฉพาะเจาะจง (เช่น เหนือจริง ย้อนยุค อนาคต ฟิล์มนัวร์)

พรอมต์ เอาต์พุตที่สร้างขึ้น
สไตล์ฟิล์มนัวร์ ชายและหญิงเดินบนถนน ลึกลับ ภาพยนตร์ ขาวดำ สไตล์ฟิล์มนัวร์สวยงามมาก

การเคลื่อนไหวและการจัดองค์ประกอบของกล้อง

ระบุวิธีที่กล้องเคลื่อนที่ (ภาพมุมมองบุคคลที่หนึ่ง มุมมองจากด้านบน มุมมองโดรนติดตาม) และ วิธีจัดเฟรมภาพ (ภาพมุมกว้าง ภาพระยะใกล้ ภาพมุมต่ำ)

พรอมต์ เอาต์พุตที่สร้างขึ้น
ภาพ POV จากรถโบราณที่ขับท่ามกลางสายฝนในแคนาดาตอนกลางคืน ภาพยนตร์ พระอาทิตย์ตกสวยงามมาก
ภาพระยะใกล้สุดๆ ของดวงตาที่มีภาพเมืองสะท้อนอยู่ พระอาทิตย์ตกสวยงามมาก

สภาพแวดล้อม

ชุดสีและแสงไฟมีผลต่ออารมณ์ ลองใช้คำอย่าง "สีส้มหม่น โทนสีอบอุ่น" "แสงธรรมชาติ" "พระอาทิตย์ขึ้น" หรือ "โทนสีน้ำเงินเย็น"

พรอมต์ เอาต์พุตที่สร้างขึ้น
ภาพระยะใกล้ของเด็กหญิงที่อุ้มลูกสุนัขพันธุ์โกลเด้นรีทรีฟเวอร์น่ารักในสวนสาธารณะที่มีแสงแดดส่อง ลูกสุนัขในอ้อมกอดของเด็กหญิง
ภาพระยะใกล้แบบภาพยนตร์ของผู้หญิงเศร้าที่นั่งรถประจำทางในสายฝน โทนสีน้ำเงินเย็นๆ บรรยากาศเศร้า ผู้หญิงนั่งรถเมล์ด้วยความรู้สึกเศร้า

พรอมต์เชิงลบ

พรอมต์เชิงลบจะระบุองค์ประกอบที่คุณไม่ต้องการในวิดีโอ

  • ❌ อย่าใช้ภาษาที่สั่งการ เช่น ไม่ หรืออย่า (เช่น "ไม่มีกำแพง")
  • ✅ อธิบายสิ่งที่คุณไม่ต้องการเห็น (เช่น "wall, frame")
พรอมต์ เอาต์พุตที่สร้างขึ้น
ไม่มีพรอมต์เชิงลบ:
สร้างภาพเคลื่อนไหวสั้นๆ ที่มีสไตล์ของต้นโอ๊กขนาดใหญ่ที่ขึ้นโดดเดี่ยว โดยมีใบไม้พัดไหวอย่างรุนแรงในลมแรง... [ย่อ]
แผนผังที่มีการใช้คำ
พร้อมพรอมต์เชิงลบ:
[พรอมต์เดียวกัน]

พรอมต์เชิงลบ: พื้นหลังเป็นเมือง โครงสร้างที่มนุษย์สร้างขึ้น บรรยากาศมืดครึ้ม พายุ หรือน่ากลัว
แผนภูมิต้นไม้ที่ไม่มีคำเชิงลบ

สัดส่วนภาพ

Veo ช่วยให้คุณระบุสัดส่วนภาพสำหรับวิดีโอได้

พรอมต์ เอาต์พุตที่สร้างขึ้น
จอกว้าง (16:9)
สร้างวิดีโอที่มีมุมมองจากโดรนติดตามชายคนหนึ่งที่ขับรถเปิดประทุนสีแดงในปาล์มสปริงส์ ช่วงทศวรรษ 1970 โดยมีแสงแดดอบอุ่นและเงาทอดยาว
ชายคนหนึ่งขับรถเปิดประทุนสีแดงใน Palm Springs ในสไตล์ยุค 1970
แนวตั้ง (9:16 - Veo 2 เท่านั้น)
สร้างวิดีโอที่เน้นการเคลื่อนไหวที่ราบรื่นของน้ำตกฮาวายที่งดงามภายในป่าฝนที่เขียวชอุ่ม เน้นที่การไหลของน้ำที่สมจริง ใบไม้ที่มีรายละเอียด และแสงธรรมชาติเพื่อสื่อถึงความเงียบสงบ บันทึกภาพน้ำที่ไหลเชี่ยว บรรยากาศที่เต็มไปด้วยหมอก และแสงแดดที่ส่องลอดผ่านร่มเงาของต้นไม้หนาแน่น ใช้การเคลื่อนกล้องที่ราบรื่นและเป็นภาพยนตร์เพื่อแสดงน้ำตกและสภาพแวดล้อมโดยรอบ มุ่งเน้นที่โทนที่สงบและสมจริง เพื่อนำผู้ชมไปสัมผัสความงามอันเงียบสงบของป่าฝนในฮาวาย
น้ำตกฮาวายอันงดงามในป่าฝนเขียวชอุ่ม

ข้อจำกัด

  • เวลาในการตอบสนองของคำขอ: ต่ำสุด: 11 วินาที สูงสุด: 6 นาที (ในช่วงเวลาที่มีการใช้งานสูงสุด)
  • ข้อจำกัดระดับภูมิภาค: ในสหภาพยุโรป สหราชอาณาจักร สวิตเซอร์แลนด์ และภูมิภาค MENA ค่าที่อนุญาตสำหรับ personGeneration มีดังนี้
    • Veo 3: allow_adult เท่านั้น
    • Veo 2: dont_allow และ allow_adult ค่าเริ่มต้นคือ dont_allow
  • การเก็บรักษาวิดีโอ: ระบบจะจัดเก็บวิดีโอที่สร้างขึ้นไว้ในเซิร์ฟเวอร์เป็นเวลา 2 วัน หลังจากนั้นระบบจะนำวิดีโอออก หากต้องการบันทึกสำเนาในเครื่อง คุณต้องดาวน์โหลดวิดีโอภายใน 2 วันหลังจากสร้าง
  • การทำลายน้ำ: วิดีโอที่สร้างโดย Veo จะมีลายน้ำโดยใช้ SynthID ซึ่งเป็นเครื่องมือสำหรับการใส่ลายน้ำ และระบุเนื้อหาที่ AI สร้างขึ้น
  • ความปลอดภัย: วิดีโอที่สร้างขึ้นจะผ่านตัวกรองความปลอดภัยและกระบวนการตรวจสอบการจดจำ ซึ่งช่วยลดความเสี่ยงด้านความเป็นส่วนตัว ลิขสิทธิ์ และอคติ
  • ข้อผิดพลาดเกี่ยวกับเสียง: บางครั้ง Veo 3 จะบล็อกไม่ให้สร้างวิดีโอเนื่องจาก ตัวกรองความปลอดภัยหรือปัญหาอื่นๆ ในการประมวลผลเสียง ระบบจะไม่เรียกเก็บเงินจากคุณหากวิดีโอถูกบล็อกไม่ให้สร้าง

เวอร์ชันของโมเดล

Veo 3

พร็อพเพอร์ตี้ คำอธิบาย
รหัสโมเดล

Gemini API

veo-3.0-generate-001

ประเภทข้อมูลที่รองรับ

อินพุต

ข้อความ รูปภาพ

เอาต์พุต

วิดีโอพร้อมเสียง

ขีดจำกัดของ

การป้อนข้อความ

1,024 โทเค็น

วิดีโอเอาต์พุต

1

การอัปเดตล่าสุด กรกฎาคม 2025

Veo 3 Fast

Veo 3 Fast ช่วยให้นักพัฒนาแอปสร้างวิดีโอพร้อมเสียงได้ในขณะที่ยังคงรักษาคุณภาพสูงไว้และเพิ่มประสิทธิภาพเพื่อความรวดเร็วและกรณีการใช้งานทางธุรกิจ เหมาะสำหรับบริการแบ็กเอนด์ที่สร้างโฆษณาโดยอัตโนมัติ เครื่องมือสำหรับการทดสอบ A/B อย่างรวดเร็วของแนวคิดครีเอทีฟโฆษณา หรือแอปที่ต้องสร้างเนื้อหาโซเชียลมีเดียอย่างรวดเร็ว
พร็อพเพอร์ตี้ คำอธิบาย
รหัสโมเดล

Gemini API

veo-3.0-fast-generate-001

ประเภทข้อมูลที่รองรับ

อินพุต

ข้อความ รูปภาพ

เอาต์พุต

วิดีโอพร้อมเสียง

ขีดจำกัดของ

การป้อนข้อความ

1,024 โทเค็น

วิดีโอเอาต์พุต

1

การอัปเดตล่าสุด กรกฎาคม 2025

Veo 2

พร็อพเพอร์ตี้ คำอธิบาย
รหัสโมเดล

Gemini API

veo-2.0-generate-001

ประเภทข้อมูลที่รองรับ

อินพุต

ข้อความ รูปภาพ

เอาต์พุต

วิดีโอ

ขีดจำกัดของ

การป้อนข้อความ

ไม่มี

อินพุตรูปภาพ

ความละเอียดและสัดส่วนภาพใดก็ได้ที่มีขนาดไฟล์ไม่เกิน 20 MB

วิดีโอเอาต์พุต

สูงสุด 2 รายการ

การอัปเดตล่าสุด เมษายน 2025

ขั้นตอนถัดไป