رفتن به محتوای اصلی
مستندات APIمسیرهاImage to Video

تولید ویدیو از عکس

یک یا چند عکس مرجع را همراه با توضیحی کوتاه بفرستید تا به ویدیو تبدیل شود. از فریم اول و آخر، ورودی‌های مرجع چندرسانه‌ای و ویرایش ویدیو پشتیبانی می‌شود.

مسیر درخواست

POSThttps://bananaai.ir/api/v1/videos/image-to-video

از یک یا چند عکس، ویدیو می‌سازد. ساده‌ترین حالت یک عکس در image_urls و یک پرامپت است؛ مدل‌های Seedance و Kling 3.0 فریم آخر را هم می‌پذیرند و Seedance می‌تواند از عکس، ویدیو و صدای مرجع هم استفاده کند.

مدل‌ها

مدلمدترزولوشنورودی
wan-3Wan 3.0
۲ تا ۳۰ ثانیه480p · 720p · 1080pفریم اول و آخر، تا ۱۰ عکس / ۵ ویدیو / ۵ صدای مرجع
wan-3-primeWan 3.0 Prime
۲ تا ۳۰ ثانیه480p · 720p · 1080pهمان ورودی‌های Wan 3.0 با کیفیت بالاتر
seedance-2-5Seedance 2.5
۴ تا ۳۰ ثانیه480p · 720p · 1080pفریم اول و آخر، تا ۳۰ عکس / ۱۰ ویدیو / ۱۰ صدای مرجع
seedance-2Seedance 2.0
۴ تا ۱۵ ثانیه480p · 720p · 1080p · 4Kفریم اول و آخر، تا ۹ عکس / ۳ ویدیو / ۳ صدای مرجع
seedance-2-miniSeedance 2.0 Mini
۴ تا ۱۵ ثانیه480p · 720pفریم اول و آخر، ورودی‌های مرجع
grok-imagine-videoGrok Imagine Video
۶ تا ۱۵ ثانیه480p · 720pیک عکس ورودی
gemini-omni-videoGemini Omni 1.1 Flash
۴ / ۸ / ۱۰ ثانیه360p · 720p · 1080p · 4Kتا ۳ عکس و اختیاری یک ویدیوی مرجع (video_list)
kling-v3-turboKling 3 Turbo
۳ تا ۱۵ ثانیه720p · 1080pیک عکس ورودی
kling-3.0Kling 3.0
۳ تا ۱۵ ثانیهstd · pro · 4K (mode)فریم اول و اختیاری فریم آخر
veo-3.1Google Veo 3.1
فقط ۴ / ۶ / ۸ ثانیه720p · 1080p · 4Kفریم اول و اختیاری فریم آخر

پارامترهای درخواست

بدنهٔ درخواست باید JSON باشد. پارامترهای مشترک همهٔ مدل‌ها:

promptstringالزامی
توضیح حرکت یا صحنه‌ای که باید از روی عکس ساخته شود.
مثال:Slow cinematic orbit around the product on a clean studio pedestal
image_urlsstring[]اختیاری
آرایهٔ نشانی عکس‌ها. در بیشتر مدل‌ها آیتم اول به‌عنوان فریم نخست استفاده می‌شود. اگر first_frame_url را نفرستید، این فیلد الزامی است.
مثال:["https://example.com/source.jpg"]
first_frame_urlstringاختیاری
نشانی فریم نخست؛ جایگزین صریح آیتم اول image_urls.
last_frame_urlstringاختیاریSeedance، Kling 3.0، Veo
نشانی اختیاری فریم پایانی. مدل بین دو فریم حرکت می‌سازد.
modelstringاختیاری
شناسهٔ مدل از جدول بالا.
پیش‌فرض:seedance-2
durationintegerاختیاری
مدت ویدیو به ثانیه در بازهٔ مجاز مدل. با reference_video_urls در Seedance 2.5 نادیده گرفته می‌شود.
پیش‌فرض:5 (Veo: 8)
resolutionstringاختیاری
رزولوشن خروجی طبق جدول مدل‌ها. Kling 3.0 به‌جای این فیلد از mode استفاده می‌کند.
پیش‌فرض:720pمقادیر مجاز:360p480p720p1080p4k
aspect_ratiostringاختیاری
نسبت تصویر خروجی. auto ابعاد عکس ورودی را حفظ می‌کند.
پیش‌فرض:9:16 (Veo: 16:9)مقادیر مجاز:16:99:161:1auto
metadataobjectاختیاری
جفت‌های کلید/مقدار دلخواه (تا ۱۶ کلید، مقدار حداکثر ۵۰۰ کاراکتر) مثل شناسهٔ سفارش شما. در پاسخ تسک و بدنهٔ وب‌هوک عیناً برمی‌گردد تا نتیجه را به رکورد خودتان وصل کنید.
مثال:{"order_id":"1042"}

