Skip to main content
ستتناول هذه المقالة شرح توصيل SeeDance Videos Generation API، والتي يمكن من خلالها إنشاء مقاطع الفيديو الرسمية من SeeDance عن طريق إدخال معلمات مخصصة.

عملية التقديم

لاستخدام SeeDance Videos Generation API، يجب أولاً الذهاب إلى لوحة تحكم Ace Data Cloud للحصول على رمز API الخاص بك، احتفظ به للاستخدام لاحقًا. إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد الانتهاء، سيتم إرجاعك تلقائيًا إلى الصفحة الحالية. يمكن استخدام رمز API واحد لاستدعاء جميع خدمات المنصة، دون الحاجة لتقديم طلب لكل خدمة على حدة. عند التقديم لأول مرة، ستحصل على رصيد مجاني لتجربته؛ وعند نفاد الرصيد، يمكنك إعادة شحن الرصيد العام في لوحة التحكم.
📘 الوثائق الكاملة: SeeDance Videos Generation API →

الاستخدام الأساسي

أولاً، يجب أن نفهم طريقة الاستخدام الأساسية، وهي إدخال كلمة المرور content.text، النوع content.type=text، والنموذج model، للحصول على النتيجة المعالجة، المحتوى المحدد كما يلي:

يمكننا أن نرى هنا أننا قمنا بتعيين رؤوس الطلب، بما في ذلك:
  • accept: نوع الاستجابة التي ترغب في تلقيها، هنا يتم ملؤها بـ application/json، أي بتنسيق JSON.
  • authorization: مفتاح استدعاء API، يمكن اختياره مباشرة بعد التقديم.
بالإضافة إلى ذلك، تم تعيين جسم الطلب، بما في ذلك:
  • model: نموذج إنشاء الفيديو.
    • سلسلة Seedance 1.x: doubao-seedance-1-0-pro-250528، doubao-seedance-1-0-pro-fast-251015، doubao-seedance-1-5-pro-251215، doubao-seedance-1-0-lite-t2v-250428، doubao-seedance-1-0-lite-i2v-250428.
    • سلسلة Seedance 2.0 (تدعم الإشارة متعددة الوسائط): doubao-seedance-2-0-260128 (قياسي)، doubao-seedance-2-0-fast-260128 (سريع)، doubao-seedance-2-0-mini-260615 (خفيف).
    • Seedance 2.5: doubao-seedance-2-5-260628، تدعم حتى 30 ثانية، مرجع صوتي نقي، المزيد من المواد، تحرير الفيديو وإطالة المدة.
  • content: مصفوفة المحتوى المدخل، يمكن أن يكون type إما text (كلمة المرور)، image_url (صورة مرجعية)، audio_url (صوت مرجعي)، video_url (فيديو مرجعي). يمكن تحديد استخدام الصورة من خلال role: first_frame (الإطار الأول) / last_frame (الإطار الأخير) / reference_image (مرجع الشخصية / الموضوع).
  • resolution: دقة الإخراج، الخيارات المتاحة هي 480p / 720p / 1080p / 4k. تدعم 2.5 دقة 480p، 720p، 1080p؛ تدعم 2.0 Fast/Mini دقة 480p، 720p؛ تدعم 2.0 Standard حتى 4k.
  • ratio: نسبة العرض إلى الارتفاع، الخيارات المتاحة هي 16:9 / 4:3 / 1:1 / 3:4 / 9:16 / 21:9 / adaptive.
  • duration: مدة الفيديو (بالثواني، عدد صحيح). سلسلة 1.0 من 2–12؛ 1.5 Pro من 4–12؛ سلسلة 2.0 من 4–15؛ 2.5 من 4–30. تدعم 1.5/2.x -1 (مدة تلقائية).
  • seed: البذور العشوائية، عدد صحيح، من -1 إلى 4294967295.
  • camerafixed: هل يتم تثبيت الكاميرا، true / false.
  • watermark: هل يتم إضافة علامة مائية، true / false.
  • generate_audio: هل يتم إنشاء فيديو صوتي، true / false، تدعم Seedance 1.5 Pro وسلسلة 2.x.
  • return_last_frame: هل يتم إرجاع URL لصورة الإطار الأخير من الفيديو في النتيجة.
  • omni_reference_task_type: فقط 2.5؛ auto / reference / edit / extend.
  • output_format: فقط 2.5؛ mp4 / mov، الافتراضي هو mp4.
  • tools: فقط 2.5؛ تدعم حاليًا أداة البحث عبر الإنترنت web_search، يمكن تحديد عدد النتائج، عدد الكلمات الرئيسية ومصدر البحث.
  • priority: 2.5 يمكن اختيار أولوية المهمة، عدد صحيح من 0–9، الافتراضي هو 0.
  • safety_identifier: معرف مستخدم نهائي مستقر بحد أقصى 64 حرفًا؛ يرجى استخدام هاش أو معرف داخلي مجهول، لا تدخل الاسم أو البريد الإلكتروني أو رقم الهاتف.
  • execution_expires_after: وقت انتهاء المهمة (بالثواني)، النطاق من 3600 إلى 259200.
  • callback_url: عنوان رد الاتصال غير المتزامن، بعد تعيينه، سيعيد API على الفور task_id، وعند الانتهاء من المهمة، سيتم إرسال النتيجة عبر POST إلى هذا العنوان.
  • async: اختياري، عند تعيينه إلى true، سيعيد الواجهة على الفور task_id، دون الحاجة لتقديم callback_url، ثم يمكن استعلام النتائج من خلال واجهة استعلام المهمة المقابلة.
