HappyHorse 接口格式 参考生视频
视频接口用于根据参考图生成视频,可将人物或物体作为主角,根据提示词生成自然生动的表演视频。
| 项目 | 说明 |
|---|---|
| 请求方法 | POST |
| 接口地址 | https://api.taiha.cn/v1/video/generations |
| 鉴权 | 请求头 Authorization: Bearer |
| Model ID | 在模型广场对应模型详情中查看 |
参考生视频模型
参考生视频模型接受多模态输入(文本/图像/音频/视频),可将人物或物体作为主角,根据提示词生成自然生动的表演视频。
- 基础设置:支持整数级视频时长(2~15 秒)、指定视频分辨率(720P/1080P)、智能改写prompt、添加水印。
- 音频能力:支持自动配音或上传音频,实现声画同步。
- 多镜头叙事:可生成包含多个镜头的视频,镜头切换时保持主体一致。
模型能力
单图参考(多宫格图)
支持模型:wan2.7系列模型。
功能介绍:输入一张多宫格图(故事板),模型自动识别多宫格布局,生成角色、场景和镜头一致的视频。建议单次仅传入一张多宫格图。
参数设置:
media.type:设置为reference_image(参考图像)。media.url:多宫格图像的 URL 或 base64 编码字符串。prompt:当参考素材有且仅有一张图片或一个视频,则可表述为“参考图片”或“参考视频”。
输入提示词:参考图片 ,3D卡通冒险电影风,角色Q版但材质细腻,动作流畅,色彩鲜明,保持角色与森林场景一致,不要加入文字。氛围: 冒险、轻快、神秘、童趣。角色: 小男孩探险家:圆帽、背包、短斗篷。小伙伴:会飞的小机器人,圆形身体,蓝色发光眼。场景: 奇幻森林,巨大树根、蘑菇、藤蔓、藏宝洞口、阳光光束。分镜脚本: 1. 全景:奇幻森林里高大树木与光束交错,环境神秘明亮。 2. 中景:小男孩拨开藤蔓向前探路。 3. 中景:小机器人飞在他身边,用蓝光扫描前方。 4. 特写:一张旧藏宝图在男孩手里展开。 5. 近景:他露出兴奋表情,眼睛亮起来。 6. 动作镜头:两人跳过树根和小溪,继续深入森林。 7. 中景:藤蔓后方露出一个被苔藓覆盖的宝箱。 8. 特写:宝箱边缘闪出金色光芒。 9. 收束镜头:男孩和小机器人站在宝箱前惊喜对望,冒险感拉满。
多主体参考+音色定制
支持模型:wan2.7系列模型。
功能介绍:支持传入多个参考图像和参考视频作为主体素材,并可为每个主体独立指定音色,实现多角色同框互动与音色区分。
参数设置:
media:参考素材数组。media.type:支持reference_image(参考图像)和reference_video(参考视频)。参考图像 + 参考视频 ≤ 5。media.url:素材的 URL;图像还支持 base64 编码字符串。media.reference_voice(可选):为主体指定音色的音频 URL,推荐与reference_image或reference_video搭配使用。
音频生效逻辑:若 reference_video 本身包含音频且未指定 reference_voice,默认使用视频原声;若同时传入,reference_voice 将覆盖视频原声。
prompt:在提示词中指代参考素材,规则如下:- 使用“图1、图2”指代
reference_image素材,使用“视频1、视频2”指代reference_video素材,英文提示词则写为“Image 1”、"Video 1”这类标识。 - 按照
media数组定义参考素材的引用顺序,图和视频分别计数。
输入提示词:视频1抱着图2,在图3的椅子上弹奏一支舒缓的乡村民谣,并说道:"今天的阳光真好。"图1手中拿着一束向日葵,路过视频1,把手中的花放到视频1旁边的桌子上,并说道:"真好听,能不能再唱一遍"。
多主体参考+首帧控制
支持模型:wan2.7系列模型。
功能介绍:在主体参考基础上加入首帧控制,让画面构图和内容走向更加可控。
参数设置:
media:参考素材数组。media.type:支持first_frame、reference_image(参考图像)和reference_video(参考视频)。 首帧图像最多1张,参考图像和参考视频至少传入1个,参考图像 + 参考视频 ≤ 5。media.url:素材的 URL;图像还支持 base64 编码字符串。prompt:在提示词中指代参考素材,规则如下:- 使用“图1、图2”指代
reference_image素材,使用“视频1、视频2”指代reference_video素材,英文提示词则写为“Image 1”、"Video 1”这类标识。 - 按照
media数组定义参考素材的引用顺序,图和视频分别计数。 - 首帧无需在提示词中引用。
输入提示词:俯拍在一个蓝色的星球上,镜头逐渐推进到星球上面给到图1特写,他拿着图2,一边吃着图2,一边说:“怎么没人找我来玩呀?”
如何输入素材:
- 素材数量:1张首帧图像,1个参考音色,或5个视频。
- 输入方式:素材URL、Base64 编码字符串。
- 方式一:素材URL,支持 HTTP 或 HTTPS 协议。示例:https://xxxx/xxx.png。
- 方式二:Base64 编码,仅为图像输入可选,示例:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABDg......(示例已截断,仅做演示)。
实现声画同步
支持模型:wan2.6-i2v-flash、wan2.2系列模型、wanx2.1系列模型。
功能介绍:适用于无需音频的纯视觉展示场景,如动态海报、无声短视频等。
参数设置:
wan2.6-i2v-flash:默认生成有声视频。若需生成无声视频,必须显式设置audio=false。即使传入audio_url,只要audio=false,输出仍为无声视频,并按无声视频计费。wan2.2及以下版本模型:默认生成无声视频,无需额外配置。
请求示例
POST /v1/video/generations
- cURL
- Python
curl -X POST 'https://api.taiha.cn/v1/video/generations' \
-H 'Authorization: Bearer <API Key>' \
-H 'Content-Type: application/json' \
-d '{
"model": "<Model ID>",
"input" : {
"prompt": "视频1抱着图3,在图4的椅子上弹奏一支舒缓的乡村民谣,并说道:“今天的阳光真好。”图1手中拿着图2,路过视频1,把手中的图2放到视频1旁边的桌子上,并说道:“真好听,能不能再唱一遍”。 ",
"media": [
{
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"
"reference_voice": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/gbqewz/wan-r2v-girl-voice.mp3"
}, {
"type": "reference_video",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"
"reference_voice": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/isllrq/wan-r2v-boy-voice.mp3"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"
}
]
},
"parameters": {
"resolution": "720P",
"ratio": "16:9",
"prompt_extend": true,
"watermark": true,
"duration": 15
}
}'
import requests
url = "https://api.taiha.cn/v1/video/generations"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer <API Key>",
}
payload = {
"model": "<Model ID>",
"input" : {
"prompt": "视频1抱着图3,在图4的椅子上弹奏一支舒缓的乡村民谣,并说道:“今天的阳光真好。”图1手中拿着图2,路过视频1,把手中的图2放到视频1旁边的桌子上,并说道:“真好听,能不能再唱一遍”。",
"media": [
{
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"
"reference_voice": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/gbqewz/wan-r2v-girl-voice.mp3"
}, {
"type": "reference_video",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"
"reference_voice": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/isllrq/wan-r2v-boy-voice.mp3"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"
}, {
"type": "reference_image",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"
}
]
},
"parameters": {
"resolution": "720P",
"ratio": "16:9",
"prompt_extend": true,
"watermark": true,
"duration": 15
}
response = requests.post(url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
result = response.json()
print(result)
}
请求后并不会立即返回生成内容,耗时取决于prompt复杂程度及分辨率等要求,通常需要100秒左右。您可以通过任务查询接口获取生成进度及结果。
参数说明
model string 必填 | 模型ID
string 必填 | 模型ID- 模型ID,请按照模型广场中模型所示名称填写,区分大小写。
- 您也可以通过请求端点models来获得所有可请求的模型列表。
input array 必填 | 输入内容
array 必填 | 输入内容prompt string 必填 | 提示词
string 必填 | 提示词描述需要生成的视频内容具体要求
media array 可选 | 输入素材
array 可选 | 输入素材可根据以下格式,输入模型在创作时的参考素材 type url 可输入公网URL,当素材为图像类型时,也可选择进行Base64编码 reference_voice 主体指定音色的音频 URL,推荐与 string 必填 | 素材类型
reference_image :视频参考图像reference_video :视频参考视频string 必填 | 素材URLstring 必填 | 音频素材URLreference_image 或 reference_video 搭配使用。
parameters array 必填 | 生成要求
array 必填 | 生成要求resolution string 可选 | 分辨率
string 可选 | 分辨率可要求视频的分辨率,如:480P/720P/1080P,模型支持的分辨率可查看具体文档
ratio string 可选 | 画面比例
string 可选 | 画面比例可要求视频的画面比例,如:16:9,模型支持的比例可查看具体文档
prompt_extend boolean 可选 | 提示词优化
boolean 可选 | 提示词优化默认不开启,开启后模型会先对提示词进行优化,该操作会增加生成时长月3-5秒,对于提示词比较具体的请求不建议开启
watermark boolean 可选 | 水印
boolean 可选 | 水印默认开启,开启后生成的视频会出现AI生成的提示水印
duration integer 必填 | 视频时长
integer 必填 | 视频时长控制视频生成的时长,以秒为单位,模型支持的最大生成时长可查看具体文档
shot_type string 选填 | 镜头
string 选填 | 镜头通过multi可控制生成多镜头视频,注意官方不推荐使用该参数,如需控制多镜头,可在提示词中描述“生成单镜头视频”
返回格式
{
"id" : "task_YvS3Wuau3aYnhJZYcaFwNlLd8NqkUIeo",
"task_id" : "task_YvS3Wuau3aYnhJZYcaFwNlLd8NqkUIeo",
"object" : "video",
"model" : "happyhorse-1.1-r2v",
"status" : "queued",
"progress" : 0,
"created_at" : 1785161936
}
查询结果
步骤1:创建任务获取任务ID
通过接口返回参数中的task_id获得任务ID进行查询
步骤2:根据任务ID获取结果
将TASK_ID完整替换为上一步接口返回的task_id的值。task_id查询有效期为24小时。
curl -X GET "https://token.taiha.cn/v1/video/generations/<TASK_ID>"
-H "Authorization: Bearer <Model ID>"
输出示例
{
"code": "success",
"message": "",
"data": {
"id": 20,
"created_at": 1785161936,
"updated_at": 1785162042,
"task_id": "task_YvS3Wuau3aYnhJZYcaFwNlLd8NqkUIeo",
"action": "generate",
"status": "SUCCESS",
"fail_reason": "",
"result_url": "https://dashscope-a717.oss-accelerate.aliyuncs.com/1d/91/20260727/8fe28795/50976025-metadata_video_720p_4e200a08-0440-419b-93cf-a32e4957e6c4_refiner_watermark.mp4?Expires=1785248437\u0026OSSAccessKeyId=LTAI5tPxpiCM2hjmWrFXrym1\u0026Signature=v0IwJwMFMkhO%2FHqQ2koqhrGcnPI%3D",
"submit_time": 1785161936,
"start_time": 1785161946,
"finish_time": 1785162042,
"progress": "100%",
"properties": {
"input": "",
"upstream_model_name": "happyhorse-1.1-r2v",
"origin_model_name": "happyhorse-1.1-r2v"
},
"data": {
"usage": {
"SR": 720,
"duration": 5,
"video_count": 1,
"input_video_duration": 0,
"output_video_duration": 5
},
"output": {
"task_id": "4e200a08-0440-419b-93cf-a32e4957e6c4",
"end_time": "2026-07-27 22:20:39.186",
"video_url": "https://dashscope-a717.oss-accelerate.aliyuncs.com/1d/91/20260727/8fe28795/50976025-metadata_video_720p_4e200a08-0440-419b-93cf-a32e4957e6c4_refiner_watermark.mp4?Expires=1785248437\u0026OSSAccessKeyId=LTAI5tPxpiCM2hjmWrFXrym1\u0026Signature=v0IwJwMFMkhO%2FHqQ2koqhrGcnPI%3D",
"orig_prompt": "第1个镜头 大远景开篇,镜头从接近地面的低机位开始向前移动,镜头沿草原方向推进,同时向上移动,将视角从贴地逐渐抬升至略高位置,使猎豹从左侧进入画面并与前方逃窜的羚羊共同处于同一追逐路径中,建立清晰的前后空间关系。 第2个镜头 向下移动回到接近地面高度,并沿猎豹运动方向向右移动,与其保持侧向平行关系进行稳定跟随,主体始终处于画面中部偏左位置,背景产生连续横向位移效果,在这一阶段镜头运动保持稳定一段时间以强化速度感与空间连续性。 第3个镜头 在维持向右移动的同时,沿猎豹运动路径内侧做小幅弧线移动,使画面产生轻微绕行变化但始终保持与主体同向。 第4个镜头 逐渐减缓横向移动速度并过渡为机位相对稳定,同时执行变焦推进,将视觉焦点逐步压缩至猎豹与羚羊之间不断缩短的距离上。 第5个镜头 再次向前移动并轻微向下移动,贴近地面逼近两者之间的空间,在猎豹前肢逼近羚羊后方的临界位置停住,形成强烈压迫感与张力,同时配合逐渐增强的交响配乐、持续加密的鼓点、风声与踏地声推进节奏,并在最后阶段压低音乐仅保留环境声与节奏声形成短暂停顿。",
"submit_time": "2026-07-27 22:18:55.984",
"task_status": "SUCCEEDED",
"scheduled_time": "2026-07-27 22:18:56.042"
},
"request_id": "5a336216-5807-95cd-b3e8-9ad2ee4de335"
}
}
}
任务状态
queued: 排队中in_progress: 生成中completed: 已完成failed: 失败
模型能力
| 模型ID | 适用场景 | 最大分辨率 | 最大时长 |
|---|---|---|---|
happyhorse-1.1-t2v | 文生视频 | 720P, 1080P | 3-15秒 |
wan2.7-t2v-2026-06-12 | 文生视频,自定义音频文件 | 720P, 1080P | 2-15秒 |
happyhorse-1.1-i2v | 首帧生视频 | 720P, 1080P | 3-15秒 |
wan2.7-i2v-2026-04-25 | 首帧生视频、首尾帧生视频、视频续写 | 720P, 1080P | 2-15秒 |
happyhorse-1.1-r2v | 参考图像生视频 | 720P, 1080P | 3-15秒 |
wan2.7-r2v-2026-06-12 | 参考图像和视频生视频 | 720P, 1080P | 2-10秒 |
happyhorse-1.0-video-edit | 视频编辑 | 720P, 1080P | 3-15秒 |
wan2.7-videoedit | 视频编辑、特效复刻、运镜复刻 | 720P, 1080P | 2-10秒 |
wan2.2-animate-move | 动作迁移到静态人物 | 720P | 2-30秒 |
wan2.2-animate-mix | 视频中替换人物 | 720P | 2-30秒 |