通过 Seedance 2.0 Mini API 将图像生成视频,支持可选声音、灵活时长、广泛宽高比和稳定的 ByteDance 输出,适合低成本图像动画、API 集成与可扩展视频工作流。
ByteDance Seedance V2.0 Mini 图生视频 API 为开发者和创意团队提供快速、经济的 AI 视频动画能力。Seedance 2.0 Mini 是 Seedance V2.0 的高性价比版本,面向希望以更快迭代和更低制作成本获得核心 Seedance 图生视频工作流的用户。此图生视频 API 集成可在 Best Image AI 上通过提示词引导、灵活格式和可选声音,将源图像转换为动画视频片段。
注意 请确保你的输入图像和提示词符合 ByteDance 的内容安全指南。如果发生错误,请检查内容是否包含受限素材,进行调整后再试。
Seedance V2.0 Mini vs. Seedance V2.0 Standard Image-to-Video Seedance V2.0 Standard 提供完整的专业图像动画工作流。Seedance V2.0 Mini 保持相同的实用 Seedance 图生视频用例,同时强调面向高容量创意团队的更低成本和更快生成。
Seedance V2.0 Mini vs. Seedance V2.0 Fast Image-to-Video Seedance V2.0 Fast 围绕加速动画进行优化。Seedance V2.0 Mini 更直接地关注经济性,因此是需要大量图像动画草稿和制作变体的团队的强有力选择。
Seedance V2.0 Mini vs. Veo 3.1 Fast Image-to-Video Veo 3.1 Fast 提供 Google 的快速图像动画工作流。Seedance V2.0 Mini 提供 ByteDance 图生视频生成能力,具备灵活控制、广泛发布格式,以及面向可扩展输出的高性价比 API 路径。
Seedance V2.0 Mini vs. Kling Image-to-Video Kling 擅长角色运动和以人物为中心的动画。Seedance V2.0 Mini 适合在产品、营销、人像和社交内容工作流中进行经济的源图像动画。
Seedance V2.0 Mini vs. Pika Image-to-Video Pika 提供易用、面向创作者的动画工具。Seedance V2.0 Mini API 则面向需要程序化集成、经济扩展和可重复图生视频交付的开发者与制作团队。
// Step 1: Submit generation request
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
model_name: 'seedance-v2.0-mini-image-to-video',
prompt: 'Gentle camera push-in; leaves rustle softly in the breeze',
resolution: '720p',
duration: 8,
aspect_ratio: '16:9',
seed: -1,
sound: true,
image_url: 'https://example.com/first-frame.jpg',
image_end_url: 'https://example.com/last-frame.jpg'
})
});
const { data } = await response.json();
const taskId = data.task_id;
// Step 2: Poll for results
const taskId = data.task_id;
const pollResult = async (taskId) => {
const res = await fetch(`https://api.flaq.ai/api/v1/video/${taskId}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
return res.json();
};
while (true) {
const pollResultData = await pollResult(taskId);
const status = pollResultData.data.task_status;
if (status === 'succeed') {
console.log(pollResultData.data.task_result.videos[].);
;
}
(status === ) {
.(pollResultData..);
;
}
( (resolve, ));
}
# Step 1: Submit generation request
import requests
response = requests.post(
'https://api.flaq.ai/api/v1/video/task',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
json={
'model_name': 'seedance-v2.0-mini-image-to-video',
'prompt': 'Gentle camera push-in; leaves rustle softly in the breeze',
'resolution': '720p',
'duration': 8,
'aspect_ratio': '16:9',
'seed': -1,
'sound': True,
'image_url': 'https://example.com/first-frame.jpg',
'image_end_url': 'https://example.com/last-frame.jpg'
}
)
result = response.json()
task_id = result['data']['task_id']
# Step 1: Submit generation request
curl -X POST https://api.flaq.ai/api/v1/video/task \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model_name": "seedance-v2.0-mini-image-to-video",
"prompt": "Gentle camera push-in; leaves rustle softly in the breeze",
"resolution": "720p",
"duration": 8,
"aspect_ratio": "16:9",
"seed": -1,
"sound": true,
"image_url": "https://example.com/first-frame.jpg",
"image_end_url": "https://example.com/last-frame.jpg"
}'
# Step 2: Poll for results
# Replace {task_id} with the task_id returned from the submit response
curl -X GET "https://api.flaq.ai/api/v1/video/{task_id}" \
-H "Authorization: Bearer YOUR_API_KEY"
# Step 2: Poll for results
task_id = response.json()['data']['task_id']
poll_url = f"https://api.flaq.ai/api/v1/video/{task_id}"
while True:
poll_result = requests.get(poll_url, headers={'Authorization': 'Bearer YOUR_API_KEY'}).json()
status = poll_result['data']['task_status']
if status == 'succeed':
print(poll_result['data']['task_result']['videos'][0]['url'])
break
if status == 'failed':
print(poll_result['data']['task_status_msg'])
break
time.sleep(10)