> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# توليد الفيديو

> توليد الفيديوهات مع عمليات عامة صريحة، استعلام غير متزامن، ومدخلات وسائط محددة للنموذج.

توليد الفيديو غير متزامن. `POST /v1/videos/generations` يعيد هوية مهمة عامة وعادةً ما يعيد `poll_url`؛ يظهر الفيديو النهائي في ردود الحالة اللاحقة.

عندما يستطيع نموذج Seedance المحدد استخدام مكتبة مواد TokenLab، يتم تجهيز روابط الصور و data URL المضمنة المدعومة كمواد TokenLab قابلة لإعادة الاستخدام قبل التوليد. إذا استغرق التجهيز أكثر من 60 ثانية، أعد المحاولة بعد أن تصبح `auto_material_asset_ids` المعادة في حالة `ACTIVE`. إذا لم يستطع النموذج المحدد استخدام مكتبة المواد، تستمر مدخلات الصور العادية عبر مسار الصور المعتاد.

## العمليات المدعومة

استخدم `operation` صريحة في الإنتاج. يمكن لـ TokenLab استنتاج بعض العمليات من المدخلات، لكن القيم الصريحة للعملية تجعل التحقق والدعم وإعادة المحاولة أكثر وضوحًا.

| العملية              | المدخل المطلوب أو النموذجي                                                       | حالة الاستخدام                               |
| -------------------- | -------------------------------------------------------------------------------- | -------------------------------------------- |
| `text-to-video`      | `prompt`                                                                         | توليد من النص فقط                            |
| `image-to-video`     | `image_url` أو `image` متوافق                                                    | تحريك صورة البداية                           |
| `reference-to-video` | `reference_images` و `video_urls` / `audio_urls` الاختيارية على النماذج المدعومة | الحفاظ على الهوية أو الأسلوب أو مراجع الأصول |
| `start-end-to-video` | `start_image`, `end_image`                                                       | التحكم في الإطارات الأولى والأخيرة           |
| `video-to-video`     | `video_url` أو `task_id` المحدد للنموذج                                          | تحويل أو تحسين مقطع موجود                    |
| `motion-control`     | `image_url` بالإضافة إلى `video_url`                                             | تطبيق مرجع الحركة على موضوع                  |
| `audio-to-video`     | `audio_url`                                                                      | تدفقات الفيديو المشروطة بالصوت               |
| `video-extension`    | `task_id`, `extend_at`, أو حقول التمديد المحددة للنموذج                          | متابعة فيديو تم توليده                       |

## اكتشاف النموذج

```bash theme={null}
curl "https://api.tokenlab.sh/v1/models?recommended_for=video" \\
  -H "Authorization: Bearer sk-your-api-key"
```

استخدم معرفات النماذج التي تعرضها TokenLab في `model`، ثم اختر متغيرات العملية عبر `operation` ومدخلات الوسائط المناسبة. تشمل الأمثلة `wan-2.7` و`happyhorse-1.0` و`viduq3` و`viduq3-mix` و`pixverse-v6` و`kling-3.0-video` و`veo3.1` و`seedance-2.0`؛ لا تستخدم أسماء العمليات الخاصة بالمزوّد كأسماء نماذج في TokenLab.

اقرأ تفاصيل النموذج المحدد قبل الاعتماد على الحقول المتخصصة مثل `reference_images`, `kling_elements`, `output_audio`, `duration`, `resolution`, أو `aspect_ratio`.

## إنشاء الطلب

```bash theme={null}
curl https://api.tokenlab.sh/v1/videos/generations \\
  -H "Authorization: Bearer sk-your-api-key" \\
  -H "Content-Type: application/json" \\
  -d '{
    "model": "veo3.1",
    "operation": "text-to-video",
    "prompt": "لقطة سينمائية هادئة لقط يسير في حديقة مضاءة بأشعة الشمس",
    "duration": 4,
    "aspect_ratio": "16:9"
  }'
```

لإدخال وسائط الإنتاج، يفضل استخدام `https` URLs العامة بدلاً من `data:` URLs المضمنة. إذا كنت تستخدم URLs مؤقتة، أبقها صالحة حتى ينتهي TokenLab من إنشاء المهمة.

## المدخلات والحقول المحددة للنموذج

* طلبات عائلة Veo 3 افتراضيًا تكون على وضع الصوت عند حذف `output_audio`. قم بتعيينها صراحة عندما يدعم النموذج التبديل وتعتمد تجربة المستخدم الخاصة بك على الصوت.
* `kling_elements` مخصصة لطلبات `kling-3.0-video` المشروطة بالصورة. قم بالإشارة إلى كل عنصر في `prompt` كـ `@name`؛ لا تجمعها مع `output_audio=true`.
* بالنسبة إلى عائلة Seedance 2.0، اقرأ [دليل نماذج فيديو Seedance 2.0](/ar/guides/seedance-2-video) قبل استخدام مخرجات 4K أو حدود Fast/Mini أو مدخلات المرجع متعددة الوسائط.
* بالنسبة لـ `grok-imagine-video`، يستخدم `video-to-video` `video_url` العامة بصيغة `.mp4`؛ يجب أن تأتي الحدود المحددة للنموذج مثل `duration` و `resolution` من تفاصيل النموذج.

