# Seedance 视频

用 POST /v1/videos 调用 seedance-2.0 和 seedance-2.5。请求使用 JSON，字段放在顶层。

Seedance 视频使用异步任务接口。创建请求返回任务对象，不直接返回视频文件。

```http
POST /v1/videos
```

查询和下载：

```http
GET /v1/videos/{task_id}
GET /v1/videos/{task_id}/content
```

请求体是 JSON。字段都放在顶层，不要包进 `metadata`。`images` 和 `videos` 只接受公网可直接访问的 `http` 或 `https` URL，不支持 base64，也不支持 data URI。链接在任务完成前不能过期。

调用前用 `GET /v1/models` 确认当前 API Key 能看到对应模型。时长或分辨率超出下表时，任务会失败。

## 模型

| 模型 ID | 能做什么 | 时长 | 分辨率 |
| --- | --- | --- | --- |
| `seedance-2.0` | 文生、图生、参考、首尾帧 | 4–15 秒 | `480p`、`720p`、`1080p`、`4k` |
| `seedance-2.5` | 同上，另支持视频编辑和延长 | 4–30 秒 | `480p`、`720p`、`1080p` |

## 请求参数

| 参数 | 必填 | 说明 |
| --- | --- | --- |
| `model` | 是 | 上表中的模型 ID |
| `prompt` | 是 | 主体、动作、镜头和要保留的内容。参考素材时写明「图片1」「视频1」 |
| `mode` | 否 | `text2video`、`image2video`、`reference`、`frames2video`。`seedance-2.5` 还可传 `video_edit`、`video_extend` |
| `duration` | 否 | `seedance-2.0` 为 4–15 秒，`seedance-2.5` 为 4–30 秒。`video_edit`、`video_extend` 可以传 `-1`，表示按原视频时长处理 |
| `resolution` | 否 | `480p`、`720p`、`1080p`。只有 `seedance-2.0` 还能用 `4k` |
| `aspect_ratio` | 否 | 例如 `16:9`、`9:16`、`1:1`、`4:3`、`3:4`、`21:9` |
| `images` | 否 | 公网图片 URL 数组。只支持 URL，不支持 base64 |
| `videos` | 否 | 公网视频 URL 数组。只支持 URL，不支持 base64 |
| `face_check` | 否 | 是否检测人脸。省略时按开启处理 |
| `generate_audio` | 否 | 是否生成声音，`true` 或 `false` |
| `output_format` | 否 | 例如 `mp4`、`mov`。不传使用默认格式 |

`image2video` 使用 `images` 的第一张作为首帧。`frames2video` 按顺序把第一张当首帧、第二张当尾帧。`reference` 可以同时传 `images` 和 `videos`。`video_edit` 和 `video_extend` 把原视频放进 `videos`。

## 文生视频

```bash
curl https://kaienapi.com/v1/videos \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0",
    "prompt": "清晨的湖面，薄雾慢慢散开，镜头保持不动",
    "mode": "text2video",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "face_check": false
  }'
```

## 图生视频

```bash
curl https://kaienapi.com/v1/videos \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "让图中的猫轻微转头，镜头保持不动",
    "mode": "image2video",
    "duration": 4,
    "resolution": "480p",
    "aspect_ratio": "16:9",
    "images": [
      "https://example.com/cat.jpg"
    ]
  }'
```

## 参考图片或参考视频

```bash
curl https://kaienapi.com/v1/videos \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0",
    "prompt": "图片1里的人物按视频1的动作行走",
    "mode": "reference",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "face_check": true,
    "images": [
      "https://example.com/person.jpg"
    ],
    "videos": [
      "https://example.com/motion.mp4"
    ]
  }'
```

## 首尾帧

```bash
curl https://kaienapi.com/v1/videos \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0",
    "prompt": "从首帧自然过渡到尾帧，保持人物外观一致",
    "mode": "frames2video",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "images": [
      "https://example.com/first.jpg",
      "https://example.com/last.jpg"
    ]
  }'
```

## 视频编辑和延长

只有 `seedance-2.5` 支持。`duration` 传 `-1` 时按原视频时长处理：

```bash
curl https://kaienapi.com/v1/videos \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "保持主体和动作，把光线改成黄昏",
    "mode": "video_edit",
    "duration": -1,
    "resolution": "720p",
    "videos": [
      "https://example.com/source.mp4"
    ],
    "generate_audio": false,
    "output_format": "mov"
  }'
```

延长视频时把 `mode` 改为 `video_extend`。

## 查询任务

创建成功后保存 `id`，每 3–5 秒查询一次，直到 `completed` 或 `failed`：

```bash
curl "https://kaienapi.com/v1/videos/$TASK_ID" \
  -H "Authorization: Bearer <YOUR_API_KEY>"
```

完成后读取 `url` 播放或下载。这个地址才是结果文件。响应里的 `cost` 不是本站账单，扣费以控制台用量为准。失败时读取 `error.message`。

也可以下载视频二进制：

```bash
curl "https://kaienapi.com/v1/videos/$TASK_ID/content" \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  --output result.mp4
```

## 价格

按输出秒数计费。单位是元/秒，随 API Key 的 `standard` 或 `stable` 分组变化。

| 模型 | 分辨率 | `standard` | `stable` |
| --- | --- | ---: | ---: |
| `seedance-2.0` 开启人脸检测 | 480p / 720p / 1080p / 4k | 0.462 / 0.696 / 1.735 / 3.535 | 0.462 / 0.994 / 2.478 / 5.050 |
| `seedance-2.0` 关闭人脸检测 | 480p / 720p / 1080p / 4k | 0.5775 / 0.800 / 2.16875 / 4.41875 | 0.5775 / 1.2425 / 3.0975 / 6.3125 |
| `seedance-2.5` | 480p / 720p / 1080p | 0.54 / 1.06 / 2.99 | 0.67 / 1.51 / 3.74 |

控制台模型页的价格与账单不一致时，以账单为准。