پارامترهای ویژهٔ مدل

generate_audiobooleanاختیاریفقط Seedance
تولید صدا همراه با ویدیو.
پیش‌فرض:false
soundbooleanاختیاریفقط Kling 3.0
فعال‌کردن صدا. نرخ «با صدا» در جدول قیمت اعمال می‌شود.
پیش‌فرض:false
modestringاختیاریفقط Kling 3.0
کیفیت خروجی: std (720p)، pro (1080p) یا 4K.
پیش‌فرض:stdمقادیر مجاز:stdpro4K
video_listobject[]اختیاریفقط Gemini Omni
یک کلیپ مرجع با url، start و ends (ثانیه). با ویدیوی مرجع، نرخ ثابت «با ورودی ویدیو» اعمال می‌شود.
مثال:[{"url":"https://example.com/ref.mp4","start":0,"ends":4}]

ورودی‌های مرجع Seedance

مدل‌های Seedance علاوه بر فریم اول و آخر، می‌توانند از چند عکس، ویدیو و فایل صوتی به‌عنوان مرجع سبک، شخصیت یا حرکت استفاده کنند. محدودیت‌ها در Seedance 2.5 بازتر است.

reference_image_urlsstring[]اختیاریSeedance
عکس‌های مرجع؛ حداکثر ۹ عکس (Seedance 2.5: تا ۳۰ عکس).
reference_video_urlsstring[]اختیاریSeedance
ویدیوهای مرجع؛ حداکثر ۳ ویدیو (Seedance 2.5: تا ۱۰ ویدیو، هر کلیپ ۲ تا ۳۰ ثانیه و مجموع حداکثر ۳۰ ثانیه).
reference_audio_urlsstring[]اختیاریSeedance
فایل‌های صوتی مرجع؛ حداکثر ۳ فایل (Seedance 2.5: تا ۱۰ فایل، هر فایل ۲ تا ۳۰ ثانیه و مجموع حداکثر ۳۰ ثانیه).
reference_video_duration_secondsnumberاختیاریSeedance
مجموع مدت ویدیوهای مرجع برای محاسبهٔ اعتبار. در Seedance 2.5 با reference_video_urls، اعتبار برابر (مدت مرجع + مدت خروجی) × نرخ «با ورودی ویدیو» است.

دسترسی به فایل‌های مرجع

همهٔ نشانی‌های عکس، ویدیو و صدا باید برای سرویس ما قابل دانلود باشند. لینک‌های نیازمند ورود یا لینک‌های موقت منقضی‌شده باعث ناموفق شدن تسک می‌شوند (بدون کسر اعتبار).

نمونه درخواست

bash
curl -X POST "https://bananaai.ir/api/v1/videos/image-to-video" \
  -H "Authorization: Bearer ba_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "grok-imagine-video",
  "prompt": "Slow cinematic orbit around the product",
  "image_urls": [
    "https://example.com/product.jpg"
  ],
  "duration": 8,
  "resolution": "720p",
  "aspect_ratio": "auto"
}'
نمونهٔ فریم اول و آخر با Seedance 2.5
{
  "model": "seedance-2-5",
  "prompt": "Smooth dolly-in as the lights fade to dusk",
  "first_frame_url": "https://example.com/frame-start.jpg",
  "last_frame_url": "https://example.com/frame-end.jpg",
  "duration": 6,
  "resolution": "1080p",
  "aspect_ratio": "16:9",
  "generate_audio": true
}

پاسخ

JSON
1{
2  "id": "task_abc123",
3  "status": "pending",
4  "model": "grok-imagine-video",
5  "credits_reserved": 144,
6  "created_at": "2026-07-11T12:00:00.000Z"
7}

دریافت نتیجه

وضعیت را از GET /api/v1/tasks/:id پیگیری کنید. پس از completed، نشانی ویدیو در آرایهٔ videos قرار دارد؛ ساختار کامل تسک و الگوی پیگیری در پیگیری وضعیت تسک.

JSON
1{
2  "id": "task_abc123",
3  "status": "completed",
4  "type": "video",
5  "model": "grok-imagine-video",
6  "prompt": "Slow cinematic orbit around the product",
7  "images": [],
8  "videos": ["https://cdn.bananaai.ir/.../output.mp4"],
9  "error": null,
10  "credits_reserved": 144,
11  "credits_deducted": true,
12  "created_at": "2026-07-11T12:00:00.000Z",
13  "completed_at": "2026-07-11T12:02:05.000Z"
14}