视频生成

支持文生视频与图生视频。由于渲染需要数分钟,视频生成是一个异步任务:提交提示词后会收到一个 task_id,轮询至任务完成,然后下载 MP4。示例模型包括 veo-3.1-lite-generate-001veo-3.1-fast-generate-001dreamina-seedance-2-0-fastdoubao-seedance-1-5-pro-251215 —— 完整列表与价格请查看模型广场

三步流程

1. POST 提交任务 → 获得 task_id2. GET 轮询任务直到 status 变为 SUCCESS → 读取 result_url3. GET 内容地址 → 下载 video/mp4

第 1 步 · 提交任务

POST https://apicdn.xyc.ai/v1/video/generations
curl https://apicdn.xyc.ai/v1/video/generations \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "veo-3.1-lite-generate-001",
    "prompt": "A golden retriever puppy running on grass, 4 seconds"
  }'
import requests

base = "https://apicdn.xyc.ai"
key  = "sk-xxxxxxxx"
headers = {"Authorization": f"Bearer {key}"}

resp = requests.post(
    f"{base}/v1/video/generations",
    headers=headers,
    json={
        "model": "veo-3.1-lite-generate-001",
        "prompt": "A golden retriever puppy running on grass, 4 seconds",
    },
)
task_id = resp.json()["task_id"]
print(task_id)

响应会立即返回一个已排队的任务:

{
  "id": "task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md",
  "task_id": "task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md",
  "object": "video",
  "model": "veo-3.1-lite-generate-001",
  "status": "queued",
  "progress": 0
}

请求参数

参数类型说明
modelstring必填。视频模型名称,例如 veo-3.1-lite-generate-001
promptstring必填。视频的文字描述
imagestring可选。用于图生视频的图片 URL 或 base64(取决于模型)

第 2 步 · 轮询状态

GET https://apicdn.xyc.ai/v1/video/generations/{task_id}

建议每 5–10 秒轮询一次。status 会依次经过 queuedIN_PROGRESSSUCCESS(或 FAILURE)。当变为 SUCCESS 时,响应中会携带 result_url

curl https://apicdn.xyc.ai/v1/video/generations/task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md \
  -H "Authorization: Bearer sk-xxxxxxxx"

完成后的响应(已省略部分字段):

{
  "code": "success",
  "data": {
    "task_id": "task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md",
    "status": "SUCCESS",
    "progress": "100%",
    "result_url": "https://apicdn.xyc.ai/v1/videos/task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md/content"
  }
}

第 3 步 · 下载视频

GET https://apicdn.xyc.ai/v1/videos/{task_id}/content

请求 result_url(或根据 task_id 拼出内容地址),即可下载渲染完成的 video/mp4

curl -L https://apicdn.xyc.ai/v1/videos/task_UrufFh4Ww57Q6XWZ7trGZJajiHGw88Md/content \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -o output.mp4

完整 Python 示例

import time, requests

base = "https://apicdn.xyc.ai"
headers = {"Authorization": "Bearer sk-xxxxxxxx"}

# 1. 提交任务
task_id = requests.post(
    f"{base}/v1/video/generations", headers=headers,
    json={"model": "veo-3.1-lite-generate-001",
          "prompt": "A puppy running on grass, 4 seconds"},
).json()["task_id"]

# 2. 轮询状态
while True:
    data = requests.get(f"{base}/v1/video/generations/{task_id}", headers=headers).json()["data"]
    if data["status"] == "SUCCESS":
        break
    if data["status"] == "FAILURE":
        raise RuntimeError(data.get("fail_reason"))
    time.sleep(8)

# 3. 下载视频
mp4 = requests.get(data["result_url"], headers=headers).content
open("output.mp4", "wb").write(mp4)
计费说明

Veo 系列模型按任务计费(按时长)。Seedance / Dreamina 系列模型按上游官方费率以 token 计费。您账户的厂商折扣会自动生效。当前价格请查看模型广场