Skip to content

Veo 视频生成(OpenAI 兼容格式)

POST  v1/videos

Google Veo 视频生成接口(OpenAI 兼容格式)。

端点说明:

创建视频: POST /v1/videos

查询状态: GET /v1/videos/

支持的模型(根据官方文档):

模型 分辨率 时长 特殊功能

veo-3.1-generate-preview 720p, 1080p(仅8秒), 4k(仅8秒) 4/6/8秒 图生视频、首尾帧插值、参考图片(最多3张)、视频延展

veo-3.1-fast-generate-preview 720p, 1080p(仅8秒), 4k(仅8秒) 4/6/8秒 图生视频、首尾帧插值、参考图片(最多3张)、视频延展

veo-3.0-generate-001 720p, 1080p(仅8秒), 4k(仅8秒) 4/6/8秒 图生视频、首尾帧插值

veo-3.0-fast-generate-001 720p, 1080p(仅8秒), 4k(仅8秒) 4/6/8秒 图生视频、首尾帧插值

veo-2.0-generate-001 不支持设置 5/6/8秒 图生视频、首尾帧插值

分辨率与时长约束:

720p:支持 4、6、8 秒时长

1080p:仅支持 8 秒时长

4k:仅支持 8 秒时长

视频延展(extension)时:仅支持 720p

功能说明: 1.文生视频:仅需 prompt 即可生成视频

2.图生视频:使用 image 参数提供起始帧图片(所有 Veo 模型支持)

3.首尾帧插值:使用 image + last_frame 参数指定首尾帧(所有 Veo 模型支持)

4.参考图片引导(仅 Veo 3.1):使用 reference_images 参数提供最多 3 张参考图片

5.视频延展(仅 Veo 3.1):使用 video 参数提供要延展的视频

personGeneration 参数说明:

Veo 3.1 文生视频/扩展:仅支持 "allow_all"

Veo 3.1 图生视频/插帧/参考图片:仅支持 "allow_adult"

Veo 3.0 文生视频:仅支持 "allow_all"

Veo 3.0 图生视频:仅支持 "allow_adult"

Veo 2.0:文生视频支持全部,图生视频支持 "allow_adult" 和 "dont_allow"

注意事项:

使用参考图片、1080p、4k 分辨率时,时长必须为 8 秒

Veo 2.0 不支持 resolution 参数

图片/视频大小限制:

单次请求总大小不超过 10MB(Base64 编码后)

使用多张参考图片时,所有图片 Base64 编码后的总大小不超过 10MB

建议使用压缩后的图片以避免超出限制

请求参数

Authorization

在 Header 添加参数 Authorization,其值为在 Bearer 之后拼接 Token。

Authorization: Bearer ******************

Body 参数

Content-Type: application/json

参数名类型必填说明
modelstring必需模型 ID。推荐使用 veo-3.1-generate-preview 以支持所有高级功能(如参考图、首尾帧)。其他选项包括 veo-3.0...veo-2.0...
promptstring必需提示词。描述视频内容、动作、风格等。 • Veo 3.x 特性:支持对话和音效提示(使用引号,如 He said, "Hello!")。
negative_promptstring必需反向提示词。描述不希望出现在视频中的内容(如“模糊”、“变形”)。
durationinteger必需视频时长(秒)。 • Veo 3.x:支持 4、6、8(默认 8)。 • Veo 2:支持 5、6、8。 • 注意:使用参考图、首尾帧或延展功能时,固定为 8秒。
resolution / sizestring必需视频分辨率。 • 720p:原生生成(默认)。 • 1080p:上采样(Veo 3.0/3.1 支持)。 • 4K / 2160p:仅 Veo 3.1 支持。
aspect_ratiostring必需宽高比。通常为 "16:9"(默认)或 "9:16"(竖屏)。 • 限制:使用参考图片时仅支持 16:9。
fpsinteger必需帧率。每秒帧数(通常固定为 24fps)。
stylestring必需风格预设。指定视频的视觉风格(如电影感、动画等)。
guidance_scaleinteger必需引导系数。控制模型对提示词的遵循程度。
seedinteger必需随机种子。用于提高生成结果的一致性(不保证完全确定性)。
ninteger必需生成数量。一次请求生成的视频数量。
audioboolean可选是否生成音频。 • Veo 3.x:默认 true(支持原生音频)。 • Veo 2:不支持。
response_formatstring必需响应格式。指定返回数据的格式。
response_typestring必需响应类型。指定响应的具体类型。
imageobject可选图生视频(起始帧)。提供一张图片作为视频的第一帧。 • 支持 imageBytes (Base64) 或 url。 • 大小限制:Base64 不超过 10MB。
videoobject可选视频延展。提供一段视频以生成后续内容(Scene Extension)。 • 支持 videoBytes (Base64) 或 url
referenceImagesarray [object]可选参考图片引导(仅 Veo 3.1)。提供最多 3张 图片以保持角色/物体一致性。 • 用途:多镜头角色一致性或特定风格应用。 • 限制:此时时长固定为 8秒,仅支持 16:9。
metadataobject可选高级元数据。包含额外的配置项,如 personGeneration(人物生成权限设置)等。
req_keystring必需请求标识。用于追踪请求的唯一键值。
image_urlsarray[string]必需图片链接数组。可能用于批量处理或特定的多图输入模式。

请求示例 (JSON)

{
    "model": "veo-3.1-fast-generate-preview",
    "prompt": "A cinematic shot of a majestic lion in the savannah at sunset",
    "duration": 8,
    "size": "720p"
}

返回响应

200 成功

Content-Type: application/json

响应参数

字段名类型必填说明
idstring必需任务 ID。用于查询该生成任务状态的唯一标识符。
objectstring必需对象类型。通常为 "video.generation" 或类似的资源类型标识。
modelstring必需模型名称。执行此任务的模型 ID(例如 veo-3.1-generate-preview)。
statusstring必需当前状态。任务的处理状态,常见值包括: • RUNNING / PROCESSING:正在生成中 • SUCCEEDED / COMPLETED:生成成功 • FAILED:生成失败
progressinteger必需生成进度。以百分比表示的进度(0-100),用于前端展示进度条。
created_atinteger必需创建时间戳。任务提交时的 Unix 时间戳。

响应示例

{
    "id": "cHJlZGljdExvbmdSdW5uaW5nL29wZXJhdGlvbnMvMTIzNDU2Nzg5MA",
    "object": "video",
    "model": "veo-3.1-fast-generate-preview",
    "status": "queued",
    "progress": 0,
    "created_at": 1760488792
}

示例代码

python
import http.client
import json

conn = http.client.HTTPSConnection("nxaiapp.com")
payload = json.dumps({
   "model": "veo-3.1-fast-generate-preview",
   "prompt": "A cinematic shot of a majestic lion in the savannah at sunset",
   "duration": 8,
   "size": "720p"
})
headers = {
   'Authorization': 'Bearer <token>',
   'Content-Type': 'application/json'
}
conn.request("POST", "/v1/videos", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))