التقديم والاستخدام
لاستخدام واجهة برمجة تطبيقات Luma Videos، يمكنك أولاً زيارة صفحة Luma Videos Generation API والنقر على زر “Acquire” للحصول على الشهادات المطلوبة:
إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد تسجيل الدخول، سيتم إرجاعك تلقائيًا إلى الصفحة الحالية.
عند التقديم لأول مرة، ستحصل على رصيد مجاني يمكن استخدامه مجانًا.
الاستخدام الأساسي
لإنشاء أي فيديو، يمكنك إدخال نص عشوائي، على سبيل المثال، إذا كنت ترغب في إنشاء فيديو عن رواد الفضاء الذين ينتقلون بين الفضاء والبراكين، يمكنك إدخالAstronauts shuttle from space to volcano، كما هو موضح في الصورة:


prompt: كلمة المرور لتوليد الفيديو.aspect_ratio: نسبة عرض الفيديو، الافتراضي 16:9.end_image_url: اختياري، لتحديد الإطار النهائي.enhancement: اختياري، مفتاح تعزيز الوضوح.loop: هل يتم توليد فيديو متكرر، الافتراضي false.timeout: اختياري، عدد الثواني للمهلة.callback_url: عنوان الاستدعاء غير المتزامن.
- success: هل تم التوليد بنجاح، إذا كان ناجحًا فسيكون
true، وإلا سيكونfalse - task_id: المعرف الفريد لمهمة توليد الفيديو هنا
- video_id: المعرف الفريد للفيديو الناتج عن مهمة توليد الفيديو هنا
- prompt: الكلمات الرئيسية لمهمة توليد الفيديو هنا
- video_url: رابط الفيديو الناتج عن مهمة توليد الفيديو هنا
- video_height: ارتفاع صورة غلاف الفيديو الناتج
- video_width: عرض صورة غلاف الفيديو الناتج
- state: حالة مهمة توليد الفيديو هنا، إذا كانت المهمة مكتملة فستكون
completed. - thumbnail_url: رابط صورة غلاف الفيديو الناتج
- thumbnail_width: عرض صورة غلاف الفيديو الناتج
- thumbnail_height: ارتفاع صورة غلاف الفيديو الناتج
توليد الإطارات المخصصة
إذا كنت ترغب في توليد الفيديو من خلال تخصيص الإطارات الأولى والأخيرة، يمكنك إدخال روابط الصور للإطارات: في هذه الحالة، يمكن تمرير الصورة التالية كإطار أول للفيديو في حقلstart_image_url:
بعد ذلك، نحتاج إلى تخصيص توليد الفيديو بناءً على الإطارات والكلمات الرئيسية، يمكننا تحديد المحتويات كما يلي:
- action: سلوك مهمة توليد الفيديو، عادةً ما يكون التوليد العادي
generateأو التوليد الموسعextend، الافتراضي هوgenerate. - start_image_url: تحديد الإطار الأول للفيديو الناتج.
- end_image_url: تحديد الإطار الأخير للفيديو الناتج.
- prompt: محتوى الكلمات الرئيسية لتوليد الفيديو.


مثال على كيفية التعبئة كما يلي:

ميزات توسيع الفيديو
إذا كنت ترغب في الاستمرار في إنشاء الفيديو الناتج، يمكنك تعيين المعاملaction إلى extend، وإدخال ID الفيديو أو رابط الفيديو الذي تحتاج إلى الاستمرار في إنشائه، يمكن الحصول على ID الفيديو ورابط الفيديو بناءً على الاستخدام الأساسي كما هو موضح في الصورة أدناه:

ملاحظة: هنا،للاستمرار في إنشاء الفيديو، يجب عليك تحميل رابط الفيديو أو ID الفيديو، أدناه توضيح لاستخدام ID الفيديو للتوسيع، بعد ذلك يجب علينا ملء الكلمات الرئيسية لتخصيص إنشاء الفيديو، يمكننا تحديد المحتوى كما يلي:video_idوvideo_urlفي الفيديو هي ID ورابط الفيديو الناتج، إذا كنت لا تعرف كيفية إنشاء الفيديو، يمكنك الرجوع إلى الاستخدام الأساسي المذكور أعلاه لإنشاء الفيديو.
- action: في هذه الحالة، سلوك توسيع الفيديو، يجب أن يكون
extend. - prompt: الكلمات الرئيسية التي تحتاج إلى توسيع الفيديو.
- video_url: الرابط الذي يحتاج إلى توسيع الفيديو الناتج.
- video_id: ID الفريد الذي يحتاج إلى توسيع الفيديو الناتج.
- end_image_url: يمكن تحديد رابط صورة الإطار الأخير لتوسيع الفيديو، وهو معامل اختياري.



بعد ذلك، بناءً على ما سبق، أضف معلومات صورة الإطار الأخير، كما هو موضح أدناه:

ردود غير متزامنة
نظرًا لأن وقت إنشاء الفيديو بواسطة Luma طويل نسبيًا، حوالي 1-2 دقيقة، إذا لم يكن هناك استجابة من API لفترة طويلة، ستظل طلبات HTTP متصلة، مما يؤدي إلى استهلاك موارد النظام الإضافية، لذا فإن هذه API توفر أيضًا دعم الردود غير المتزامنة. 整体流程是:客户端发起请求的时候,额外指定一个callback_url 字段,客户端发起 API 请求之后,API 会立马返回一个结果,包含一个 task_id 的字段信息,代表当前的任务 ID。当任务完成之后,生成音乐的结果会通过 POST JSON 的形式发送到客户端指定的 callback_url,其中也包括了 task_id 字段,这样任务结果就可以通过 ID 关联起来了。
下面我们通过示例来了解下具体怎样操作。
首先,Webhook 回调是一个可以接收 HTTP 请求的服务,开发者应该替换为自己搭建的 HTTP 服务器的 URL。此处为了方便演示,使用一个公开的 Webhook 样例网站 https://webhook.site/,打开该网站即可得到一个 Webhook URL,如图所示:

callback_url 为上述 Webhook URL,同时填入 prompt,如图所示:

内容如下:
task_id 字段,其他的字段都和上文类似,通过该字段即可实现任务的关联。