بعد الاختيار، يمكننا أن نرى أن الكود المقابل قد تم إنشاؤه على الجانب الأيمن، كما هو موضح في الصورة:

انقر على زر “Try” لإجراء الاختبار، كما هو موضح في الصورة أعلاه، هنا حصلنا على النتيجة التالية:
تتضمن النتيجة العائدة عدة حقول، كما هو موضح أدناه:
  • success، حالة مهمة إنشاء الفيديو في ذلك الوقت.
  • task_id، معرف مهمة إنشاء الفيديو في ذلك الوقت.
  • trace_id، معرف تتبع إنشاء الفيديو في ذلك الوقت.
  • data، قائمة نتائج مهمة إنشاء الفيديو في ذلك الوقت.
    • task_id، معرف مهمة إنشاء الفيديو على الخادم في ذلك الوقت.
    • video_url، رابط الفيديو لمهمة إنشاء الفيديو في ذلك الوقت.
    • status، حالة مهمة إنشاء الفيديو في ذلك الوقت.
      • model، النموذج المستخدم لإنشاء الفيديو.
يمكننا أن نرى أننا حصلنا على معلومات الفيديو المرضية، كل ما علينا هو الحصول على الفيديو الذي تم إنشاؤه من SeeDance من خلال رابط الفيديو في data في النتيجة. بالإضافة إلى ذلك، إذا كنت ترغب في إنشاء كود التوصيل المقابل، يمكنك نسخه مباشرة، على سبيل المثال، كود CURL كما يلي:

شرح المعلمات المضمنة

في نهاية content[].text يمكن تمرير معلمات التوليد عن طريق إضافة --parameter value (طريقة قديمة، تحقق ضعيف، عند إدخال خطأ يتم استخدام القيم الافتراضية تلقائيًا). قائمة المعلمات الكاملة كما يلي:
الممارسة الموصى بها: استخدم الحقول العلوية المقابلة مباشرة في جسم الطلب (مثل resolution، ratio، إلخ) لنمط التحقق القوي، عند إدخال خطأ في المعلمات سيتم إرجاع رسالة خطأ واضحة، مما يسهل تحديد المشكلة.

توليد فيديو صوتي

يدعم Seedance 1.5 Pro وسلسلة 2.x توليد فيديوهات مع صوت من خلال معلمة generate_audio:
لا تدعم سلسلة 1.0 هذه المعلمة.

توليد وتحرير وتمديد Seedance 2.5

يدعم doubao-seedance-2-5-260628 دقة 480p / 720p / 1080p، مدة من 4 إلى 30 ثانية أو مدة تلقائية، ويزيد الحد الأقصى للمواد إلى 30 صورة مرجعية، 10 مقاطع فيديو مرجعية، 10 مقاطع صوتية مرجعية (بحد أقصى 50). كما يدعم 2.5 تمرير الصوت المرجعي فقط، دون الحاجة لتوفير الصور أو الفيديو في نفس الوقت. يمكن تخطي توليد الوضع الكامل العادي omni_reference_task_type، وتعيينه إلى auto، أو تعيينه صراحة إلى reference. يجب تمرير reference_video لتحرير الفيديو وتمديده:
  • reference: يجب تمرير صورة مرجعية واحدة على الأقل أو فيديو مرجعي أو صوت مرجعي؛ تدعم 2.5 تمرير الصوت المرجعي فقط.
  • edit: يجب استخدام ratio: adaptive و duration: -1؛ يتم احتساب مدة الإخراج بناءً على النتيجة الفعلية.
  • extend: يجب استخدام ratio: adaptive؛ يمكن أن تكون duration من 4 إلى 30 أو -1.
  • auto: يختار النموذج تلقائيًا التوليد أو التحرير أو التمديد بناءً على الكلمات الدلالية والمواد.
  • عند عدم تطابق نوع المهمة مع المواد أو الكلمات الدلالية، ستفشل المهمة وتعيد خطأ معلمات يمكن تحديده؛ يرجى ضبطه وفقًا للقيود المذكورة أعلاه وإعادة تقديمه.

