视频编辑#
对已有视频按文本指令进行编辑(wan2.7-videoedit),支持两类用法:| 能力 | media 组成 | 说明 |
|---|
| 纯指令编辑 | 仅 1 个 video | 通过指令修改视频内容:添加/删除/修改元素、改色、修改环境或背景、转换视频风格、修改角色行为/台词/拍摄方式等 |
| 指令 + 参考图编辑 | 1 个 video + 最多 4 张 reference_image | 将参考图中的元素(服饰、道具等)应用到视频中,或复刻动作/运镜/特效 |
任务为异步调用:创建任务返回 output.task_id,再通过查询接口获取结果,生成耗时通常 1–5 分钟。创建任务#
POST https://platform.shuyanai.com/ali/api/v1/services/aigc/video-generation/video-synthesis
请求头#
| 参数 | 类型 | 必填 | 说明 |
|---|
Content-Type | string | 是 | application/json |
Authorization | string | 是 | Bearer sk-xxx |
官方要求的 X-DashScope-Async: enable 头由平台自动补充,无需携带。请求示例#
请求体#
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|
model | string | 是 | | 固定为 wan2.7-videoedit |
input | object | 是 | | 输入信息 |
input.prompt | string | 否 | | 编辑指令,描述期望的元素与视觉特点。中英文均可,不超过 5000 字符,超长自动截断 |
input.negative_prompt | string | 否 | | 反向提示词,描述不希望出现的内容。不超过 500 字符,超长自动截断 |
input.media | array | 是 | | 媒体素材列表,元素为 {type, url} 对象。video 有且仅有 1 个;reference_image 最多 4 张 |
input.media[].type | string | 是 | | video:待编辑视频(必传)
reference_image:参考图像(可选) |
input.media[].url | string | 是 | | 素材地址。视频仅支持公网 URL(HTTP/HTTPS);图像支持公网 URL 或 Base64(data:{MIME_type};base64,{base64_data},支持 JPEG/PNG/BMP/WEBP) |
parameters | object | 否 | | 视频处理参数 |
parameters.duration | integer | 否 | 0 | 输出视频时长(秒)。默认 0 表示继承输入视频时长,不截断;需截断时传 [2, 10] 的整数,从原视频 0 秒起截取 |
parameters.resolution | string | 否 | 1080P | 输出分辨率档位:720P、1080P |
parameters.ratio | string | 否 | 按输入视频近似比例 | 输出宽高比:16:9、9:16、1:1、4:3、3:4;不传则按输入视频的近似比例输出 |
parameters.audio_setting | string | 否 | auto | 声音设置。auto:模型按 prompt 判断(指令涉及声音时可能重新生成音频,否则可能保留原声);origin:保留输入视频原声 |
parameters.prompt_extend | boolean | 否 | true | 是否开启提示词智能改写。对较短的 prompt 提升明显,但会增加耗时 |
parameters.watermark | boolean | 否 | false | 是否在视频右下角添加「AI生成」水印 |
parameters.seed | integer | 否 | 随机 | 随机种子,范围 [0, 2147483647]。固定 seed 可提升复现性,但不保证结果完全一致 |
parameters.duration 默认为 0,表示输出时长继承输入视频时长。实际时长在任务完成后才能确定,以查询结果中的 usage 字段为准。
resolution × ratio 输出分辨率#
| 档位 | 16:9 | 9:16 | 1:1 | 4:3 | 3:4 |
|---|
| 720P | 1280×720 | 720×1280 | 960×960 | 1104×832 | 832×1104 |
| 1080P | 1920×1080 | 1080×1920 | 1440×1440 | 1648×1248 | 1248×1648 |
输入素材要求#
| 项 | 待编辑视频(type=video) | 参考图像(type=reference_image) |
|---|
| 数量 | 有且仅有 1 个(必传) | 最多 4 张(可选) |
| 格式 | MP4、MOV | JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP |
| 时长 | 2–10 秒 | — |
| 分辨率 | 宽、高均在 [240, 4096] 像素 | 宽、高均在 [240, 8000] 像素 |
| 宽高比 | 1:8 ~ 8:1 | 1:8 ~ 8:1 |
| 文件大小 | 不超过 100 MB | 不超过 20 MB |
| 输入方式 | 公网 URL(HTTP/HTTPS),不支持 Base64 | 公网 URL 或 Base64 |
响应示例#
{
"output": {
"task_status": "PENDING",
"task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
},
"request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}
| 字段 | 类型 | 说明 |
|---|
output.task_id | string | 任务 ID,用于查询,有效期 24 小时 |
output.task_status | string | 任务状态,创建成功时为 PENDING |
request_id | string | 请求唯一标识,用于问题排查 |
code / message | string | 仅创建失败时返回错误码与详情 |
计费说明#
任务成功后,查询结果 usage 中的字段为计费依据,单价以模型广场为准:usage.duration:计费时长(秒)= 输入视频时长 + 输出视频时长(input_video_duration + output_video_duration);
usage.SR:输出视频分辨率档位(如 720、1080),与时长共同决定费用。
查询任务#
用创建任务返回的 task_id 轮询任务状态,成功后从 output.video_url 获取视频(有效期 24 小时):GET https://platform.shuyanai.com/ali/api/v1/tasks/{task_id}