## PixVerse و HappyHorse

| نموذج                        | العمليات                                                                      | المدخلات                                                                    | الدقة                   | المدة                                                                     | محدد الصوت                        |
| ---------------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ----------------------- | ------------------------------------------------------------------------- | --------------------------------- |
| `pixverse-c1`, `pixverse-v6` | `text-to-video`, `image-to-video`, `start-end-to-video`, `reference-to-video` | `prompt`; `image_url`; `start_image` + `end_image`; `reference_images`      | 360p, 540p, 720p, 1080p | أي عدد صحيح من 1 إلى 15 ثانية                                             | `output_audio`, الافتراضي `false` |
| `pixverse-v5.6`              | `text-to-video`, `image-to-video`, `start-end-to-video`, `reference-to-video` | نفس الحقول مثل C1 و V6                                                      | 360p, 540p, 720p, 1080p | 5 أو 8 أو 10 ثوانٍ؛ 1080p يدعم 5 أو 8 ثوانٍ                               | `output_audio`, الافتراضي `false` |
| `happyhorse-1.0`             | `text-to-video`, `image-to-video`, `reference-to-video`, `video-to-video`     | `prompt`; `image_url`; `reference_images`; `video_url` + `reference_images` | 720p, 1080p             | من 3 إلى 15 ثانية لعمليات التوليد؛ إخراج video-to-video محدود بـ 15 ثانية | لا ترسل `output_audio`            |

في TokenLab، نماذج PixVerse أعلاه لا تقبل `operation=video-extension`.

```bash theme={null}
curl https://api.tokenlab.sh/v1/videos/generations \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "pixverse-v6",
    "operation": "image-to-video",
    "prompt": "A slow camera move through a neon-lit street",
    "image_url": "https://example.com/start.jpg",
    "resolution": "1080p",
    "duration": 5,
    "output_audio": true
  }'
```

## استعلام النتائج

استخدم `poll_url` المعاد أولاً. إذا كنت بحاجة إلى نقطة نهاية ثابتة، استخدم `GET /v1/tasks/{id}` بنفس `id` / `task_id` من رد الإنشاء.

قد تعيد مهام الفيديو المكتملة `video_url` أو `video` أو `videos` بحسب النموذج وعدد المخرجات. اعتبر `billing_transaction_id` معرفًا للفوترة، وليس معرفًا للمهمة.

## الأخطاء الشائعة

* لا تقم بتشفير مسارات حالة الفيديو القديمة؛ يفضل استخدام `poll_url`.
* لا تجمع بين حقول الإطار الأول مع تدفقات صورة مرجعية مخصصة ما لم يسمح بذلك تفاصيل النموذج.
* لا تفترض أن `duration` تصف طول فيديو المرجع المدخل؛ عادةً ما تتحكم في طول المخرجات المولدة.
* لا تقم بإعادة محاولة طلبات الإنشاء بعد انتهاء المهلة دون التحقق مما إذا كانت المهمة قد تم إنشاؤها بالفعل.

## مرجع API

| الموضوع                 | المرجع                                                              |
| ----------------------- | ------------------------------------------------------------------- |
| إنشاء فيديو             | [إنشاء فيديو](/ar/api-reference/video/create-video)                 |
| الحصول على حالة الفيديو | [الحصول على حالة الفيديو](/ar/api-reference/video/get-video-status) |
| الحصول على حالة المهمة  | [الحصول على حالة المهمة](/ar/api-reference/tasks/get-task-status)   |
| إلغاء المهمة            | [إلغاء المهمة](/ar/api-reference/tasks/cancel-task)                 |
| الفواتير والتسعير       | [الفواتير والتسعير](/ar/guides/billing)                             |

## واجهات فيديو بأسلوب OpenAI ومتوافقة مع Volc

استخدم `/v1/videos/generations` لواجهة الفيديو الموحدة في TokenLab عبر النماذج. إذا كنت تنقل تكاملا قائما مع Seedance 2.0 يستخدم بالفعل `content[]` أو طلبات Action بأسلوب Volc، فاستخدم واجهات توافق Seedance تحت `/api/v3`. يستخدم الأسلوبان مفاتيح TokenLab Bearer API والاستعلام غير المتزامن، لكن شكل الطلب والاستجابة مختلف.
