跳转到主要内容
POST
生成视频
使用 multipart/form-data 提交首帧图片,且不提供尾帧,即可选择此模式。首帧可通过文件或 URL 提供,两者不能同时使用。首帧不能与参考素材或角色动画字段混用。 本模式与文本生成、首帧生成、首尾帧生成、参考素材生成及使用 Viggle-Animate共用 POST /v1/videos。模式由输入字段决定,没有单独的 source 或 mode 参数。
生成的视频均由经 Viggle 优化的 MiniMax H3 生成,自带原生音频,无需额外音频开关。费用为向上取整后的 duration_s 乘以 resolution 对应的单价:480p/768p/1080p/2k 下 low 和 high 均为 $0.01/秒(1 积分/秒),4k 下为 $0.05/秒(5 积分/秒),1 积分 = $0.01。相同时长下,纯文本、图片和参考素材模式费用相同,aspect_ratio 和 enhance 均不影响价格。详见计费与保留期限。

请求参数

使用 multipart/form-data。 首帧的文件与 URL 必须二选一。同时提供会返回 400 INVALID_REQUEST:“supply only one of first_frame_image or first_frame_image_url”。若 enhance 无法解析为布尔值,则返回 400 INVALID_REQUEST:“enhance must be a boolean”。priority 不属于服务端支持的档位(当前为 1000 或 0)时,返回 “invalid render request: unsupported priority 500”(末尾为所传的值,此处为 500);无法解析为整数时返回 “priority must be an integer”。

图片限制

以下限制适用于 first_frame_image 和 first_frame_image_url:
  • 大小: 上传的图片每张最大 20 MiB;通过 URL 字段下载的图片最大 30 MiB。
  • 格式: 按图片内容识别,而非文件扩展名或 Content-Type,支持 JPEG、PNG、WebP、GIF、BMP、TIFF 及 HEIC/HEIF/AVIF。
  • 尺寸: 没有最小或最大限制。达到或超过 4K(长边 ≥ 3840 px 或短边 ≥ 2160 px)的图片会等比缩放至 1920×1080 以内(竖图为 1080×1920)。
上传的图片为空或超限时返回 400 INVALID_REQUEST:“invalid or oversized first_frame_image upload”(错误信息中为对应字段名),无法解码时返回 “first_frame_image must be a valid image”。URL 形式超限时返回 “failed to fetch first_frame_image_url: media exceeds size limit”,无法解码时返回 “first_frame_image_url is not a valid image”。

响应参数

返回 200 OK,表示请求已受理,并非最终结果。
创建响应不包含 stage、video_url、alpha_url、completed_at 或 error。处理过程中或完成后的完整结构见获取视频。

示例

下一步

使用返回的 id 调用获取视频,轮询生成结果。

快速入门

查看完整的创建、轮询与结果获取流程。

授权

Authorization
string
header
必填

服务端 SDK 使用项目 API 密钥,Remote MCP 使用 OAuth 访问令牌。不要在浏览器代码中暴露项目密钥。

请求头

X-Request-Id
string

可选的调用者自定义关联 ID,最长 128 字符。服务会在响应头返回实际使用的值,便于追踪和支持排查。

Required string length: 1 - 128
X-Viggle-Source
string

可选来源标签,最长 128 字符,用于识别 SDK、集成、产品入口或内部工作流。

Required string length: 1 - 128

请求体

multipart/form-data

