HappyHorse-视频编辑API
更新时间 2026-09-06 17:31:31
最近更新时间: 2026-09-06 17:31:31
文本介绍 HappyHorse-视频编辑模型调用API。
模型简介
HappyHorse 视频编辑模型,支持输入原始视频 + 0~5 张参考图片,配合文本编辑指令完成视频风格变换、物体局部替换、画面内容修改等视频编辑能力。
支持的模型
| 模型 | 说明 |
|---|---|
| happyhorse‑1.0‑video‑edit | HappyHorse 视频编辑模型 |
调用流程
接口采用异步任务模式,分两步执行:
step1:调用创建任务接口,成功返回task_id
step2:调用查询任务接口查询对应task_id,直到task_status值为SUCCEEDED,获取生成视频url
创建任务接口详情
http调用
请求方式:POST
请求路径:https://ai.ctaigw.cn/v1/services/aigc/video-generation/video-synthesis
请求头
| 参数 | 必填 | 说明 |
|---|---|---|
| Content‑Type | 是 | 固定application/json |
| Authorization | 是 | Bearer ${YOUR_APP_KEY} |
| X‑DashScope‑Async | 是 | 必须enable |
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 是 | 模型调用名称或模型ID |
| input | object | 是 | 输入素材与编辑指令 |
| input.prompt | string | 是 | 编辑文本指令 |
| input.media | array | 是 | 媒体素材数组;必须包含 1 个 video 类型; 可选包含0~5个 reference_image 类型元素。 |
| input.media[].type | string | 是 | 素材类型:video待编辑视频;reference_image参考图 |
| input.media[].url | string | 是 | 媒体素材的URL地址。 |
| parameters | object | 否 | 生成参数 |
| parameters.resolution | string | 否 | 输出分辨率档位:1080P(默认)、720P |
| parameters.watermark | boolean | 否 | 是否添加水印标识,水印位于视频右下角,文案固定为“AI生成”。 - false:默认值,不添加水印。 - true:添加水印。 |
| parameters.audio_setting | string | 否 | 音频设置:auto模型自动处理 (默认);origin保留原始视频音频 |
| parameters.seed | integer | 否 | 随机种子 [0,2147483647]; 相同 seed 结果倾向稳定,但不能保证完全一致 |
响应参数
| 参数 | 类型 | 说明 |
|---|---|---|
| request_id | string | 请求唯一标识,用于问题排查溯源 |
| output | object | 任务输出主体 |
| output.task_id | string | 查询的任务 ID |
| output.task_status | string | 任务状态 - PENDING:任务排队中 - RUNNING:任务处理中 - SUCCEEDED:任务执行成功 - FAILED:任务执行失败 - CANCELED:任务已取消 - UNKNOWN:任务不存在或状态未知 |
查询任务接口详情
http调用
请求方式:GET
请求路径:https://ai.ctaigw.cn/v1/tasks/{task_id}
Path 路径参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| task_id | string | 是 | 创建异步任务接口返回的任务 ID |
请求头
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| Authorization | string | 是 | 身份认证,格式:Bearer ${YOUR_APP_KEY} |
响应参数
| 参数 | 类型 | 说明 |
|---|---|---|
| request_id | string | 请求唯一标识,排查使用 |
| output | object | 任务详情 |
| output.task_id | string | 任务 ID |
| output.task_status | string | 任务状态 - PENDING:任务排队中 - RUNNING:任务处理中 - SUCCEEDED:任务执行成功 - FAILED:任务执行失败 - CANCELED:任务已取消 - UNKNOWN:任务不存在或状态未知 |
| output.submit_time | string | 任务提交时间 YYYY‑MM‑DD HH:mm:ss.SSS |
| output.scheduled_time | string | 任务调度开始时间 |
| output.end_time | string | 任务结束时间 |
| output.orig_prompt | string | 用户原始输入 prompt |
| output.video_url | string | 仅 SUCCEEDED 返回 |
| usage | object | 计费统计,仅成功返回 |
| usage.duration | float | 计费时长 |
| usage.input_video_duration | float | 输入视频时长 (秒) |
| usage.output_video_duration | float | 输出视频时长 (秒) |
| usage.video_count | integer | 生成视频数量,固定为 1 |
| usage.SR | integer | 输出分辨率档位 |
请求/响应示例
创建任务请求示例
请求
curl --location 'https://ai.ctaigw.cn/v1/services/aigc/video-generation/video-synthesis' \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer ${YOUR_APP_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model": "happyhorse-1.0-video-edit",
"input": {
"prompt": "让视频中的小男孩穿上图片里的毛衣",
"media": [
{
"type": "video",
"url": "https://aaaa.ctyun.cn/video/001.mp4"
},
{
"type": "reference_image",
"url": "https://aaaa.ctyun.cn/pic/001.png"
}
]
},
"parameters": {
"resolution": "720P"
}
}'正常响应
{
"output": {
"task_status": "PENDING",
"task_id": "xxxx‑xxxx‑xxxx‑xxxx"
},
"request_id": "00d06a841873c0a83bfaf1fae0184625"
}异常响应
{
"error": {
"type:": "Invalid_request",
"code": "missing_parameter",
"message": "Missing required parameters"
}
}查询任务请求示例
请求
curl -X GET https://ai.ctaigw.cn/v1/tasks/{task_id} \
--header "Authorization: Bearer ${YOUR_APP_KEY}"正常响应
{
"request_id": "00d06a841873c0a83bfaf1fae0184625",
"output": {
"task_id": "xxxx‑xxxx‑xxxx‑xxxx",
"task_status": "SUCCEEDED",
"submit_time": "2026-08-26 12:10:05.001",
"scheduled_time": "2026-08-26 12:10:05.201",
"end_time": "2026-08-26 12:10:25.001",
"orig_prompt": "让视频中的小男孩穿上图片里的毛衣",
"video_url": "https://aaaa.ctyun.cn/xxx.mp4"
},
"usage": {
"duration": 13.24,
"input_video_duration": 6.62,
"output_video_duration": 6.62,
"video_count": 1,
"SR": 720
}
}