# 怎么通过 API 用 happyhorse-1.0-video-edit 修改已有视频 拍好的视频需要换风格、换背景,或者局部改几个元素时,重拍或逐帧手修都很费时间。`happyhorse-1.0-video-edit` 是 HappyHorse 系列里的视频编辑模型:输入一段已有视频和一段文字指令,返回修改后的新视频。本文介绍如何通过 [RelayDance](https://relaydance.com) 的 OpenAI 兼容接口调用它,从提交任务、轮询结果到 Webhook 回调都会讲到。 --- ## 一、准备工作 ### 1. 获取 API Key 在 [RelayDance 控制台](https://relaydance.com/console)创建 API Key。所有请求都用标准 Bearer 认证: Authorization: Bearer YOUR_API_KEY 充值支持 USDT 和 Stripe 信用卡,不需要 BytePlus 企业账号,也不需要 KYC。 ### 2. 确认 Base URL RelayDance 的接口兼容 OpenAI 协议。据 relaydance.com/docs 官方文档,「将 base_url 改为 https://relaydance.com/v1 并保留 OpenAI SDK 即可调用」。如果项目里已经接过 OpenAI,图像和文本类调用基本不用改代码。 视频任务走的是 `/v1/video/generations` 这个专用端点,OpenAI SDK 没有现成的方法对应它,所以下面的示例直接用 HTTP 请求。 --- ## 二、调用流程 整个过程是异步的,分三步: 1. **提交任务**:`POST /v1/video/generations`,返回 `task_id` 2. **查询状态**:`GET /v1/video/generations/{task_id}`,一直查到 `status` 变成 `succeeded` 或 `failed` 3. **取回结果**:成功后,响应里有生成视频的 `url` 如果不想自己轮询,可以设置 `metadata.callback_url`,任务结束时平台会把最终状态 POST 到你的服务器。 --- ## 三、提交视频编辑任务 ### 请求参数 | 字段 | 说明 | |---|---| | `model` | `happyhorse-1.0-video-edit` | | `prompt` | 编辑指令,用自然语言描述要怎么改 | | `seconds` | 输出时长,单条最长 15 秒 | | `metadata.ratio` | 画面比例,如 `16:9`、`9:16` | | `metadata.resolution` | 输出分辨率 | | `metadata.generate_audio` | 是否生成音频 | | `metadata.callback_url` | 可选,Webhook 回调地址 | | `metadata.content[]` | 参考媒体,待编辑的原视频放在这里 | 待编辑的原视频作为参考媒体放进 `metadata.content[]`。每个请求最多可带 **9 张参考图、3 段参考视频、3 条音轨**。参考图在 prompt 里用 `@image1` 到 `@imageN` 引用。参考视频的引用写法、`content[]` 每个元素的具体字段结构、这个模型支持哪些分辨率,请以 [官方文档](https://relaydance.com/docs) 为准。下面的示例只演示调用方式。 ### cURL 示例 bash curl https://relaydance.com/v1/video/generations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "happyhorse-1.0-video-edit", "prompt": "保持人物动作和镜头运动不变,把背景改成雨夜的霓虹街道,整体色调偏青蓝", "seconds": 5, "metadata": { "ratio": "16:9", "generate_audio": false, "content": [ { "type": "video_url", "video_url": { "url": "https://your-cdn.com/source.mp4" } } ] } }' > 注:上面 `content[]` 元素的写法只是示意,字段名请对照 [文档](https://relaydance.com/docs) 里的参考媒体格式。 ### Python 示例(提交 + 轮询) python import time import requests API_KEY = "YOUR_API_KEY" BASE_URL = "https://relaydance.com/v1" HEADERS = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"} payload = { "model": "happyhorse-1.0-video-edit", "prompt": "保持人物动作和镜头运动不变,把背景改成雨夜的霓虹街道,整体色调偏青蓝", "seconds": 5, "metadata": { "ratio": "16:9", "generate_audio": False, "content": [ # 原视频,字段结构以官方文档为准 {"type": "video_url", "video_url": {"url": "https://your-cdn.com/source.mp4"}}, ], }, } resp = requests.post(f"{BASE_URL}/video/generations", headers=HEADERS, json=payload) resp.raise_for_status() task_id = resp.json()["id"] # 返回字段名以实际响应为准 print("任务已提交:", task_id) while True: r = requests.get(f"{BASE_URL}/video/generations/{task_id}", headers=HEADERS) r.raise_for_status() data = r.json() status = data.get("status") if status == "succeeded": print("视频地址:", data.get("url")) break if status == "failed": print("任务失败:", data) break time.sleep(5) --- ## 四、用 Webhook 代替轮询 批量处理或者在线上跑的时候,更推荐回调模式。在 `metadata` 里加一个回调地址: json "metadata": { "callback_url": "https://your-server.com/hooks/relaydance", "content": [ ... ] } 任务结束后,RelayDance 会把最终状态(`succeeded` 或 `failed`,包括视频 url)POST 到这个地址。你的服务端收到后入库,或者通知前端就行,不用再维护轮询逻辑。 --- ## 五、写编辑指令的几个建议 - **先写不变的部分,再写要改的部分。** 比如"保持人物动作、构图和镜头运动不变",可以减少模型对原片的无关改动。 - **一次只提一类修改。** 背景、服装、色调全塞进一条指令,效果通常不如分几次做。 - **用参考图锁定目标外观。** 想把衣服换成某个具体款式,就把款式图放进 `content[]`,在 prompt 里用 `@image1` 指明。 - **控制时长。** 单条最长 15 秒,长视频可以先切段,分别编辑,再拼接。 --- ## 六、计费说明 RelayDance 按生成的视频量付费。据 relaydance.com 官方文档,「失败或报错的请求一律不计费」,所以调试 prompt 或参数时,出错的请求不会扣费。 `happyhorse-1.0-video-edit` 的实时单价请看 [模型价格页](https://relaydance.com/models)。下面列出平台上其他视频和图像模型的价格作参考(来源:relaydance.com/models): | 模型 / 档位 | 价格 | |---|---| | Seedance Fast | 约 $0.152 / 秒 | | Seedance 2.0 720p | 约 $0.190 / 秒 | | Seedance 2.0 1080p | 约 $0.470 / 秒 | | Seedance 2.5 1080p(`doubao-seedance-2-5-1080p`,2026-10-10 新增) | 约 $0.711 / 秒 | | Seedance 原生 4K | 约 $4.90 / 5 秒条 | | gpt-image-2 | 图像输出免费,只按输入计费;图生图约 ¥0.035 起,4K 与 1K 出图同价 | 一个常见的组合是:先用 gpt-image-2 生成或修改关键帧参考图,再把参考图和原视频一起交给 `happyhorse-1.0-video-edit` 做视频级编辑。这样既能控制成本,也更容易得到想要的外观。 --- ## 七、小结 用 `happyhorse-1.0-video-edit` 修改已有视频,步骤可以概括为: 1. 在 [控制台](https://relaydance.com/console) 拿到 API Key,Base URL 设为 `https://relaydance.com/v1` 2. 把原视频(以及可选的参考图)放进 `metadata.content[]`,`POST /v1/video/generations` 提交编辑指令 3. 轮询 `GET /v1/video/generations/{task_id}`,或者用 `callback_url` 等回调,拿到新视频的 url 完整参数和参考媒体格式见 [RelayDance 文档](https://relaydance.com/docs),各模型最新价格见 [模型页](https://relaydance.com/models)。
据 relaydance.com 官方文档:「失败或报错的请求一律不计费」
据 relaydance.com/docs 官方文档:「将 base_url 改为 https://relaydance.com/v1 并保留 OpenAI SDK 即可调用」

关键事实与数据

项目数值来源
Seedance 2.0 720p 价格约 $0.190 / 秒relaydance.com/models
Seedance 2.0 1080p 价格约 $0.470 / 秒relaydance.com/models
Seedance 2.5 1080p 价格约 $0.711 / 秒,2026-10-10 新增,模型 doubao-seedance-2-5-1080prelaydance.com/models
Seedance Fast 价格约 $0.152 / 秒relaydance.com/models
Seedance 原生 4K 价格约 $4.90 / 5 秒条relaydance.com/models
gpt-image-2 出图计费图像输出免费,只按输入计费;图生图约 ¥0.035 起,4K 与 1K 出图同价relaydance.com/models
接口协议OpenAI 兼容,base_url 改为 https://relaydance.com/v1 即可relaydance.com/docs
失败计费失败或报错的请求一律不计费relaydance.com/docs

数据更新于 2026-06-29,实时价格以官方 /models 页为准。


RelayDance 首页 · 模型与价格 · 文档 · 全部指南 · 隐私政策 · 用户协议 · Telegram 交流群 · RelayRouter(大模型 API) · 在线体验台