A teenager pops an ollie on a quiet suburban street in the morning, slow motion at board height, dew on the asphalt, sneakers leaving the ground cleanly. Natural sound: the snap of the tail, wheels landing, a distant lawn sprinkler. Realistic motion, no text, no logos.
Veo 3.1 Lite Official Text-to-Video API
google/veo3.1-lite/text-to-videoVeo 3.1 Lite Official 是超高性价比的极速探索原型:专为大批量提示词试错、分镜草稿与创意沙盘而生。保留运镜控制与可选原生音频能力,以 720p/1080p 与极低按秒费率,让你在升级到 Fast/Quality 成片前,用最小成本锁定最优视觉方向。
生成的视频会显示在这里
填写提示词并添加所需素材,确认设置后点击“运行”。
示例
REST API
快速开始
完成 API 认证,提交素材与生成指令,再通过任务 ID 获取视频结果。
连接 Vidgo API
创建 API Key,仅保存在服务端,并发送 Authorization: Bearer VIDGO_API_KEY。
- 接口
- POST
https://api.vidgo.ai/api/generate/submit - 认证
- Authorization: Bearer VIDGO_API_KEY
提交一次生成任务
按请求示例填写当前端点的素材与设置,提交后保存 task_id,用于后续查询生成进度和结果。
REQUEST_BODY=$(cat <<'JSON'
{
"model": "google/veo3.1-lite/text-to-video",
"input": {
"prompt": "A teenager pops an ollie on a quiet suburban street in the morning, slow motion at board height, dew on the asphalt, sneakers leaving the ground cleanly. Natural sound: the snap of the tail, wheels landing, a distant lawn sprinkler. Realistic motion, no text, no logos.",
"duration": 8,
"aspect_ratio": "16:9",
"sound": true,
"resolution": "720p"
}
}
JSON
)
RESPONSE=$(curl --silent --show-error --fail-with-body \
--request POST \
--url "https://api.vidgo.ai/api/generate/submit" \
--header "Authorization: Bearer $VIDGO_API_KEY" \
--header "Content-Type: application/json" \
--data "$REQUEST_BODY")
CODE=$(printf '%s' "$RESPONSE" | jq -r '.code // empty')
if [ "$CODE" != "0" ] && [ "$CODE" != "200" ]; then
printf 'API error: %s
' "$RESPONSE" >&2
exit 1
fi
printf '%s
' "$RESPONSE"等待结果
用 task_id 查询,not_started/running 继续,finished/failed 停止。成功后读取 data.files[].file_url。
查询状态
GET https://api.vidgo.ai/api/generate/status/{task_id}以 2 秒为基准间隔轮询状态,长时间任务可适当拉长间隔。仅在 not_started 或 running 时继续,遇到 finished 或 failed 立即停止。也可以在同一请求中配置 callback_url 接收回调通知。
not_startedrunningfinishedfailed{
"code": 200,
"data": {
"task_id": "task-unified-...",
"status": "running",
"created_time": "2026-09-17T10:00:00Z"
}
}{
"code": 200,
"data": {
"task_id": "task-unified-...",
"status": "finished",
"files": [
{
"file_url": "https://storage.vidgo.ai/generated/video.mp4",
"file_type": "video"
}
],
"created_time": "2026-08-22T10:00:00Z",
"progress": 100,
"error_message": null
}
}完整可运行示例
展开后可查看包含 HTTP 与业务码检查、task_id 校验、轮询、终态处理和超时边界的完整脚本。
set -euo pipefail
: "${VIDGO_API_KEY:?Set VIDGO_API_KEY in your environment}"
REQUEST_BODY=$(cat <<'JSON'
{
"model": "google/veo3.1-lite/text-to-video",
"input": {
"prompt": "A teenager pops an ollie on a quiet suburban street in the morning, slow motion at board height, dew on the asphalt, sneakers leaving the ground cleanly. Natural sound: the snap of the tail, wheels landing, a distant lawn sprinkler. Realistic motion, no text, no logos.",
"duration": 8,
"aspect_ratio": "16:9",
"sound": true,
"resolution": "720p"
}
}
JSON
)
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
--request POST \
--url "https://api.vidgo.ai/api/generate/submit" \
--header "Authorization: Bearer $VIDGO_API_KEY" \
--header "Content-Type: application/json" \
--data "$REQUEST_BODY")
TASK_ID=$(printf '%s' "$SUBMIT_RESPONSE" | jq -r '.data.task_id // .task_id // empty')
BUSINESS_CODE=$(printf '%s' "$SUBMIT_RESPONSE" | jq -r '.code // empty')
if [ "$BUSINESS_CODE" != "0" ] && [ "$BUSINESS_CODE" != "200" ]; then
printf 'Submit failed:
%s
' "$SUBMIT_RESPONSE" >&2
exit 1
fi
if [ -z "$TASK_ID" ]; then
printf 'Submit response did not include task_id:
%s
' "$SUBMIT_RESPONSE" >&2
exit 1
fi
START_TIME=$(date +%s)
POLL_DELAY=2
while true; do
if [ $(( $(date +%s) - START_TIME )) -ge 600 ]; then
printf 'Timed out after 600 seconds
' >&2
exit 1
fi
STATUS_RESPONSE=$(curl --silent --show-error --fail-with-body \
--url "https://api.vidgo.ai/api/generate/status/$TASK_ID" \
--header "Authorization: Bearer $VIDGO_API_KEY")
STATUS=$(printf '%s' "$STATUS_RESPONSE" | jq -r '.data.status // .status // empty')
BUSINESS_CODE=$(printf '%s' "$STATUS_RESPONSE" | jq -r '.code // empty')
if [ "$BUSINESS_CODE" != "0" ] && [ "$BUSINESS_CODE" != "200" ]; then
printf 'Status request failed:
%s
' "$STATUS_RESPONSE" >&2
exit 1
fi
case "$STATUS" in
finished)
printf '%s' "$STATUS_RESPONSE" | jq -r '(.data.files // .files // [])[]?.file_url'
break
;;
failed)
printf '%s' "$STATUS_RESPONSE" | jq -r '.data.error_message // .error_message // "Generation failed"' >&2
exit 1
;;
not_started|running)
sleep "$POLL_DELAY"
if [ "$POLL_DELAY" -lt 10 ]; then POLL_DELAY=$((POLL_DELAY + 1)); fi
;;
*)
printf 'Unexpected task status: %s
' "$STATUS" >&2
exit 1
;;
esac
doneinput 参数
下表列出 input 对象的可用参数、类型与默认值;请求示例同时展示顶层必填字段 model。按当前任务准备素材并配置输出。
| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| prompt | string | 是 | — | 去除首尾空格后为 1–1,000 个字符。 |
| duration | integer | 否 | 8 | 4、6 或 8,单位为秒。 |
| aspect_ratio | string | 否 | 16:9 | 16:9 或 9:16。 |
| resolution | string | 否 | 720p | 720p / 1080p。 |
| sound | boolean | 否 | true | true 生成原生音频;false 返回静音片段。 |
响应字段
提交成功后返回任务 ID;状态查询提供任务进度、输出文件,以及任务失败时的错误详情。
| 字段 | 类型 | 说明 |
|---|---|---|
| code | integer | 业务结果码;成功响应使用 0 或 200。 |
| message | string | 可读说明或错误详情。 |
| data.task_id | string | 用于状态查询路径的任务 ID。 |
| data.status | string | not_started、running、finished 或 failed。 |
| data.created_time | string | 任务创建时间,date-time 格式。 |
| data.progress | integer | 任务进度,范围为 0–100;仅在响应包含此字段时提供。 |
| data.files[] | array | 成功任务的全部输出文件,按响应顺序返回。 |
| data.files[].file_url | string | 生成视频的公开 URL。 |
| data.files[].file_type | string | 文件类型,例如 video。 |
| data.error_message | string | null | 状态为 failed 时的失败详情。 |
任务生命周期
在 not_started 或 running 状态下继续查询;收到 finished 或 failed 后结束轮询,并分别处理输出文件或错误详情。
not_started任务已接受,等待开始。
running正在生成。继续使用同一 task_id 轮询。
finished生成成功。从 data.files[].file_url 读取视频地址。
failed生成失败。读取 data.error_message 并停止轮询。
轮询与错误
- 认证收到 401 时,检查 Authorization 中的 Bearer API Key,更新凭据后重试。
- 校验收到 400 时,依据响应说明核对必填素材、参数取值与可用积分,完成相应调整后重新提交。
- 网络与超时状态查询遇到网络错误或超时时,保留原 task_id 并重试查询,再根据返回的任务状态处理结果。
- 轮询间隔以 2 秒为基准间隔发起状态查询;如任务耗时较长,可逐步增加查询间隔。
- 终态仅在 not_started 或 running 时继续。遇到 finished 或 failed 立即停止。
- 回调选项可在请求顶层提供 callback_url 接收终态任务对象;投递失败时仍可轮询。
模型规格
| 规格 | 取值 | 说明 |
|---|---|---|
| 输入模式 | 纯文本 | 提示词用于描述场景、运镜、光线、情绪和声音。 |
| 输出 | 可选原生音频的视频 | 提交后返回异步任务 ID;完成后包含视频文件。 |
| 分辨率 | 720p / 1080p | 默认 720p。 |
| 时长 | 4 / 6 / 8 秒 | 默认 8 秒。 |
| 画面比例 | 16:9 / 9:16 | 默认 16:9。 |
| 计费依据 | 按秒计费 | 720p 无音频 3.6 积分/秒; 带音频 6 积分/秒. 1080p 无音频 6 积分/秒; 带音频 9.6 积分/秒, 仅支持 8 秒. |
Veo 3.1 Lite Official Text-to-Video
Google Veo 3.1 Lite Official 文生视频端点以极速、极低成本承接创意前期工作。用文本快速编排主体动作、摄影机轨迹、光影基调与可选环境声效,批量产出 4–8 秒探索片段,是提示词工程调优与故事分镜草稿的最佳工具。
为什么选择此端点?
超高性价比极速探索以系列中最低的按秒费率实现极速出片,让创意沙盘、A/B 提示词对比与大规模试错成为日常可负担的工作流。
运镜与构图快速验证支持推拉摇移等基础镜头调度语法,快速检验景别、主体动势与叙事节奏是否成立。
可选原生音频预览按需开启动作对齐的环境音与机械声预览;试错阶段也可关闭音频,进一步压低单次探索成本。
720p / 1080p 高效梯队专注高清探索分辨率,避免过早消耗超清预算;确认方向后再升级 Fast/Quality 做 4K 终版。
提示词试错与分镜草稿利器专为大批量提示词调优、故事板预演与创意评审而生,是从想法到锁定镜头语言的最佳第一站。
极低门槛的按秒计费支持 4/6/8 秒精确时长与独立音频开关,让每一次试跑的积分消耗清晰可见、随时可优化。
参数
| 参数 | 要求 | 说明 |
|---|---|---|
| prompt | 必填 | 字符串。描述场景、动作、运镜、光线和声音;去除首尾空格后为 1–1,000 个字符。 |
| duration | 可选 | 整数。设置输出时长;体验区默认预选 8 秒。Lite 的 1080p 仅支持 8 秒。 默认 846 |
| aspect_ratio | 可选 | 字符串。控制画面比例;体验区默认预选 16:9。 默认 16:99:16 |
| resolution | 可选 | 字符串。设置输出分辨率;体验区默认预选 720p。 默认 720p1080p |
| sound | 可选 | 布尔值。是否生成原生音频;体验区默认预选 true。 默认 truefalse |
如何使用
构建场景与主体动作在提示词中写清主体特征与动态演变,例如“珊瑚红配送机器人缓缓驶下雨后街角,平稳切入湿润反光的人行道”。
规划摄影机轨迹与光影补充运镜方式与光影基调,例如“低机位贴地跟拍轮毂细节,暖金夕阳漫反射在圆润外壳上”。试错阶段可暂不加入复杂声效描述。
配置音频与生成时长选择 4、6 或 8 秒;探索阶段建议先关闭音频(sound: false)压低成本,确认动势后再开启原生音效预览。
选择分辨率与画幅比例根据媒介选择 16:9 或 9:16;优先用 720p 做大批量试错,需要更清晰评审画面时再切至 1080p(Lite 的 1080p 仅支持 8 秒)。
确认按秒预估并批量生成查看运行按钮上的按秒折算积分,批量跑多版提示词后筛选最优结果,再升级至 Fast 或 Quality 成片。
价格
Veo 3.1 Lite Official 按生成秒数计费。最终费用 = 时长 × 所选每秒费率。美元换算采用当前基础 API 计费:2,000 积分 = $10。示例:Lite 8 秒 720p 带音频任务为 8 × 6 = 48 积分,按基础 API 积分汇率约 $0.24。
| 用量 | 费率 | 说明 |
|---|---|---|
| 720p,无音频 | 3.6 积分/秒($0.018/秒) | 8 秒 = 28.8 积分($0.144)。 |
| 720p,带音频 | 6 积分/秒($0.03/秒) | 默认 720p / 8 秒带音频为 48 积分($0.24)。 |
| 1080p,无音频(仅 8 秒) | 6 积分/秒($0.03/秒) | Lite 的 1080p 仅支持 8 秒。 |
| 1080p,带音频(仅 8 秒) | 9.6 积分/秒($0.048/秒) | Lite 的 1080p 仅支持 8 秒。 |
适用场景
大批量提示词工程试错用极低成本并行测试主体描述、运镜语法与光影措辞,快速定位高转化提示词组合。
故事分镜与创意沙盘把剧本片段转化为动态草稿,高效对齐景别、节奏与叙事焦点,再决定是否投入更高档位渲染。
活动概念预审与内部评审在预算敏感阶段产出足够清晰的视听示意,帮助团队快速否决或推进方向,避免过早消耗成片预算。
阶梯工作流的第一站作为 Lite → Fast → Quality 管线的入口:锁定构图与动势后,一键升级到更高保真度与 4K 终版。
专业建议
- 结构化提示词公式:遵循“主体外观 + 动作演变 + 运镜轨迹 + 光影材质 +(可选)声音氛围”,在 1,000 字符内保持高密度、可复用的提示词模板。
- 主体动作与镜头调度解耦:将主体动作与摄影机运动分句描述,例如“人物快步穿过走廊,摄影机以平稳侧移视角持续跟拍”,便于对比不同运镜变体。
- 先无音频、后补声音:探索阶段关闭 sound,专注构图与动势;锁定镜头后再开启原生音频验证声画对齐。
- 720p 大批量、1080p 精审:日常 A/B 用 720p;进入内部评审需要更清晰画面时再切 1080p(注意 Lite 1080p 仅 8 秒)。
- 阶梯升级不回头浪费:在 Lite 上把提示词打磨到可复用后,再把同一套提示词迁移到 Fast/Quality,避免在高费率档位反复试错。
使用说明
- Veo 3.1 Lite Official Text-to-Video 使用必填文本提示词生成视频,并可通过时长、分辨率、画面比例和音频设置配置输出。
- 提示词上限为 1,000 个字符。时长支持 4、6 或 8 秒。
- 通过 sound 参数请求带音频或静音输出。带音频与无音频任务使用不同的按秒费率。
- Lite Official 仅支持 720p 和 1080p。Lite 的 1080p 仅支持 8 秒。
- 此端点仅支持文本。如需首帧或首尾帧任务,请使用 Official Image-to-Video 页面。
- 通过 API 提交后保存 task_id,用于查询任务进度和获取生成结果。
相关模型
Veo 3.1 Lite Official Text-to-Video API 常见问题
Veo 3.1 Lite Official Text-to-Video API 是什么?
Veo 3.1 Lite Official 是 Google Veo 3.1 系列中超高性价比的极速探索档位。本端点通过文本提示词生成具备运镜控制与可选原生音频的 4–8 秒视频(720p/1080p),专为大批量提示词试错与分镜草稿设计。你可以通过 Vidgo API 程序化调用,也可以在上方工作区直接体验。
在 API 提交时应使用哪个 model 标识?
在提交请求的 model 字段中请使用 google/veo3.1-lite/text-to-video。如需调用 Fast 或 Quality 变体,请分别传入 google/veo3.1-fast/text-to-video 或 google/veo3.1/text-to-video。请勿将包含 -official 的页面路由地址作为模型 ID 提交。
Lite 变体适合怎样使用原生音频?
Lite 支持通过 sound: true 生成与画面动作对齐的原生音效。建议在提示词探索阶段先关闭音频以最大化试错吞吐;当构图与动势锁定后,再开启音频做声画预览,确认无误后再升级到 Fast/Quality 成片。
Lite 支持哪些分辨率?与 Fast/Quality 有何不同?
Lite 专注 720p 与 1080p 高清探索(1080p 仅支持 8 秒),不提供 4K。这样可把超清预算留给锁定创意之后的 Fast/Quality 终版渲染,避免在探索阶段过度消耗积分。
如何用镜头语言在 Lite 上高效试错运镜?
使用标准电影摄影词汇并单独成句,例如“slow push-in”、“low-angle tracking shot”。在 Lite 上并行跑多组运镜措辞,能以极低成本快速判断哪种镜头语言最贴合叙事,再把胜出版本带到更高档位。
何时选择 Lite,而不是 Fast 或 Quality?
当你需要大批量、低成本验证提示词、分镜节奏与构图可行性时选 Lite;当需要高频量产并兼顾 4K 时选 Fast;当需要最高电影质感与旗舰终版细节时选 Quality。Lite 是阶梯工作流中最高效的第一站。
极低按秒费率如何支撑大规模探索?
按秒计费让你只为实际时长买单。配合 4 秒短测、关闭音频与 720p 设置,可以把单次试跑成本压到最低,从而在同一预算内覆盖更多提示词变体与镜头实验。
文生视频端点支持图片输入吗?
本文生视频端点专用于纯文本提示词驱动生成。若需要以单张图片作为首帧,或上传两张图片做首尾关键帧过渡,请切换至对应的 Veo 3.1 Lite Official Image-to-Video 页面。