حرّك الصور باستخدام Seedance 2.5 Image-to-Video API المدعومة من ByteDance. استخدم إطارًا أول إلزاميًا وإطارًا أخيرًا اختياريًا، مع مدة 4–30 ثانية وصوت ودقة عالية 480p أو 720p.
تحوّل واجهة Seedance 2.5 من ByteDance لتحويل الصورة إلى فيديو صورة الإطار الأول المطلوبة إلى مقطع فيديو متقن للمطورين والفرق الإبداعية. ويمكن لإطار أخير اختياري توجيه كيفية انتهاء اللقطة، بينما تدعم عناصر التحكم المرنة في الجودة والمدة والصوت المُنشأ سير عمل الإنتاج على Bestimage AI. تلائم الواجهة تحريك المنتجات ومحتوى العلامات التجارية والفيديو الاجتماعي وحركة الشخصيات والتطبيقات الإبداعية الآلية.
ملاحظة صورة الإطار الأول مطلوبة. الإطار الأخير اختياري، ولا يتيح هذا النموذج التحكم في نسبة العرض إلى الارتفاع. يُرجى التأكد من امتثال صورك ومطالباتك لإرشادات ByteDance الخاصة بسلامة المحتوى.
Seedance 2.5 مقابل Seedance 2.0 لتحويل الصورة إلى فيديو
يحرّك كلا النموذجين الصور المصدر باستخدام إنشاء الفيديو من ByteDance.
يوفر Seedance 2.5 إدخال الإطار الأول، والتوجيه الاختياري بالإطار الأخير، ومرونة جودة الإخراج ومدته
والتحكم في الصوت المُنشأ ضمن سير عمل Bestimage AI الحالي.
Seedance 2.5 مقابل Veo 3.1 Fast لتحويل الصورة إلى فيديو
يوفر Veo 3.1 Fast تحريكًا سريعًا ضمن عائلة نماذج Google.
يقدم Seedance 2.5 بديلًا من ByteDance مع توجيه اختياري بالإطار الأخير وتحكم مدمج في الصوت من أجل
مسارات الإنتاج المعتمدة على الصور.
Seedance 2.5 مقابل Kling لتحويل الصورة إلى فيديو
يدعم Kling تحريك الشخصيات والمشاهد انطلاقًا من الصور. يتميز Seedance 2.5
بسير عمل مركز لواجهة Bestimage AI مع عناصر تحكم واضحة في الإطار الأول والإطار الأخير الاختياري والمدة والجودة
والصوت.
Seedance 2.5 مقابل Runway لتحويل الصورة إلى فيديو
يجمع Runway بين تحريك الصور وأدوات التحرير التفاعلية. صُممت واجهة Seedance
2.5 لتحويل الصورة إلى فيديو للطلبات البرمجية القابلة للتكرار والتكامل القابل للتوسع في المنتجات
وخطوط العمل الآلية.
Seedance 2.5 مقابل Pika لتحويل الصورة إلى فيديو
يقدم Pika تجارب تحريك صور موجهة إلى صنّاع المحتوى. يوفر Seedance 2.5
واجهة تركز على المطورين لتحريك المنتجات والمحتوى الاجتماعي والعلامات التجارية والشخصيات مع توجيه اختياري لنقطة النهاية.
// 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.5-image-to-video',
prompt: 'Gentle camera push-in; leaves rustle softly in the breeze',
resolution: '720p',
duration: 8,
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.5-image-to-video',
'prompt': 'Gentle camera push-in; leaves rustle softly in the breeze',
'resolution': '720p',
'duration': 8,
'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.5-image-to-video",
"prompt": "Gentle camera push-in; leaves rustle softly in the breeze",
"resolution": "720p",
"duration": 8,
"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)