正在加载…

创建视频

视频生成

POST /v1/videos

视频生成是异步任务。创建后立即返回 queued,轮询状态,完成后读取 URL 或下载内容。

参数类型必填说明
modelstring是视频模型 ID。
promptstring文生视频必填描述视频内容、动作、镜头和风格。
seconds / durationstring | number是生成时长;duration 是兼容别名,必须是模型支持的时长。
sizestring否WIDTHxHEIGHT;短边决定分辨率档位,同时决定比例。
aspect_ratiostring否也可直接传比例,例如 16:9、9:16;size 优先映射。
resolutionstring否也可直接传 720p、1080p 等模型支持的档位。
reference_modestring否asset=普通参考图;frame=首尾帧。字段本身也会触发自动识别。
reference_imagesstring[] | file[]否普通参考图;JSON 用 URL、Data URI 或原始 Base64,multipart 可重复字段。
start_frame / end_framestring | file否首尾帧;end_frame 必须搭配 start_frame,且不能与普通参考图混用。
reference_videosstring[] | file[]否参考视频;数量和格式以模型公开能力为准。
audio_reference(s)string | string[] | file[]否参考音频;必须搭配模型支持的普通图像或视频参考。
audioboolean否控制输出音轨;仅对支持该能力的模型生效。
response_formatstring否仅支持 url;完成态返回公开临时 URL 和 expires_at。
视频生成POST /v1/videos · 创建 · 轮询 · 下载
curl https://y.junlistudio.com/v1/videos \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "a paper boat sailing down a rainy street, cinematic",
    "seconds": "4",
    "size": "1120x480",
    "response_format": "url"
  }'

# 轮询状态,完成后读取 url
curl https://y.junlistudio.com/v1/videos/<VIDEO_ID> \
  -H "Authorization: Bearer YOUR_API_KEY"
curl '<RETURNED_URL>' -o output.mp4
import time
import requests

base = "https://y.junlistudio.com/v1"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
job = requests.post(f"{base}/videos", headers=headers, json={
    "model": "seedance-2.5",
    "prompt": "a paper boat sailing down a rainy street",
    "seconds": "4",
    "size": "1120x480",
    "response_format": "url",
}).json()

while True:
    status = requests.get(f"{base}/videos/{job['id']}", headers=headers).json()
    if status["status"] in ("completed", "failed"):
        break
    time.sleep(5)

if status["status"] == "completed":
    open("output.mp4", "wb").write(requests.get(status["url"]).content)