Skip to content
curl -X POST https://api.wxiai.com/v1/videos/extensions \
  -H "Authorization: Bearer $WXIAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "镜头转向窗外,天色逐渐变暗",
    "video": {"url": "https://example.com/source.mp4"},
    "duration": 6
  }'
{
  "task_id": "d97415a1-5796-b7ec-379f-4e6819e08fdf",
  "status": "queued"
}
OpenAI 兼容层

扩展视频

从源视频的最后一帧接着往下生成,输出是原片加新增部分拼接成的一条完整视频。异步接口,提交后轮询。

POST/v1/videos/extensions

端点 ​

http
POST /v1/videos/extensions
GET  /v1/videos/{task_id}        # 轮询,见「查询视频任务」

同一能力在原生透传层的写法见 扩展视频(原生透传)。

请求 ​

必填 model、prompt、video;duration 可选:

bash
curl -X POST https://api.wxiai.com/v1/videos/extensions \
  -H "Authorization: Bearer $WXIAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "镜头转向窗外,天色逐渐变暗",
    "video": {"url": "https://example.com/source.mp4"},
    "duration": 6
  }'

video 的三种给法(公网 URL / base64 data URI / file_id)和编辑视频一致。

请求参数 ​

参数必填说明
model是视频模型,扩展用 grok-imagine-video
prompt是接下来发生什么
video是源视频对象
duration否新增部分的时长(秒),2–10,不传默认 6
storage_options否把产物存进 xAI 文件服务,见总览

duration 是「新增部分」的长度,不是总长

源视频 10 秒 + duration: 6 → 输出 16 秒(10 秒原片 + 6 秒新增)。

这一点最容易搞错——很多人以为 duration 是总时长。

返回 ​

提交时:

json
{
  "task_id": "d97415a1-5796-b7ec-379f-4e6819e08fdf",
  "status": "queued"
}
字段说明
task_id兼容层的任务 ID,查结果时要用它
status提交后是 queued(排队)或 processing(生成中)

返回的是拼接后的完整视频,不是只有新增那一段。

接下来:用 GET 查结果 ​

本页只负责启动任务。提交成功后拿到的 task_id 就是查结果的凭据,交给:

http
GET /v1/videos/{task_id}

状态值、失败错误码、下载方式全部在 查询视频任务 一处说明,不用在本页找。

这一层的注意点 ​

  • duration 范围是 2–10 秒,和生成视频的 1–15 秒不是同一套规则,别套用。
  • duration 是增量不是总时长。
  • 源视频必须带 .mp4 后缀。
  • 扩展能力挑模型:报 failed_precondition 就换模型。

相关页 ​

基于 Apache-2.0 许可发布