视频生成 API
通过单一统一接口,从文本、图片、视频参考素材和音频输入生成 AI 视频。生成模式由您提供的参数组合自动决定。
接口地址
POST https://api.evolink.ai/v1/videos/generations
请求参数
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
model | string | 是 | — | 模型 ID,使用 seedance-2.0 |
prompt | string | 是 | — | 期望视频的文本描述(最多 2000 tokens)。使用 @ 标签引用已上传的文件 |
image_urls | array | 否 | — | 参考图片 URL(最多 9 张)。参见 输入文件要求 |
video_urls | array | 否 | — | 参考视频 URL(最多 3 个)。参见 输入文件要求 |
audio_urls | array | 否 | — | 参考音频 URL(最多 3 个)。参见 输入文件要求 |
duration | integer | 否 | 5 | 视频时长(秒)。支持 4 到 15 的任意整数。时长越长费用越高 |
quality | string | 否 | 720p | 视频分辨率:480p、720p 或 1080p。分辨率越高费用越高 |
aspect_ratio | string | 否 | 16:9 | 画面比例:16:9、9:16、1:1、4:3、3:4、21:9 或 adaptive |
generate_audio | boolean | 否 | true | 是否生成同步音频。启用会增加费用 |
callback_url | string | 否 | — | 任务完成回调的 HTTPS URL。参见 Webhooks |
生成模式
API 根据您提供的输入参数自动检测生成模式:
| 提供的输入 | 模式 | 描述 |
|---|---|---|
仅 prompt | 文生视频 | 根据文本描述生成视频 |
prompt + image_urls(1 张图片) | 图生视频 | 将参考图片动画化 |
prompt + image_urls(2 张图片) | 首尾帧生成 | 在两个关键帧之间生成过渡视频 |
prompt + image_urls、video_urls、audio_urls 的任意组合 | 多模态 | 在提示词中使用 @ 标签为每个输入分配角色。参见 多模态引用 |
输入文件要求
图片
| 属性 | 限制 |
|---|---|
| 最大数量 | 每次请求 9 张 |
| 最大文件大小 | 每张 30MB |
| 支持格式 | .jpeg、.png、.webp、.bmp、.tiff、.gif |
视频
| 属性 | 限制 |
|---|---|
| 最大数量 | 每次请求 3 个 |
| 最大文件大小 | 每个 50MB |
| 支持格式 | .mp4、.mov |
| 时长 | 2–15 秒 |
| 像素范围 | 409,600 (480p) – 927,408 (720p) |
音频
| 属性 | 限制 |
|---|---|
| 最大数量 | 每次请求 3 个 |
| 最大文件大小 | 每个 15MB |
| 支持格式 | .mp3、.wav |
| 总时长 | ≤ 15 秒 |
总文件限制: 每次请求所有模态的文件合计最多 12 个。
人脸限制: 不支持上传真实人脸图片,系统会自动拒绝。
所有文件 URL 必须可被服务器直接访问。
示例
文生视频
import requests
response = requests.post(
"https://api.evolink.ai/v1/videos/generations",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"model": "seedance-2.0",
"prompt": "A luxury watch rotating slowly on a marble surface, soft studio lighting, product showcase, cinematic 4K",
"duration": 8,
"quality": "1080p",
"aspect_ratio": "16:9",
"generate_audio": False
}
)
print(response.json())
图生视频
response = requests.post(
"https://api.evolink.ai/v1/videos/generations",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"model": "seedance-2.0",
"prompt": "The woman turns her head slowly and smiles, hair gently flowing in the wind",
"image_urls": ["https://example.com/portrait.jpg"],
"duration": 5,
"quality": "1080p"
}
)
首尾帧生成
response = requests.post(
"https://api.evolink.ai/v1/videos/generations",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"model": "seedance-2.0",
"prompt": "Smooth camera pan revealing the landscape, golden hour lighting",
"image_urls": [
"https://example.com/frame-start.jpg",
"https://example.com/frame-end.jpg"
],
"duration": 8,
"quality": "1080p"
}
)
多模态 @标签引用
response = requests.post(
"https://api.evolink.ai/v1/videos/generations",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"model": "seedance-2.0",
"prompt": "@Image1 as first frame, replicate @Video1 camera movement, @Audio1 for BGM rhythm",
"image_urls": ["https://example.com/scene.jpg"],
"video_urls": ["https://example.com/reference-camera.mp4"],
"audio_urls": ["https://example.com/bgm.mp3"],
"duration": 10,
"quality": "1080p"
}
)
完整的 @ 标签语法和角色分配,请参阅 多模态引用。
响应
{
"id": "task-unified-1761313744-vux2jw0k",
"object": "video.generation.task",
"created": 1761313744,
"model": "seedance-2.0",
"status": "pending",
"progress": 0,
"type": "video",
"task_info": {
"can_cancel": true,
"estimated_time": 165,
"video_duration": 8
},
"usage": {
"billing_rule": "per_call",
"credits_reserved": 12,
"user_group": "default"
}
}
响应字段
| 字段 | 类型 | 描述 |
|---|---|---|
id | string | 用于状态轮询的唯一任务标识符 |
object | string | 固定为 video.generation.task |
created | integer | 任务创建的 Unix 时间戳 |
model | string | 生成所用的模型 |
status | string | pending、processing、completed 或 failed |
progress | integer | 进度百分比(0–100) |
type | string | 输出类型:text、image、audio 或 video |
task_info.can_cancel | boolean | 任务是否可以取消 |
task_info.estimated_time | integer | 预计完成时间(秒) |
task_info.video_duration | integer | 请求的视频时长(秒) |
usage.billing_rule | string | 计费规则(per_call、per_token、per_second) |
usage.credits_reserved | number | 预计消耗的积分 |
usage.user_group | string | 用户组类别 |
音频生成
Seedance 2.0 可以根据您的文本提示词和视觉内容自动生成同步音频,包括语音、音效和背景音乐。
- 将
generate_audio设置为true(默认值)以启用音频生成 - 在提示词中将对话内容放在双引号中,以获得更好的语音生成效果
- 示例:
The man stopped the woman and said: "Remember, you must never point at the moon with your finger." - 将
generate_audio设置为false以输出无声视频
提示词技巧
- 具体描述镜头角度、光照和运动方式
- 加入风格关键词:"cinematic"、"slow motion"、"aerial shot"
- 描述主体、动作和氛围
- 提示词最大长度为 2000 tokens
- 详细的提示词工程策略,请参阅 Seedance 2.0 提示词指南