POST /v1/videos 根据输入选择模式:无帧、参考或角色动画字段时为文本生成;只有首帧时为首帧生成;首尾帧同时提供时为首尾帧生成;任一 reference_video/reference_video_url/reference_image/reference_image_url 字段选择参考素材模式;driving_video/driving_video_url 或角色图片字段选择独立的 Viggle-Animate。默认使用 multipart,角色动画也支持 JSON 和 application/x-www-form-urlencoded。每个帧位置的文件与 URL 互斥,尾帧必须配合首帧,否则返回 400 INVALID_REQUEST。参考模式没有单独的 source/mode 参数,遗漏所有参考字段会回退到文本生成。参考视频的文件与 URL 合计最多 1 个,参考图片合计最多 4 张;超限或与首尾帧混用均返回 400 INVALID_REQUEST。首帧、尾帧及参考图片上传时每张最大 20 MiB,通过 URL 下载时最大 30 MiB;格式按内容识别,支持 JPEG、PNG、WebP、GIF、BMP、TIFF 及 HEIC/HEIF/AVIF,没有最小或最大尺寸限制,长边 ≥ 3840 px 或短边 ≥ 2160 px 的图片会等比缩放至 1920×1080 以内。参考视频(上传或 URL)最大 100 MiB。角色动画必须提供驱动视频,不支持纯图片模式:未提供视频时,无论图片数量、prompt 或 enhance_mode 如何,均在媒体存储和任务创建前返回 400 INVALID_REQUEST。驱动视频文件与 URL 二选一;planner(默认)/normal 替换单角色用 1 张图,替换 2~3 个角色必须提供有序的 目标描述,不带标签时只使用第 1 张图;agent 支持 1~10 张有序图片,标签可选。planner/normal 请用 5~16 秒视频,agent 请用 5~60 秒。入口对所有模式按整数秒检查 5~60 秒,不会扩大 planner/normal 的 worker 16 秒上限;更长的视频可能入队后失败。视频最大 100 MiB、至少 64×64、宽高为偶数;上传角色图每张最大 20 MiB。公共 URL 必须为可下载的 HTTPS 地址,图片文件与 URL 不能混用,两个图片 URL 字段也不能同时出现。角色动画不能与 quality 或帧、参考字段混用,duration_s、resolution、aspect_ratio、seed 不控制此模式。H3 按 duration_s 向上取整后乘以 resolution 对应的单价计费:480p、768p、1080p、2k 为每秒 1 积分($0.01),4k 为每秒 5 积分($0.05),low/high 同价。宽高比、enhance 及图片或视频条件均不影响价格。角色动画按 1 积分/秒计费:按驱动视频实测时长向上取整预留;完成后按成片时长结算,不超过预留金额。H3 视频自带原生音频,无需额外开关。完整字段及错误信息见各模式的接口正文。

prompt
string

H3 模式必填。角色动画按 enhance_mode 使用目标描述或编辑指令。planner/normal 的多角色替换需要有序 标签。

Minimum string length: 1
示例:

"A paper airplane gliding through a sunlit office"

quality
enum<string>

H3 模式必填:low 生成更快,high 保真度更高,相同 resolution 下两者单价一致。不可与角色动画字段混用。

可用选项:
low,
high
示例:

"low"

first_frame_image
file

直接上传的首帧图片,与 first_frame_image_url 二选一。上传时最大 20 MiB;格式按文件内容识别,支持 JPEG、PNG、WebP、GIF、BMP、TIFF 及 HEIC/HEIF/AVIF。长边 ≥ 3840 px 或短边 ≥ 2160 px 的图片会等比缩放至 1920×1080 以内。

first_frame_image_url
string<uri>

可公开访问的首帧图片 URL。服务会下载并重新托管,与 first_frame_image 二选一。下载的图片最大 30 MiB,格式与缩放规则同上传形式。

last_frame_image
file

直接上传的尾帧图片,与 last_frame_image_url 二选一。必须同时提供首帧。上传时最大 20 MiB;格式按文件内容识别,支持 JPEG、PNG、WebP、GIF、BMP、TIFF 及 HEIC/HEIF/AVIF。长边 ≥ 3840 px 或短边 ≥ 2160 px 的图片会等比缩放至 1920×1080 以内。

last_frame_image_url
string<uri>

可公开访问的尾帧图片 URL。服务会下载并重新托管,与 last_frame_image 二选一。必须同时提供首帧。下载的图片最大 30 MiB,格式与缩放规则同上传形式。

reference_video
file[]

直接上传的参考视频。为兼容未来扩展,字段声明为可重复,但当前与 reference_video_url 合计最多 1 个视频。提供参考图片时可省略。最大 100 MiB,须包含可读取的视频流(MP4、MOV、WebM 等),时长 0.5–600 秒,至少 64×64 且宽高均为偶数。

Maximum array length: 1
reference_video_url
string<uri>[]

可公开访问的参考视频 URL,服务会下载并重新托管。字段声明为可重复,但当前与文件形式合计最多 1 个视频。大小、时长及分辨率限制同 reference_video。

Maximum array length: 1
reference_image
file[]

