关于 aliyun-wan-animate-move
通过 DashScope 的异步 API 将参考视频中的动作和表情迁移到人物图像,生成视频。适用于需要以静态人物图像制作动作动画的创作流程。
主要功能
- 01将参考视频动作迁移到人物图像
- 02支持 wan-std 和 wan-pro 模式
- 03异步提交任务并轮询状态
- 04获取生成视频链接
适用场景
- 01为人物图像制作动作动画
- 02将参考视频中的表情迁移到角色
- 03选择标准或专业模式生成视频
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ cinience/ alicloud-skills --skill aliyun-wan-animate-move安装后在 Claude Code 中输入/aliyun-wan-animate-move确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api_reference.mdsources.mdscripts/generate_animate_move.py详细介绍
Wan 2.2 Animate Move(图像转动作)
验证
mkdir -p output/aliyun-wan-animate-move
python -m py_compile skills/ai/video/aliyun-wan-animate-move/scripts/generate_animate_move.py && echo "py_compile_ok" > output/aliyun-wan-animate-move/validate.txt
通过标准:命令以 0 退出,并生成 output/aliyun-wan-animate-move/validate.txt。
输出和证据
- 将任务 ID、轮询响应和最终视频 URL 保存到
output/aliyun-wan-animate-move/。 - 至少保留一份端到端运行日志,以便排查问题。
前置条件
- 安装 SDK(建议在 venv 中安装):
python3 -m venv .venv
. .venv/bin/activate
python -m pip install requests
- 在环境中设置
DASHSCOPE_API_KEY,或将dashscope_api_key添加到~/.alibabacloud/credentials。
关键模型名称
wan2.2-animate-move-- 支持将参考视频中的动作迁移到角色图像上
功能
| 功能 | 说明 | 必需输入 |
|---|---|---|
| 动作迁移 | 将参考视频中的动作和表情迁移到角色图像上 | image_url + video_url |
服务模式
| 模式 | 说明 |
|---|---|
wan-std | 标准模式,生成速度更快、成本效益高,适合预览和基础动画 |
wan-pro | 专业模式,动画更流畅、质量更高,但处理时间更长 |
API 端点(仅异步)
POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis
必需请求头:
Authorization: Bearer $DASHSCOPE_API_KEYContent-Type: application/jsonX-DashScope-Async: enable
新加坡端点:将 dashscope.aliyuncs.com 替换为 dashscope-intl.aliyuncs.com。
规范化接口
请求
image_url(字符串,必需)-- 角色图像的公开 HTTP/HTTPS URLvideo_url(字符串,必需)-- 参考动作视频的公开 HTTP/HTTPS URLwatermark(布尔值,可选)-- 是否添加水印(默认值:false)mode(字符串,必需)--wan-std或wan-procheck_image(布尔值,可选)-- 是否执行图像检测(默认值:true)
图像输入限制
- 格式:JPG、JPEG、PNG、BMP、WEBP
- 分辨率:每边 [200, 4096] 像素
- 宽高比:1:3 到 3:1
- 最大大小:5MB
- 内容:单人、面向镜头、面部完全可见、人物在画面中的比例适中
视频输入限制
- 格式:MP4、AVI、MOV
- 时长:2-30s
- 分辨率:每边 [200, 2048] 像素
- 宽高比:1:3 到 3:1
- 最大大小:200MB
- 内容:单人、面向镜头、面部完全可见、人物在画面中的比例适中
响应(创建任务)
output.task_id(字符串)-- 用于轮询,有效期为 24 小时output.task_status(字符串)-- PENDING | RUNNING | SUCCEEDED | FAILED | CANCELED | UNKNOWNrequest_id(字符串)
响应(任务结果)
output.video_url(字符串)-- 生成的视频 URLusage.video_count(整数)usage.video_duration(整数)-- 时长,单位为秒
快速开始(Python + HTTP)
import os
import json
import time
import requests
API_KEY = os.getenv("DASHSCOPE_API_KEY")
BASE_URL = "https://dashscope.aliyuncs.com/api/v1"
def create_animate_move_task(image_url: str, video_url: str, mode: str = "wan-std") -> str:
"""Create an animate-move task and return task_id."""
payload = {
"model": "wan2.2-animate-move",
"input": {
"image_url": image_url,
"video_url": video_url,
"watermark": False,
},
"parameters": {
"mode": mode,
},
}
resp = requests.post(
f"{BASE_URL}/services/aigc/image2video/video-synthesis",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
"X-DashScope-Async": "enable",
},
json=payload,
)
resp.raise_for_status()
data = resp.json()
return data["output"]["task_id"]
def poll_task(task_id: str, interval: int = 15) -> dict:
"""Poll until task completes. Returns final response."""
while True:
resp = requests.get(
f"{BASE_URL}/tasks/{task_id}",
headers={"Authorization": f"Bearer {API_KEY}"},
)
resp.raise_for_status()
data = resp.json()
status = data["output"]["task_status"]
if status in ("SUCCEEDED", "FAILED", "CANCELED"):
return data
time.sleep(interval)
错误处理
| 错误 | 可能原因 | 操作 |
|---|---|---|
| 401/403 | 缺少或无效的 DASHSCOPE_API_KEY | 检查环境变量或凭据文件 |
400 InvalidParameter | 不支持的图像/视频格式、尺寸不合规或缺少字段 | 验证参数 |
| "does not support synchronous calls" | 缺少 X-DashScope-Async: enable 请求头 | 添加必需请求头 |
| 429 | 速率限制或配额限制 | 退避后重试 |
输出位置
- 默认输出:
output/aliyun-wan-animate-move/videos/ - 使用
OUTPUT_DIR覆盖基础目录。
反模式
- 不要使用
wan2.2-animate-move以外的模型名称。 - 不要同步调用此 API -- 必须使用异步请求头。
- 图像或视频中不要出现多人 -- 仅限单人。
- 视频 URL 会在 24 小时后过期;请立即下载并持久化保存。
- 不要使用面部被遮挡或人物比例极端的图像。
工作流
- 确认用户意图:将参考视频中的动作迁移到角色图像上。
- 选择服务模式:
wan-std(快速/低成本)或wan-pro(高质量)。 - 准备格式和尺寸有效的图像 URL 与视频 URL。
- 创建异步任务并轮询结果。
- 在 URL 过期前下载并保存生成的视频。
参考资料
- 完整的 HTTP API 详情请参阅
references/api_reference.md。 - 来源链接请参阅
references/sources.md。
评论
支持 Markdown