mask_id 传入 Swap 生成接口。| 项目 | 要求 | 获取方式 |
|---|---|---|
| API 鉴权 | 有效的 API-KEY | 在拍我AI开放平台控制台获取。 |
| 请求追踪 ID | 每次请求携带新的 Ai-trace-id | 使用 UUID。不要在 Mask、上传图片、Swap 等不同请求之间重复使用同一个值。 |
| 账户状态 | API 服务可用且账户点数充足 | 在控制台查看订阅或点数余额。 |
| 源视频 | source_video_id 或 video_media_id 二选一 | PixVerse 生成视频返回 video_id;上传视频返回 media_id。 |
| 替换图片 | 已取得 img_id | 调用 POST /openapi/v2/image/upload 上传目标图片。 |
| Mask 结果 | 已取得与源视频对应的 keyframe_id 和 mask_id | 调用 POST /openapi/v2/video/mask/selection。 |
| 视频来源 | Mask 和 Swap 中填写的字段 | 值的来源 |
|---|---|---|
| PixVerse API 生成的视频 | source_video_id | 视频生成接口返回的 Resp.video_id |
| 用户上传的外部视频 | video_media_id | POST /openapi/v2/media/upload 返回的 Resp.media_id |
video_media_id: 123,Swap 也必须使用 video_media_id: 123,不能改成 source_video_id。| 项目 | 当前要求 |
|---|---|
| 最大分辨率 | 最长边不超过 1920px |
| 最大时长 | 30s |
| 编码 | H.264 或 H.265 |
| 常见容器格式 | mp4、mov;上传接口还支持 webm |
| 文件大小 | 100MB之内 |
| 项目 | 当 前要求 |
|---|---|
| 格式 | jpg、jpeg、png、webp |
| 最大文件大小 | 20MB |
| 最大尺寸 | 最长边不超过 10000px |
准备源视频
-> 上传替换图片并取得 img_id
-> 调用 Mask 接口
-> 根据 keyframe_url、mask_name、mask_url 选择目标区域
-> 保存对应的 keyframe_id 和 mask_id
-> 调用 Swap 接口
-> 使用 video_id 查询任务状态Resp.img_id。Swap 请求只填写 img_id,不填写图片名称或 img_url。| Header | 类型 | 是否必填 | 枚举值 / 示例 | 说明 |
|---|---|---|---|---|
API-KEY | string | 是 | your-api-key | 必须放在 Header 中,不要放入 URL Query。 |
Ai-trace-id | string | 是 | 550e8400-e29b-41d4-a716-446655440002 | 本次 Mask 请求的唯一 UUID。 |
Content-Type | string | 是 | application/json | 固定填写 application/json。 |
| 参数 | 类型 | 是否必填 | 枚举值 / 示例 | 说明 |
|---|---|---|---|---|
source_video_id | integer | 条件必填 | 123456789 | PixVerse 生成的视频 ID。与 video_media_id 必须且只能填写一个。 |
video_media_id | integer | 条件必填 | 987654321 | 上传视频接口返回的 media_id。与 source_video_id 必须且只能填写一个。 |
keyframe_id | integer | 否 | 1 | 要识别的关键帧序号;省略时默认为 1。有效范围为第 1 帧至视频最后一帧,0 表示自动选择,正数按帧率换算截帧时间 |
{
"source_video_id": 123456789,
"keyframe_id": 1
}{
"video_media_id": 987654321,
"keyframe_id": 1
}| 字段 | 类型 | 说明 | 后续是否需要填写 |
|---|---|---|---|
ErrCode | integer | 业务错误码,0 表示成功。 | 否 |
ErrMsg | string | 错误信息;成功时通常为 Success。 |