توليد الفيديو من الصورة الإطارية الأولى

إذا كنت ترغب في توليد فيديو من صورة، يجب أن تحتوي معلمة content أولاً على عنصر من النوع image_url، ويجب أن يكون حقل image_url بتنسيق كائن: {"url": "https://..."} أو بتنسيق Base64 {"url": "data:image/png;base64,..."}.
ملاحظة: لا يدعم image_url تمرير تنسيق سلسلة مباشرة (مثل "image_url": "https://cdn.acedata.cloud/e724d7f13d.png")، يجب استخدام تنسيق الكائن "image_url": {"url": "https://..."}، وإلا ستعود خطأ 400.
الكود المقابل:
عند النقر على التشغيل، يمكنك أن ترى أنك ستحصل على نتيجة على الفور، كما يلي:
يمكنك أن ترى أن التأثير الناتج هو فيديو تم إنشاؤه من الصورة، والنتيجة مشابهة لما سبق.

توليد الفيديو من الصورة الإطارية الأولى والأخيرة

إذا كنت ترغب في توليد فيديو من الصورة الإطارية الأولى والأخيرة، يجب أولاً تمرير معلمة content من النوع image_url، وتعيين role إلى first_frame و last_frame، يمكنك تحديد المحتوى كما يلي:
  • role: تحديد الإطار الأول أو الأخير.
  • image_url
    • url رابط الصورة في نفس الوقت يجب أن تحتوي content أيضًا على نوع text ككلمات دلالية.
يمكنك رؤية أنه تم الحصول على نتيجة على الفور، كما يلي:
يمكنك أن ترى أن التأثير الناتج هو فيديو تم إنشاؤه للشخصية، والنتيجة مشابهة لما سبق.

مرجع الشخصيات والوسائط المتعددة (Seedance 2.0)

سلسلة Seedance 2.0 (doubao-seedance-2-0-260128، doubao-seedance-2-0-fast-260128، doubao-seedance-2-0-mini-260615) تدعم reference_image و reference_audio و reference_video. يمكنك استخدام المواد الخاصة بك أو المرخصة للحفاظ على اتساق الشخصية والموضوع والحركة وزاوية الكاميرا والصوت والإيقاع.
يرجى تحميل المواد الخاصة بك أو المرخصة فقط. تختلف طرق دعم المواد الحقيقية بين النماذج؛ يبقى تنسيق الطلب كما هو، وإذا كانت المواد لا تتوافق مع المتطلبات، سيتم إرجاع خطأ واضح.
نقاط الاستخدام:
  • فقط سلسلة Seedance 2.0 تدعم reference_image؛ يرجى استخدام first_frame / last_frame (إطارات البداية والنهاية للفيديو المولد).
  • إطارات البداية والنهاية للفيديو المولد، وإطارات البداية والنهاية الكاملة، والمرجع متعدد الوسائط هي ثلاثة سيناريوهات متعارضة: لا يمكن استخدام first_frame / last_frame مع reference_image / reference_video / reference_audio.
  • إذا كنت ترغب في تحديد إطارات البداية والنهاية في المرجع متعدد الوسائط، يرجى وضع علامة على الصورة كـ reference_image، وذكر في النص “الصورة 1 كإطار بداية” أو “الصورة 2 كإطار نهاية”؛ إذا كنت بحاجة إلى قفل إطارات البداية والنهاية بدقة، استخدم فقط first_frame / last_frame.
  • الحد الأقصى لعدد المراجع متعددة الوسائط: image_url بحد أقصى 9 صور؛ تدعم 2.0 أيضًا audio_url (role هو reference_audio، بحد أقصى 3) و video_url (role هو reference_video، بحد أقصى 3).
  • متطلبات مواد الصوت المرجعية (audio_url): التنسيق wav / mp3؛ مدة كل مقطع 2~15 ثانية، بحد أقصى 3 مقاطع وإجمالي مدة لا تتجاوز 15 ثانية؛ لا يتجاوز كل مقطع 15 ميغابايت. إذا تجاوزت مدة المقطع، ستفشل معالجة المواد في مرحلة المعالجة.
  • متطلبات مواد الفيديو المرجعية (video_url): التنسيق mp4 / mov؛ مدة كل مقطع 2~15 ثانية، بحد أقصى 3 مقاطع وإجمالي مدة لا تتجاوز 15 ثانية.
  • يُنصح باستخدام صور مرجعية تحتوي على شخص واحد، وجهه واضح، وصورة واضحة، وغير محجوبة، كلما كانت ملامح الوجه أوضح، زادت درجة التشابه.

