One continuous five-second documentary portrait of the same adult ramen cook in the small late-night kitchen. With one hand at each end of a short bundle of pale fresh noodle strands, he gently lifts and gives the suspended middle one small downward bounce, loosening the strands without releasing them. His hands stay apart, strands remain connected between the two grips. Steam curls upward from the pot below. Preserve his face, rolled sleeves, apron and kitchen. Fixed waist-up view, warm practical light, natural restrained motion. No cuts, no additional people, no lettering.
Kling 2.1 Standard Image to Video API
kwaivgi/kling-video/v2.1/standard/image-to-videoKling 2.1 Standard Image to Video 将静态参考图片转化为流畅的 720p 动态视频,支持起始帧引导与 5 秒、10 秒可选时长。它在严格保持主体人物面部特征、服饰质感与原始构图光影的同时,模拟符合真实物理规律的肢体动作与平稳运镜。
581/5,000

示例
REST API 参考
快速上手
提交任务并查询进度。带有 example.com 或 your-domain.com 的链接为占位符,请替换为你自己的公开图片链接与回调地址。输出文件链接仅供格式参考。
第 1 步:配置认证信息
在控制台创建 API Key,并在发起提交请求时附带 Authorization: Bearer <API_KEY> 请求头。
- 提交接口
- POST
https://api.vidgo.ai/api/generate/submit - 认证请求头
- Authorization: Bearer VIDGO_API_KEY
第 2 步:提交生成任务
POST /api/generate/submit: kwaivgi/kling-video/v2.1/standard/image-to-video
REQUEST_BODY=$(cat <<'JSON'
{
"model": "kwaivgi/kling-video/v2.1/standard/image-to-video",
"input": {
"prompt": "A slow camera pan across a sunlit garden.",
"start_image_url": "https://example.com/start-frame.png",
"duration": 5
}
}
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"第 3 步:轮询获取生成结果
在状态为 not_started 或 running 时使用 task_id 轮询,到达 finished 或 failed 停止。成功时读取 data.files[].file_url,失败时读取 data.error_message。
状态查询端点
GET https://api.vidgo.ai/api/generate/status/{task_id}使用 task_id 查询进度;not_started 或 running 时继续轮询,finished 或 failed 时停止。成功后读取 data.files[].file_url,失败时读取 data.error_message。
not_startedrunningfinishedfailed{
"code": 200,
"data": {
"task_id": "task-example",
"status": "not_started",
"created_time": "2026-09-24T00:00:00Z"
}
}{
"code": 200,
"data": {
"task_id": "task-example",
"status": "finished",
"files": [
{
"file_type": "video",
"file_url": "https://example.com/output.mp4"
}
],
"created_time": "2026-09-23T00:00:00Z"
}
}完整可执行脚本
展开查看包含自动轮询、错误重试与超时保护的端到端调用脚本。
set -euo pipefail
: "${VIDGO_API_KEY:?Set VIDGO_API_KEY in your environment}"
REQUEST_BODY=$(cat <<'JSON'
{
"model": "kwaivgi/kling-video/v2.1/standard/image-to-video",
"input": {
"prompt": "A slow camera pan across a sunlit garden.",
"start_image_url": "https://example.com/start-frame.png",
"duration": 5
}
}
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
done请求参数(input 对象)
生成参数置于 input 中,model 和可选的 callback_url 置于请求顶层。使用标准 JSON 类型;传入不支持的 input 字段将被拒绝。
| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| prompt | string | 是 | - | 必填非空字符串,去除首尾空白后最多 5,000 个 Unicode 字符。 |
| start_image_url | string | 是 | - | 必填首帧图片的公开 HTTP(S) URL,须包含主机名且不能包含凭据或空白。 |
| duration | integer | 否 | 5 | 仅支持整数值 5 或 10,省略时默认为 5 秒。不接受字符串、布尔值、小数时长或 null。 |
| negative_prompt | string | 否 | - | 可选字符串,描述希望避免的内容。 |
响应字段(查询状态)
GET /api/generate/status/{task_id} 返回的具体内容:
| 字段 | 类型 | 说明 |
|---|---|---|
| code | integer | HTTP/业务响应状态码(200 表示成功)。 |
| data.task_id | string | 全局唯一的任务标识。 |
| data.status | string | 任务生命周期状态:not_started、running、finished 或 failed。 |
| data.files | array | 生成完成时输出的资产数组,包含 file_url 和 file_type。 |
| data.error_message | string | null | 当任务状态为 failed 时的错误诊断信息。 |
任务生命周期
客户端应持续轮询状态,直到到达 finished 或 failed 终态:
not_started排队中
running生成中
finished已就绪
failed失败
轮询与错误处理
- 轮询频率建议初始以 2 到 3 秒间隔轮询,对于长时长任务可逐渐退避至 5 秒。
- 网络容错偶发 5xx 响应或超时不代表任务失败,短暂退避后重试查询即可。
- Webhook 回调在提交载荷顶层传入 callback_url,可在任务完成时自动接收结果通知。
规格说明
| 规格项 | 取值 | 说明 |
|---|---|---|
| 模型 | kwaivgi/kling-video/v2.1/standard/image-to-video | |
| 时长 | 5 / 10 秒 | 仅支持整数值 5 或 10,省略时默认为 5 秒。不接受字符串、布尔值、小数时长或 null。 |
Kling 2.1 Standard Image to Video
Kling 2.1 Standard Image to Video 是快手(Kwaivgi)研发的高效图像生成视频模型。端点面向自动化内容生产流水线、数字广告营销与社媒创意生成打造,能够根据文本提示词与传入的起始图像,平滑生成高质量 720p 动态视频。核心基于 start_image_url 单图首帧驱动,在严格保留源图人物身份相貌、场景空间关系与光影质感的基础上,注入真实细腻的物理运动与摄影机运镜动态。提供 5 秒与 10 秒两种时长选项,单次生成 30 积分($0.150)起,兼顾出色的运动表现力与极具竞争力的商业落地成本。
为什么选择此模型
720p 流畅物理运动模拟输出动作连贯平滑的 720p 高清成片,人物步态、微表情、发丝飘动与织物垂坠符合自然物理规律。
首帧主体与光影一致性深度锁定起始图像的面部五官、服装配饰与环境光影构图,避免长动态过程中的形象崩坏与特征漂移。
5 秒与 10 秒灵活时长支持整数配置 5 秒短片或 10 秒叙事镜头,满足快节奏短视频与完整情节段落的不同镜头节奏需求。
精细提示词与反向过滤控制支持多达 5,000 字符的详尽场景动态指引,并提供 negative_prompt 排除画面噪点与不自然运镜抖动。
单次 30 积分起的高性价比5 秒仅需 30 积分($0.150),10 秒仅需 60 积分($0.300),生成失败积分自动全额返还,大幅降低批量创作成本。
参数
| 参数 | 要求 | 说明 |
|---|---|---|
| prompt | 是 | 必填非空字符串,去除首尾空白后最多 5,000 个 Unicode 字符。 默认值 - |
| start_image_url | 是 | 必填首帧图片的公开 HTTP(S) URL,须包含主机名且不能包含凭据或空白。 默认值 - |
| duration | 否 | 仅支持整数值 5 或 10,省略时默认为 5 秒。不接受字符串、布尔值、小数时长或 null。 默认值 5 |
| negative_prompt | 否 | 可选字符串,描述希望避免的内容。 默认值 - |
使用步骤
上传起始关键帧通过本地文件上传或在 start_image_url 传入公网可访问的图片 URL,作为视频生成的起始画面。
编写动作与运镜提示词在 prompt 中详细描述希望主体发生的肢体动作、表情变化以及推拉摇移等镜头运动轨迹。
配置可选负向提示词在 negative_prompt 中列出希望规避的瑕疵,如畸变、模糊、突然跳跃或画面噪点。
选择目标生成时长根据视频叙事需求选择 5 秒(短动态)或 10 秒(长镜头),省略时系统默认采用 5 秒规格。
提交任务并获取成品视频点击运行提交任务获取 task_id,通过异步轮询或 Webhook 接收完成通知并下载 MP4 视频。
计费说明
按生成的视频计费。1 积分 = $0.005。
| 计费项 | 费率 | 说明 |
|---|---|---|
| Standard · 5 秒 | 30 积分/个 | $0.150/个 |
| Standard · 10 秒 | 60 积分/个 | $0.300/个 |
最佳应用场景
社交媒体短视频与动态配图将静态摄影作品、海报插画或壁纸快速转化为吸引眼球的动态短视频,适配各主流短视频平台。
电商商品静态图动态化展示为服装、首饰、数码产品等商品展示图赋予轻量旋转、光影流动或模特动态展示,提升商品转化率。
故事板与分镜概念快速验证在影视动画前期筹备中,快速把分镜草图或概念设计图动起来,高效评估动态构图与运镜节奏。
虚拟角色与人像动态生成赋予 2D 插画、AI 生成人像及数字角色生动的微表情与肢体动作,保持面容稳定不形变。
专业技巧
- 提示词侧重动作描述而非外貌复述:因为起始图像已经确定了人物长相与场景风格,提示词应重点指导增量动作、相机视角与环境氛围变化。
- 使用主体清晰的高清输入素材:优先选用曝光正常、主体与背景边界分明且无强压缩噪点的高清图片,有助于生成更纯净的 720p 视频。
- 善用负向提示词抑制异常伪影:填入'画面畸变、肢体形变、模糊、镜头剧烈抖动'等词汇,有效引导模型收敛到更稳定的运动轨迹。
- 先用 5 秒验证运动趋势:在大规模生产或生成 10 秒长视频前,先用 5 秒规格快速测试提示词的运动表现,节省积分与时间。
- 运用专业摄影动词指导镜头:使用'缓慢推进'、'平滑向右横摇'、'特写镜头'等专业运镜术语,可获得更符合导演意图的镜头语言。
注意事项
- Standard 模式不支持尾帧:该端点仅支持 start_image_url 单帧输入,不接受 end_image_url;如需首尾帧过渡,请选择 Pro 图生视频端点。
- 严格整数时长校验规则:duration 字段仅允许传入整数 5 或 10,传入小数、字符串或 null 会被服务端校验拦截。
- 异步任务处理与失败自动返还:接口采用异步任务机制,提交时扣除对应积分;若任务因系统异常失败,消耗的积分将自动全额退还。
Kling 2.1 Standard Image to Video API 常见问题
Kling 2.1 Standard Image to Video API 是什么?
Kling 2.1 Standard Image to Video 是快手(Kwaivgi)用于图像生成视频的模型。它根据静态起始图像与文本提示词生成 5 秒或 10 秒的高流畅度 720p 动态视频,支持细腻的动作演进与运镜控制。基于先进的时空生成扩散架构,它在严格保持输入图片的主体身份、服装纹理与光影构图的同时,模拟逼真自然的物理动态。你可以通过 API 进行程序化调用,也可以在上方体验区直接在线试用。
Kling 2.1 Standard Image to Video 生成的分辨率是多少?
Kling 2.1 Standard Image to Video 原生输出 720p 高清视频。生成的视频会保持输入起始图片的原始画幅比例与构图关系,无论是 16:9 横屏还是 9:16 竖屏均能自然适配。
Kling 2.1 Standard Image to Video 支持尾帧控制吗?
Kling 2.1 Standard Image to Video 仅接受 start_image_url 首帧图片,不支持 end_image_url 尾帧。如果你需要同时指定起始画面和结束画面并生成两者间的平滑过渡,请选用 Kling 2.1 Pro Image to Video 端点。
Kling 2.1 Standard Image to Video 支持哪些生成时长?
模型支持生成 5 秒或 10 秒的视频,调用时通过 duration 参数传入数值 5 或 10。如果请求中省略该字段,系统默认按照 5 秒规格进行生成。不支持小数或字符串时长。
Kling 2.1 Standard Image to Video 的计费规则是什么?
费用按单次视频生成计费:5 秒视频扣除 30 积分($0.150),10 秒视频扣除 60 积分($0.300)。积分在任务提交时预扣,若任务因系统原因生成失败,所扣积分将全额自动返还。
Kling 2.1 Standard Image to Video 支持哪些图片格式?
在线体验区支持上传不超过 10 MiB 的 JPG、PNG 与 WebP 图片。通过 REST API 直接调用时,须在 start_image_url 提供公网可直接访问的 HTTP(S) 图片链接,且链接不能包含认证凭据或空格。
Kling 2.1 Standard Image to Video 的负向提示词如何发挥作用?
通过可选的 negative_prompt 参数,你可以显式声明希望在视频中规避的内容,例如肢体形变、面部扭曲、画面模糊、突然抽搐或噪点瑕疵,从而提高画面的纯净度与运动平稳性。
Kling 2.1 Standard 与 Kling 2.1 Pro 的主要区别是什么?
Standard 专注于 720p 高性价比单首帧动态生成,5 秒仅需 30 积分,10 秒 60 积分;Pro 端点升级为原生 1080p 全高清画质,并独家支持通过 end_image_url 实现首尾双关键帧控制,5 秒需 55 积分,10 秒 110 积分。