使用 Seedance 2.0 Reference API 创建参考引导视频。可使用视频参考、真实人物支持、灵活比例和稳定输出,让动作、镜头和风格方向更容易控制。 适合需要参考动作、人物表现或画面节奏的短视频与广告素材。
ByteDance Seedance V2.0 参考视频生成视频 API 为需要精确视觉一致性控制的开发者和创意团队提供专业级 AI 视频生成服务。这一先进的参考转视频 API 集成方案,让您能够使用参考视频结合提示词生成 480p 和 720p 分辨率的高质量视频片段,用于引导运动、节奏和视觉连续性。基于 ByteDance 的双分支扩散 Transformer 架构与音频支持,Seedance V2.0 模型在 Best Image AI 上为品牌一致、角色驱动的视频制作提供稳定的源视频引导能力。
注意 请确保您的参考视频、可选音频和提示词符合 ByteDance 的内容安全准则。如果发生错误,请检查内容中是否包含受限材料,进行调整后重试。
Seedance V2.0 参考视频生成视频 vs. Seedance V2.0 文字生成视频 Seedance V2.0 文字生成视频仅从文字描述生成视频。Seedance V2.0 参考视频生成视频 API 新增参考视频输入,用于实现更强的源内容引导与视觉连续性,是品牌一致、角色驱动视频制作的合适选择。
Seedance V2.0 参考视频生成视频 vs. Kling 3.0 参考生成 Kling 3.0 提供基于参考的生成,在人体动作合成方面表现出色。Seedance V2.0 参考视频生成视频 API 通过参考视频输入、音频支持、6 种宽高比格式和最长 15 秒时长实现差异化,更适合需要源视频引导的场景。
Seedance V2.0 参考视频生成视频 vs. Runway Gen-3 Custom Mode Runway Gen-3 Custom Mode 提供主体驱动生成,具备创意控制功能。Seedance V2.0 参考视频生成视频 API 提供参考视频输入、音频支持、可选固定镜头控制和 6 种宽高比格式,适合需要源视频引导的生产流程。
Seedance V2.0 参考视频生成视频 vs. Pika 参考生成 Pika 提供基于参考的风格化功能和用户友好界面。Seedance V2.0 参考视频生成视频 API 提供程序化访问、参考视频输入、音频支持和最长 15 秒时长,对于需要可扩展、身份一致视频生成的开发者更具优势。
Seedance V2.0 参考视频生成视频 vs. Luma Ray 参考模式 Luma Ray 以快速生成和主体保真度著称。Seedance V2.0 参考视频生成视频 API 提供相当的保真度,并具备参考视频输入、音频支持、6 种宽高比格式,且无需管理基础设施,非常适合大规模构建品牌一致视频流水线的开发者。
// 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-reference-to-video',
prompt: 'Cinematic product reveal with smooth motion matching the reference style',
resolution: '720p',
duration: 8,
aspect_ratio: '16:9',
sound: true,
camera_fixed: false,
audio_url: 'https://example.com/reference-audio.mp3',
video_url: 'https://example.com/reference-video.mp4'
})
});
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-reference-to-video',
'prompt': 'Cinematic product reveal with smooth motion matching the reference style',
'resolution': '720p',
'duration': 8,
'aspect_ratio': '16:9',
'sound': True,
'camera_fixed': False,
'audio_url': 'https://example.com/reference-audio.mp3',
'video_url': 'https://example.com/reference-video.mp4',
}
)
result = response.json()
task_id = result['data'][]
# 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-reference-to-video",
"prompt": "Cinematic product reveal with smooth motion matching the reference style",
"resolution": "720p",
"duration": 8,
"aspect_ratio": "16:9",
"sound": true,
"camera_fixed": false,
"audio_url": "https://example.com/reference-audio.mp3",
"video_url": "https://example.com/reference-video.mp4"
}'
# 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)