المثال الأول: الحفاظ على مظهر الشخصية في لقطة قريبة

قم بإدخال صورة وجه، ليبتسم الشخص أمام الكاميرا ويهز يده. الكود المقابل:
النتيجة المرجعة كما يلي، الفيديو الناتج يظهر الشخصية متوافقة مع الصورة المرجعية:

المثال الثاني: وضع نفس الشخص في مشهد جديد

تكمن قوة reference_image في: الاحتفاظ فقط بـ هوية الشخصية، بينما يتم تحديد المشهد والملابس والحركة بالكامل بواسطة النص. هنا نستخدم نفس صورة الوجه، لنرى الشخصية ترتدي معطف بيج وتسير في حديقة خريف مشمسة:
النتيجة المرجعة كما يلي، مظهر الشخصية محفوظ، بينما تم تغيير المشهد إلى حديقة خريف.
💡 إذا كنت ترغب في جعل الشخص يعيد إنتاج التكوين الموجود في الصورة بدقة (بدلاً من “نفس الشخص في مشهد مختلف”)، يمكنك استخدام first_frame (الإطار الأول للفيديو) لبدء الفيديو من هذه الصورة.

استدعاء غير متزامن

نظرًا لأن واجهة برمجة تطبيقات توليد فيديوهات SeeDance تستغرق وقتًا طويلاً (حوالي 1-2 دقيقة)، يمكنك استخدام حقل callback_url في وضع غير متزامن، لتجنب احتلال اتصال HTTP لفترة طويلة. العملية الكلية: عند بدء العميل الطلب، يتم تحديد callback_url، وتقوم واجهة برمجة التطبيقات بإرجاع استجابة تحتوي على task_id على الفور؛ بعد الانتهاء من المهمة، ستقوم المنصة بإرسال النتائج المولدة إلى callback_url بصيغة POST JSON، وستحتوي النتائج أيضًا على task_id لربطها.
عند الانتهاء من المهمة، المحتوى الذي يتم دفعه إلى callback_url هو كما يلي:
حقل task_id في النتائج يتطابق مع ما تم إرجاعه عند الطلب، ومن خلال هذا الحقل يمكن تحقيق الربط بين المهام.

معالجة الأخطاء

عند استدعاء واجهة برمجة التطبيقات، إذا واجهت خطأ، ستقوم واجهة برمجة التطبيقات بإرجاع رمز الخطأ والمعلومات المناسبة. على سبيل المثال:
  • 400 token_mismatched:طلب غير صحيح، ربما بسبب معلمات مفقودة أو غير صالحة.
  • 400 api_not_implemented:طلب غير صحيح، ربما بسبب معلمات مفقودة أو غير صالحة.
  • 401 invalid_token:غير مصرح، رمز تفويض غير صالح أو مفقود.
  • 429 too_many_requests:طلبات كثيرة جدًا، لقد تجاوزت الحد الأقصى لمعدل الطلبات.
  • 500 api_error:خطأ في الخادم الداخلي، حدث خطأ ما على الخادم.

مثال على استجابة الخطأ

الخاتمة

من خلال هذه الوثيقة، لقد تعرفت على كيفية استخدام واجهة برمجة تطبيقات توليد فيديوهات Seedance لإنشاء فيديوهات من النصوص، والإطارات الأولى والأخيرة، والمرجع متعدد الوسائط، بالإضافة إلى استخدام Seedance 2.5 لتحرير أو تمديد الفيديو. نأمل أن تساعدك هذه الوثيقة في إتمام تكامل واجهة برمجة التطبيقات؛ إذا كانت لديك أي أسئلة، يرجى الاتصال بالدعم الفني.