开始使用
计费规则
视频按秒、按条或按 token 计费,每个模型用哪一种见模型与价格。价格在创建任务时算好并冻结,任务成功才扣费,失败、取消或超时全额退回。
计费方式
按秒计费
费用 = 每秒单价 × 视频秒数
以每秒 1.00 元为例:
| 请求 | 计费秒数 | 费用 |
|---|---|---|
| 生成 5 秒视频 | 5 | 5.00 元 |
| 生成 10 秒视频 | 10 | 10.00 元 |
按条计费
每生成一条视频收一次费,和视频时长无关。以每条 2.00 元为例,生成 5 秒和 10 秒的视频都是 2.00 元。
按 token 计费
费用 = 单价 × tokens ÷ 1,000,000,tokens = 宽 × 高 × 帧数 ÷ 1024,帧数 = 秒数 × 24 + 1
- 宽和高是视频画面的像素数,tokens 去掉小数部分。各模型在每个分辨率、画幅下的画面尺寸见模型与价格,也可以从模型列表接口的
token_frames字段取得。 - 创建任务时,按请求的分辨率和画幅对应的尺寸算出 tokens,冻结费用。画幅跟随图片或参考素材的任务(例如图生视频),按这个分辨率下最大的画面冻结。
- 任务成功后,按生成视频的实际尺寸和时长重新计算 tokens,多冻结的部分退回;实际费用不会超过冻结的金额。读不到视频尺寸时,按冻结的 tokens 扣费。
以单价 10 元/百万 tokens、768P、6 秒为例,帧数是 6 × 24 + 1 = 145,这个分辨率下 16:9 的画面是 1366 × 768,最大的 21:9 画面是 1792 × 768:
| 请求 | 冻结 | 结算 |
|---|---|---|
| 文生视频,16:9 | 1366 × 768 × 145 ÷ 1024 = 148,552 tokens,1.48552 元 | 生成的视频是 1366 × 768,费用不变 |
| 图生视频,画幅跟随图片 | 按 1792 × 768 冻结:194,880 tokens,1.9488 元 | 生成的视频是 768 × 1366(9:16):148,552 tokens,扣 1.48552 元,退回 0.46328 元 |
带参考视频
请求里有参考视频时(多模态参考、视频编辑、视频延长),改用「带参考视频」单价,参考视频的时长也计入费用。按秒计费时:
计费秒数 = 成片秒数 + max(参考视频总秒数, 成片秒数 × 2/3)
- 参考视频的时长由平台读取文件得到,多个参考视频的时长相加,不足 1 秒的部分不计。
- 成片秒数 × 2/3 有小数时向上取整,也就是参考视频再短,也至少按成片时长的 2/3 计费。
- 只有参考图、参考音频而没有参考视频的任务,按普通单价计费。
以带参考视频单价每秒 0.60 元为例:
| 请求 | 计费秒数 | 费用 |
|---|---|---|
| 成片 5 秒,参考视频 3 秒 | 5 + max(3, 4) = 9 | 5.40 元 |
| 成片 5 秒,参考视频 12.6 秒 | 5 + max(12, 4) = 17 | 10.20 元 |
| 成片 10 秒,两个参考视频共 4 秒 | 10 + max(4, 7) = 17 | 10.20 元 |
按 token 计费时,参考视频按同样的规则算出计费秒数,再按成片的画面折算成 tokens:帧数 = 成片秒数 × 24 + 1 + 参考视频计费秒数 × 24。例如 1280 × 720 的画面、成片 5 秒、参考视频 3 秒,帧数是 121 + 4 × 24 = 217,tokens 是 1280 × 720 × 217 ÷ 1024 = 195,300。
按条计费时,带参考视频的视频按「带参考视频」的每条单价计费,参考视频的时长不影响费用。
由模型决定时长
支持自动时长的模型,时长传 -1(火山方舟格式的 duration;OpenAI 格式的 seconds 也可以传 auto)时由模型决定视频长度。这类任务创建时先按模型支持的最长时长冻结,完成后按视频的实际时长结算,多冻结的部分退回;按条计费的模型和时长无关,费用不变。
- 用火山方舟格式调用 Seedance 2.5 时不传
duration,同样由模型决定时长,与火山方舟官方一致。 - 视频编辑生成的视频和原视频一样长,按原视频的时长冻结(短于模型最短时长的按最短时长),完成后按实际时长结算。
冻结与退款
| 环节 | 余额变化 |
|---|---|
| 创建任务 | 按价格冻结余额。可用余额不足时任务创建失败,不会冻结 |
| 任务成功 | 从冻结的金额中扣费;由模型决定时长和按 token 计费的任务按实际结算,余下的解冻 |
| 任务失败、被取消或超时 | 冻结的金额全部退回,不扣费。审核不通过也算失败,同样不扣费 |
余额不足时,火山方舟格式返回 HTTP 403 AccountOverdueError,MiniMax 格式返回 HTTP 402 insufficient_balance_error(1008),OpenAI 格式返回 HTTP 402 insufficient_balance。每一笔冻结、扣费和退款都能在控制台 → 收支明细里查到。
价格分组
账号可能属于不同的价格分组,例如折扣分组,分组的倍率会乘在单价上,按秒、按条、按 token 计费都一样。通过 API 调用时按 API Key 的分组计价,没有指定分组的 API Key 使用账号所在的分组;可以在控制台 → API Keys为每个密钥选择分组。登录后在控制台 → 模型价格可以看到各分组的实际价格。
API Key 额度
给 API Key 设置了额度后,这个密钥已经花掉的金额,加上它未完成任务冻结的金额,不能超过额度。超出时新任务会被拒绝:火山方舟格式返回 HTTP 429 SetLimitExceeded,MiniMax 格式返回 HTTP 402 insufficient_balance_error(1008),OpenAI 格式返回 HTTP 403 api_key_quota_exceeded。
用量字段
任务成功后,各格式的返回结果里带有用量:
- 火山方舟格式:
usage.completion_tokens和usage.total_tokens,两者相等。按 token 计费的模型,这就是实际计费的 token 数;其他模型按火山方舟官方的方法算出,用于和官方用量对照:视频宽 × 高 × 帧数 ÷ 1024,帧数为秒数 × 24 + 1,带参考视频时再加上参考视频计费秒数 × 24 帧。例如 720p、16:9、5 秒的视频是 1280 × 720 × 121 ÷ 1024 = 108900。 - MiniMax 格式:
usage里有成片秒数、参考视频秒数和输入图片数;按 token 计费的模型还有total_tokens(实际计费的 token 数),见查询视频生成任务。 - OpenAI 格式:
price是费用,任务成功后是实际扣费的金额。