Skip to main content
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。 首帧的 first_frame_image/first_frame_image_url 必须二选一,尾帧的 last_frame_image/last_frame_image_url 也必须二选一。同一位置同时提供文件和 URL 会返回 400 INVALID_REQUEST:“supply only one of first_frame_image or first_frame_image_url”(尾帧返回对应字段名)。仅提供尾帧时返回 “a last frame requires a first frame”。若 enhance 无法解析为布尔值,则返回 “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 与 last_frame_image/last_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。每个帧位置的文件与 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。角色动画中的驱动视频可选;未提供驱动视频时最多可提交 4 张角色图片,均为同一角色的参考图;提供驱动视频时最多 5 张,每张替换视频中的一个人物。character_image、 character_image_url、character_image_urls 的上传形式与 URL 形式不能混用。驱动视频时长须为 5–15 秒(含边界,先截断为整数秒), 至少 64×64,宽高为偶数;上传的 driving_video 与 URL 形式校验规则相同。角色动画不能与 quality 或帧、参考字段混用,不支持 duration_s、resolution、aspect_ratio、seed,prompt 可选。H3 按 duration_s 向上取整后乘以 resolution 对应的单价计费:480p、768p、1080p、2k 为每秒 1 积分($0.01),4k 为每秒 5 积分($0.05),low/high 同价。宽高比、enhance 及图片或视频条件均不影响价格。角色动画按 1 积分/秒计费:提供驱动视频时按其实测时长向上取整预留(5–16 积分),未提供时固定预留 11 积分($0.11);完成后按成片时长结算,不超过预留金额。H3 视频自带原生音频,无需额外开关。完整字段及错误信息见各模式的接口正文。

prompt
string

H3 模式必填且非空;Viggle-Animate 模式可选,不强制非空。

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 互斥;提供后角色图片最多 5 张,每张替换视频中的一个人物。视频须为 5–15 秒、至少 64×64、宽高均为偶数,校验后暂存至对象存储。

driving_video_url
string<uri>

可选的 https:// 驱动视频 URL,与 driving_video 互斥。提供后角色图片最多 5 张,每张替换视频中的一个人物;视频须为 5–15 秒、至少 64×64,且宽高均为偶数。

character_image
file[]

直接上传的角色参考图片。无驱动视频时最多 4 张,有驱动视频时最多 5 张。与 URL 形式的角色图片互斥。

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

可重复的角色参考图片 URL。无驱动视频时最多 4 张,有驱动视频时最多 5 张。与 character_image_urls 及上传形式互斥。

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

与 character_image_url 等效,但通过一个 JSON 数组字段提供。无驱动视频时最多 4 张,有驱动视频时最多 5 张。与 character_image_url 及上传形式互斥。

Maximum array length: 5
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

生成时长,单位为秒,范围 5–15(含边界),默认 5。计费时向上取整。

必填范围: 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 创建时间,精确到秒。