Wan2.7 图生视频
- WAN2.7 (wan2.7-image-to-video) 模型支持图生视频模式,支持多模态输入(图像/音频/视频)
- 通过
generation_mode参数选择三种生成模式:first_frame:首帧生视频——基于首帧图像生成视频,可选驱动音频first_last_frame:首尾帧生视频——基于首帧+尾帧两张图像插值生成视频,可选驱动音频video_continuation:视频续写——基于一段视频片段续写后续内容,可选尾帧图(不支持驱动音频)
generation_mode为可选参数(向后兼容),未传时将根据请求中的素材类型自动选择合适的模式- 合法素材组合(非法组合将报错):
image_start(首帧)image_start+audio_urls(首帧 + 驱动音频)image_start+image_end(首尾帧)image_start+image_end+audio_urls(首尾帧 + 驱动音频)video_urls(视频续写)video_urls+image_end(视频续写 + 尾帧)
- 异步处理模式,使用返回的任务ID 进行查询
- 生成的视频链接,有效期为24小时,请尽快保存
授权
##所有接口均需要使用Bearer Token进行认证##
获取 API Key :
访问 API Key 管理页面 获取您的 API Key
使用时在请求头中添加:
Authorization: Bearer YOUR_API_KEY请求体
模型名称,固定为 wan2.7-image-to-video
wan2.7-image-to-video "wan2.7-image-to-video"
生成模式,决定素材组合的合法性。推荐显式指定
取值说明:
first_frame:首帧生视频。必传image_start;可选audio_urls;不接受image_end与video_urlsfirst_last_frame:首尾帧生视频。必传image_start+image_end;可选audio_urls;不接受video_urlsvideo_continuation:视频续写。必传video_urls[0];可选image_end(作为尾帧);不接受image_start与audio_urls
未传时的兼容行为: 未传 generation_mode 时,将根据请求中的素材类型自动选择合适的模式;建议显式指定以避免歧义
first_frame, first_last_frame, video_continuation "first_frame"
视频生成的文本提示词。支持中英文,每个汉字/字母占 1 个字符,超过部分会自动截断。最大长度 5000 字符
5000"一只猫在弹钢琴"
负面提示词,描述不希望在视频画面中出现的内容。支持中英文,最大长度 500 字符,超过部分会自动截断
500"模糊, 低质量"
首帧图片 URL
模式约束:
first_frame模式:必传first_last_frame模式:必传video_continuation模式:禁止传入
图像限制:
- 格式:JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP
- 分辨率:宽和高的范围为
[240, 8000]像素 - 宽高比:1:8 ~ 8:1
- 文件大小:不超过
20MB
"https://example.com/first_frame.jpg"
尾帧图片 URL
模式约束:
first_last_frame模式:必传video_continuation模式:可选(作为视频续写的目标尾帧)first_frame模式:禁止传入(如需首尾帧,请使用first_last_frame)
图像限制:
- 格式:JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP
- 分辨率:宽和高的范围为
[240, 8000]像素 - 宽高比:1:8 ~ 8:1
- 文件大小:不超过
20MB
"https://example.com/last_frame.jpg"
视频续写 URL 数组,仅支持 1 个元素
模式约束:
video_continuation模式:必传first_frame/first_last_frame模式:禁止传入- 不能与
audio_urls同时使用
视频限制:
- 格式:mp4、mov
- 时长:
2 ~ 10秒(输入片段本身长度) - 分辨率:宽和高的范围为
[240, 4096]像素 - 宽高比:1:8 ~ 8:1
- 文件大小:不超过
100MB
续写时长规则:
duration参数表示最终输出视频的总时长(包含原始输入片段 + 模型续写部分)- 模型续写的部分 =
duration− 输入视频时长 duration必须 ≥ 输入视频时长- 计费按最终输出视频总时长(即
duration)结算
示例:
| 输入视频时长 | duration | 续写生成 | 最终输出 | 计费时长 |
|---|---|---|---|---|
| 3 秒 | 15 | 12 秒 | 15 秒 | 15 秒 |
| 5 秒 | 10 | 5 秒 | 10 秒 | 10 秒 |
| 8 秒 | 8 | 0 秒(仅原片输出) | 8 秒 | 8 秒 |
["https://example.com/clip.mp4"]驱动音频文件 URL 数组。当前仅支持 1 个元素。模型将以该音频为驱动源生成视频(如口型同步、动作卡点等)
模式约束:
first_frame模式:可选first_last_frame模式:可选video_continuation模式:禁止传入(不能与video_urls同时使用)
格式要求:
- 支持格式:
wav、mp3 - 时长范围:
2 ~ 30秒 - 文件大小:不超过
15MB
截断处理:
- 若音频长度超过
duration值,自动截取前 N 秒,其余部分丢弃 - 若音频长度不足视频时长,超出音频长度部分为无声视频。例如:音频为 3 秒、视频时长为 5 秒,输出视频前 3 秒有声、后 2 秒无声
1 element["https://example.com/audio.mp3"]视频清晰度,默认为720p
说明:
720p: 标准清晰度,标准价格,此为默认值1080p: 高清晰度,价格会提升
720p, 1080p "720p"
视频时长(秒),整数,范围 2 ~ 15,默认 5
含义说明:
first_frame/first_last_frame模式:表示生成视频的总时长video_continuation模式:表示最终输出视频的总时长(= 原始输入片段 + 模型续写部分)
video_continuation 模式额外约束:
duration必须 ≥ 输入视频时长(否则报错)- 续写生成的时长 =
duration− 输入视频时长 - 当
duration= 输入视频时长时,不进行续写,仅原样输出输入片段 - 详见
video_urls字段中的续写时长规则与示例
计费说明: 实际扣费以生成视频的秒数为准
2 <= x <= 155
随机种子,默认随机
说明:
- 取值范围:
1~2147483647 - 固定 seed 可在调试 prompt 时降低参数变化的干扰,提升结果可复现性
1 <= x <= 214748364742
是否开启prompt智能改写,开启后将使用大模型优化正向提示词,对描述性不足、较为简单的prompt提升效果较明显。
注意: 默认值为 false,不传或传 false 时不会触发改写,如需开启请显式传 true
false
任务完成后的HTTPS回调地址
回调时机:
- 任务完成(completed)、失败(failed)或取消(cancelled)时触发
- 在计费确认完成后发送
安全限制:
- 仅支持HTTPS协议
- 禁止回调到内网IP地址(127.0.0.1、10.x.x.x、172.16-31.x.x、192.168.x.x等)
- URL长度不超过
2048字符
回调机制:
- 超时时间:
10秒 - 失败后最多重试
3次(会分别在失败的1秒/2秒/4秒后进行重试) - 回调响应体格式与任务查询接口返回的格式一致
- 回调地址若返回2xx状态码视为成功,其他状态码会触发重试
"https://your-domain.com/webhooks/video-task-completed"
响应
视频任务创建成功
任务创建时间戳
1757169743
任务ID
"task-unified-1757169743-7cvnl5zw"
实际使用的模型名称
"wan2.7-image-to-video"
任务的具体类型
video.generation.task 任务进度百分比 (0-100)
0 <= x <= 1000
任务状态
pending, processing, completed, failed "pending"
视频任务详细信息
任务的输出类型
text, image, audio, video "video"
使用量和计费信息