直接上传的参考图片,可重复,也可与 reference_image_url 混用,两种形式合计最多 4 张。上传时最大 20 MiB;格式按文件内容识别,支持 JPEG、PNG、WebP、GIF、BMP、TIFF 及 HEIC/HEIF/AVIF。长边 ≥ 3840 px 或短边 ≥ 2160 px 的图片会等比缩放至 1920×1080 以内。

Maximum array length: 4
reference_image_url
string<uri>[]

可公开访问的参考图片 URL,服务会下载并重新托管。可重复,也可与文件形式混用,合计最多 4 张。下载的图片最大 30 MiB,格式与缩放规则同上传形式。

Maximum array length: 4
driving_video
file

角色动画源视频上传,与 driving_video_url 互斥,最大 100 MiB。planner/normal 使用 5~16 秒,agent 使用 5~60 秒。角色动画必须提供 driving_video 或 driving_video_url 之一,纯图片请求返回 400 INVALID_REQUEST。

driving_video_url
string<uri>

可下载的 HTTPS 源视频 URL,与 driving_video 互斥,视频限制同上传形式。角色动画必须提供 driving_video 或 driving_video_url 之一,纯图片请求返回 400 INVALID_REQUEST。

character_image
file[]

有序角色图上传,每张最大 20 MiB,与 URL 形式互斥。必须配合驱动视频,按 enhance_mode 和 prompt 标签使用图片。

Maximum array length: 10
character_image_url
string<uri>[]

角色图 HTTPS URL,表单可重复,与 character_image_urls 和文件上传互斥。必须配合驱动视频,图片用法由 enhance_mode 与标签决定;JSON 多图推荐 character_image_urls 数组。

Maximum array length: 10
character_image_urls
string<uri>[]

有序角色图 HTTPS URL 数组,与 character_image_url 和文件上传互斥。必须配合驱动视频,图片用法由 enhance_mode 与标签决定。

Maximum array length: 10
enhance_mode
enum<string>
默认值:planner

planner 为默认模式,normal 使用首帧重绘,agent 读取完整编辑指令。

可用选项:
planner,
normal,
agent
priority
integer
默认值:1000

与 H3 模式共用的准入队列优先级。必须使用服务端支持的档位(当前为 1000 或 0)。不支持的整数在 H3 模式返回 400 INVALID_REQUEST:"invalid render request: unsupported priority 500"(末尾为所传的值),在角色动画模式返回 "unsupported priority";非整数值返回 "priority must be an integer"。通常无需设置。

duration_s
number
默认值:5

仅用于 H3 视频生成,不控制角色动画。角色动画时长来自驱动视频。

必填范围: 5 <= x <= 15
resolution
enum<string>
默认值:768p

输出分辨率档位,同时决定单价:480p、768p、1080p、2k 为 $0.01/秒(1 积分/秒);4k 为 $0.05/秒(5 积分/秒)。

可用选项:
480p,
768p,
1080p,
2k,
4k
aspect_ratio
enum<string>
默认值:16:9

16:9、9:16、1:1、4:3、3:4 或 21:9,不影响价格。

可用选项:
16:9,
9:16,
1:1,
4:3,
3:4,
21:9
seed
integer<int64>

大于或等于 0;省略时使用随机种子。

必填范围: x >= 0
watermark
boolean
默认值:false

是否将 Viggle 水印嵌入视频,与其他模式的用法一致。

enhance
boolean
默认值:true

是否在生成前对 prompt 执行一次低算力的 AI Planner 改写;所提供的帧或参考视频/图片不受影响。仅适用于 H3 模式,角色动画模式不适用。默认为 true,设为 false 可完全按原样使用 prompt。不影响价格。

响应

请求成功。

POST /v1/videos 五种模式共用的受理响应,只表示排队成功,并非最终结果。轮询 GET /v1/videos/{video_id},直至 ready 后读取 video_url;也可通过视频列表查看任务状态。

id
string
必填

视频公开 ID:H3 为 vid_ 前缀,角色动画为 anim_ 前缀。

Minimum string length: 1
status
enum<string>
必填

受理时固定为 queued。

可用选项:
queued,
processing,
ready,
failed,
cancelled
progress
integer | null
必填

受理时固定为 null。

必填范围: 0 <= x <= 100
created_at
string<date-time> | null
必填

ISO 8601 创建时间,精确到秒。