موجز لأهم النقاط
يستخدم واجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو نموذج grok-imagine-video لتحريك صورة ثابتة وتحويلها إلى مقطع فيديو. يمكنك إرسال (POST) عنوان URL الخاص بصورتك، وطلب (prompt)، وإعدادات اختيارية إلى https://api.x.ai/v1/videos/generations. تُرجع واجهة برمجة التطبيقات request_id على الفور. ثم تستعلم (poll) من GET /v1/videos/{request_id} حتى يصبح status "done". تتراوح المدة من 1 إلى 15 ثانية. تبدأ الأسعار من 0.05 دولارًا أمريكيًا للثانية الواحدة لإخراج 480p.
مقدمة
في 28 يناير 2026، أطلقت xAI نموذج grok-imagine-video للوصول العام عبر واجهة برمجة التطبيقات (API). خلال الشهر الأول، أنتج النموذج 1.2 مليار مقطع فيديو واحتل المرتبة الأولى في لوحة صدارة تحويل النص إلى فيديو من Artificial Analysis. تعد ميزة تحويل الصورة إلى فيديو إحدى إمكانياته الرئيسية: حيث تقدم لواجهة برمجة التطبيقات صورة وطلبًا وصفيًا، وتقوم الواجهة بتحريك الصورة وتحويلها إلى مقطع فيديو قصير جاهز للتنزيل بتنسيق MP4.
هذه العملية غير المتزامنة، حيث تقوم بإرسال مهمة ثم تستعلم عن اكتمالها، تقدم تحديًا للاختبار يتجاهله العديد من المطورين. لا يكتمل تكاملك عندما تُرجع عملية POST الأولى رمز 200. بل يكتمل عندما تتأكد من أن حلقة الاستعلام تتعامل مع حالات "processing" و "done" و "failed" بشكل صحيح تحت ظروف الشبكة الحقيقية.
تحل سيناريوهات الاختبار في Apidog هذه المشكلة مباشرةً. يمكنك بناء تسلسل متسلسل: إرسال (POST) إلى /v1/videos/generations، استخراج request_id، تكرار طلب الاستعلام حتى يصبح status == "done"، ثم التأكد من وجود عنوان URL للفيديو. قم بتنزيل Apidog مجانًا لمتابعة شرح الاختبار لاحقًا في هذا الدليل.
ما هي واجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو؟
واجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو هي جزء من منتج xAI لتوليد الفيديو. تعمل ضمن نموذج grok-imagine-video وتقبل صورة كإطار بداية للفيديو الناتج. يقوم النموذج بدراسة محتوى الصورة والطلب النصي، ثم يولد حركة طبيعية لتحريك المشهد.
نقطة نهاية واجهة برمجة التطبيقات هي:
POST https://api.x.ai/v1/videos/generations
يستخدم المصادقة رمز Bearer قياسيًا:
Authorization: Bearer YOUR_XAI_API_KEY
يمكنك الحصول على مفتاحك من وحدة تحكم xAI. تدعم نفس واجهة برمجة التطبيقات أيضًا تحويل النص إلى فيديو (بحذف معلمة image)، وتمديدات الفيديو، وتعديلات الفيديو.
كيف تعمل عملية تحويل الصورة إلى فيديو
تشير معلمة image في نص الطلب إلى الإطار الأول للفيديو الناتج. لا يستبدل النموذج الصورة، بل يبدأ منها. تأتي كل بكسل في الإطار الأول من صورتك المصدر. ثم يتوقع النموذج كيف سيتحرك هذا المشهد إلى الأمام في الوقت بناءً على طلبك.
على سبيل المثال: أنت تقدم صورة لبحيرة جبلية عند شروق الشمس. طلبك يقول "تنتشر تموجات لطيفة عبر الماء مع انجراف ضباب الصباح". الإطار الأول للفيديو الناتج هو صورتك. تُظهر الإطارات اللاحقة الماء والضباب يتحركان وفقًا للطلب.
هذا يختلف عن تحويل النص إلى فيديو، حيث يولد النموذج الإطار الأول بنفسه. يمنحك تحويل الصورة إلى فيديو تحكمًا دقيقًا في المشهد الأولي.
يجب أن تختار تحويل الصورة إلى فيديو عندما:
- لديك صور منتجات أو مناظر طبيعية أو صور شخصية موجودة ترغب في تحويلها إلى حركة.
- تحتاج أصول علامتك التجارية إلى هوية بصرية متسقة في الإطار الأول.
- تريد أن تبدو الحركة متجذرة في مشهد حقيقي أو محدد.
يجب أن تختار تحويل النص إلى فيديو عندما:
- تستكشف أفكارًا بصرية بدون صورة مرجعية.
- تريد أن يقرر النموذج تكوين المشهد بالكامل.
- سرعة التكرار أهم من دقة الإطار الأول.
المتطلبات الأساسية
قبل إجراء مكالمتك الأولى، تحتاج إلى:
- حساب xAI على console.x.ai.
- مفتاح API من وحدة تحكم xAI. احتفظ به في متغير بيئة، وليس مشفرًا بشكل ثابت.
- Python 3.8+ أو Node.js 18+ (تستخدم الأمثلة في هذا الدليل كلاهما).
- عنوان URL لصورة متاح للعامة، أو صورة مشفرة بنظام base64 كـ URI للبيانات.

عيّن مفتاحك كمتغير بيئة:
export XAI_API_KEY="your_key_here"
ثبّت حزمة xAI Python SDK إذا كنت تريد العميل عالي المستوى:
pip install xai-sdk
بالنسبة لطلبات HTTP الخام، لا توجد حزم إضافية مطلوبة بخلاف requests (Python) أو fetch (Node.js).
إجراء طلبك الأول لتحويل الصورة إلى فيديو
باستخدام curl
curl -X POST https://api.x.ai/v1/videos/generations \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-video",
"prompt": "Gentle waves move across the surface, morning mist rises slowly",
"image": {
"url": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/24701-nature-natural-beauty.jpg/1280px-24701-nature-natural-beauty.jpg"
},
"duration": 6,
"resolution": "720p",
"aspect_ratio": "16:9"
}'
يعود الرد فورًا مع request_id:
{
"request_id": "d97415a1-5796-b7ec-379f-4e6819e08fdf"
}
الفيديو ليس جاهزًا بعد. يحدث التوليد بشكل غير متزامن في بنية xAI التحتية. تحتاج إلى الاستعلام عن النتيجة.
باستخدام بايثون (طلبات خام)
import os
import requests
api_key = os.environ["XAI_API_KEY"]
payload = {
"model": "grok-imagine-video",
"prompt": "Gentle waves move across the surface, morning mist rises slowly",
"image": {
"url": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/24701-nature-natural-beauty.jpg/1280px-24701-nature-natural-beauty.jpg"
},
"duration": 6,
"resolution": "720p",
"aspect_ratio": "16:9"
}
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
response = requests.post(
"https://api.x.ai/v1/videos/generations",
json=payload,
headers=headers
)
data = response.json()
request_id = data["request_id"]
print(f"Job started: {request_id}")
باستخدام صورة base64
إذا كانت صورتك محلية أو غير متاحة للعامة، قم بتشفيرها كـ URI للبيانات:
import base64
with open("my_image.jpg", "rb") as f:
encoded = base64.b64encode(f.read()).decode("utf-8")
payload["image"] = {
"url": f"data:image/jpeg;base64,{encoded}"
}
الاستعلام عن النتيجة
توليد الفيديو غير متزامن. تُرجع واجهة برمجة التطبيقات request_id بينما يتم عرض الفيديو الخاص بك على خوادم xAI. يجب عليك الاستعلام من نقطة نهاية الحالة:
GET https://api.x.ai/v1/videos/{request_id}
يتغير حقل الحالة عبر هذه القيم:
| الحالة | المعنى |
|---|---|
"processing" |
جاري عرض الفيديو |
"done" |
الفيديو جاهز، عنوان URL موجود في الرد |
"failed" |
حدث خطأ ما |
يبدو الرد المكتمل بهذا الشكل:
{
"status": "done",
"video": {
"url": "https://vidgen.x.ai/....mp4",
"duration": 6
},
"progress": 100
}
حلقة استعلام بايثون الكاملة
import time
def poll_video(request_id: str, api_key: str, interval: int = 5) -> dict:
url = f"https://api.x.ai/v1/videos/{request_id}"
headers = {"Authorization": f"Bearer {api_key}"}
while True:
response = requests.get(url, headers=headers)
data = response.json()
status = data.get("status")
print(f"Status: {status} | Progress: {data.get('progress', 0)}%")
if status == "done":
return data["video"]
elif status == "failed":
raise RuntimeError(f"Video generation failed for {request_id}")
time.sleep(interval)
# Usage
video = poll_video(request_id, api_key)
print(f"Video URL: {video['url']}")
print(f"Duration: {video['duration']}s")
حافظ على فترة الاستعلام عند 5 ثوانٍ أو أكثر. تمتلك واجهة برمجة التطبيقات حدًا للمعدل يبلغ 60 طلبًا في الدقيقة (1 في الثانية). يمكن للاستعلام المتكرر والسريع عن وظائف متعددة في وقت واحد أن يستهلك هذا الميزانية بسرعة.
استخدام حزمة xAI Python SDK
تُغلف مكتبة xai-sdk النمط غير المتزامن لك. يقوم client.video.generate() بإرسال المهمة ويتوقف حتى يصبح الفيديو جاهزًا، ويتعامل مع جميع عمليات الاستعلام داخليًا:
from xai_sdk import Client
import os
client = Client(api_key=os.environ["XAI_API_KEY"])
video = client.video.generate(
model="grok-imagine-video",
prompt="Gentle waves move across the surface, morning mist rises slowly",
image={"url": "https://example.com/landscape.jpg"},
duration=6,
resolution="720p",
aspect_ratio="16:9"
)
print(f"Video URL: {video.url}")
print(f"Duration: {video.duration}s")
تتعامل حزمة SDK مع حلقة الاستعلام، وفحوصات الحالة، ونشر الأخطاء. استخدم هذا النهج عندما تريد رمز تطبيق نظيفًا دون إدارة استعلام HTTP بنفسك.
للتحكم الدقيق في فترات الاستعلام، واستراتيجيات إعادة المحاولة، أو التسجيل، يمنحك نهج الطلبات الخام مرونة أكبر.
التحكم في الدقة والمدة ونسبة العرض إلى الارتفاع
تمنحك واجهة برمجة تطبيقات Grok للفيديو تحكمًا مباشرًا في تنسيق الإخراج.
المدة
تقبل معلمة duration أعدادًا صحيحة تتراوح من 1 إلى 15 ثانية. القيمة الافتراضية هي 6.
"duration": 10
مقاطع الفيديو الأطول تكلف أكثر. يكلف مقطع فيديو مدته 10 ثوانٍ ما يقرب من 10 أضعاف تكلفة مقطع مدته ثانية واحدة بنفس الدقة.
الدقة
يتوفر خياران:
| القيمة | الوصف |
|---|---|
"480p" |
الافتراضي. تكلفة أقل، توليد أسرع. |
"720p" |
جودة أعلى. تكلف 0.07 دولار/ثانية مقابل 0.05 دولار/ثانية. |
"resolution": "720p"
نسبة العرض إلى الارتفاع
تتحكم معلمة aspect_ratio في أبعاد إطار الإخراج:
| القيمة | حالة الاستخدام |
|---|---|
"16:9" |
الافتراضي. شاشة عريضة للمشاهد الأفقية. |
"9:16" |
عمودي للجوّال أو قصص وسائل التواصل الاجتماعي. |
"1:1" |
مربع لصور Instagram المصغرة أو وسائل التواصل الاجتماعي. |
"4:3" |
تنسيق التصوير الفوتوغرافي الكلاسيكي أو العروض التقديمية. |
"3:4" |
تصوير بورتريه. |
"3:2" |
قص قياسي للتصوير الفوتوغرافي. |
"2:3" |
تنسيق بورتريه طولي. |
عندما تقدم image، تُضبط نسبة العرض إلى الارتفاع افتراضيًا لتطابق أبعاد الصورة المصدر. قم بتعيينها بشكل صريح للتجاوز أو القص.
استخدام الصور المرجعية لتوجيه النمط
تختلف معلمة reference_images عن معلمة image. فهم الفرق مهم.
image: الصورة المصدر التي تصبح الإطار الأول للفيديو. يقوم النموذج بالتحريك من هذه النقطة البدائية.
reference_images: مصفوفة تصل إلى 7 صور توجه النمط، المحتوى، أو السياق البصري للفيديو المُولد. هذه ليست إطارات في الإخراج. إنها تؤثر على كيفية عرض النموذج للحركة والمظهر.
استخدم reference_images عندما تريد أن يتبنى الفيديو الناتج خصائص بصرية من الأصول الموجودة، ولكن ليس كإطار بداية:
{
"model": "grok-imagine-video",
"prompt": "A product rotating slowly on a clean white surface",
"image": {
"url": "https://example.com/product-shot.jpg"
},
"reference_images": [
{"url": "https://example.com/brand-style-reference-1.jpg"},
{"url": "https://example.com/lighting-reference.jpg"}
],
"duration": 6,
"resolution": "720p"
}
في هذا المثال، product-shot.jpg هو الإطار الأول. توجه الصور المرجعية الإضاءة والمعالجة الأسلوبية.
يمكنك توفير صور مرجعية دون صورة للإطار الأول على الإطلاق. في هذه الحالة، يولد النموذج إخراجًا نصيًا إلى فيديو مع استلهام التوجيه الأسلوبي من المراجع.
توسيع وتعديل مقاطع الفيديو
تدعم واجهة برمجة التطبيقات عمليتين إضافيتين بخلاف التوليد الأولي.
توسيع مقطع فيديو
تأخذ POST /v1/videos/extensions مقطع فيديو موجودًا وتولد ثوانٍ إضافية من حيث توقف. هذا مفيد لإنشاء مقاطع أطول من عدة عمليات توليد، مع البقاء ضمن حد الـ 15 ثانية لكل مكالمة.
curl -X POST https://api.x.ai/v1/videos/extensions \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-video",
"video_id": "your_original_request_id",
"prompt": "The mist continues to lift as sunlight breaks through",
"duration": 5
}'
يتبع الرد نفس النمط غير المتزامن: استعلم (poll) من GET /v1/videos/{request_id} للحصول على المقطع الموسع.
تعديل مقطع فيديو
تُطبق POST /v1/videos/edits تعديلات موجهة بالطلب على مقطع فيديو موجود. يمكنك تغيير جوانب محددة من المحتوى أو الحركة دون إعادة التوليد من البداية.
curl -X POST https://api.x.ai/v1/videos/edits \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-video",
"video_id": "your_original_request_id",
"prompt": "Change the sky to a dramatic sunset with deep orange tones"
}'
كل من التوسيعات والتعديلات غير متزامنة وتستخدم نفس نمط الاستعلام.
تفصيل الأسعار: تكلفة فيديو مدته 10 ثوانٍ
تفرض واجهة برمجة تطبيقات فيديو xAI رسومًا على مكونين: معالجة الصورة المدخلة ومدة الفيديو الناتج.
| المكون | التكلفة |
|---|---|
| صورة الإدخال | 0.002 دولار لكل صورة |
| الإخراج بدقة 480p | 0.05 دولار للثانية |
| الإخراج بدقة 720p | 0.07 دولار للثانية |
مثال: فيديو مدته 10 ثوانٍ بدقة 720p
- صورة الإدخال: 0.002 دولار
- الإخراج: 10 ثوانٍ × 0.07 دولار = 0.70 دولار
- الإجمالي: 0.702 دولار
مثال: فيديو مدته 6 ثوانٍ بدقة 480p (إعدادات افتراضية)
- صورة الإدخال: 0.002 دولار
- الإخراج: 6 ثوانٍ × 0.05 دولار = 0.30 دولار
- الإجمالي: 0.302 دولار
تطبق رسوم صورة الإدخال في كل مرة ترسل فيها طلب توليد، حتى لو أعدت استخدام نفس عنوان URL للصورة. خطط لمكالمات التوليد الخاصة بك وفقًا لذلك إذا كنت تكرر العمل على نفس الصورة الأساسية.
تحويل النص إلى فيديو (بدون معلمة image) يلغي رسوم الإدخال البالغة 0.002 دولار ولكنه يتبع نفس تسعيرة كل ثانية بخلاف ذلك.
كيفية اختبار تكامل واجهة برمجة تطبيقات Grok للفيديو باستخدام Apidog
يخلق النمط غير المتزامن تحديًا للاختبار لا يمكن لعمليات الاختبار البسيطة أحادية الطلب تغطيته. تحتاج إلى التحقق مما يلي:
- يعيد طلب التوليد
request_id. - يتعامل طلب الاستعلام بشكل صحيح مع حالة
"processing"أثناء الانتظار. - يحتوي الرد النهائي على
status == "done"وعنوان URL للفيديو غير فارغ.
تربط سيناريوهات الاختبار في Apidog هذه الخطوات معًا في تدفق آلي واحد. إليك كيفية بنائه:
الخطوة 1: إنشاء سيناريو اختبار جديد
في Apidog، افتح وحدة الاختبارات (Tests module) وانقر على زر + لإنشاء سيناريو جديد. سمه "Grok image-to-video async flow."
الخطوة 2: إضافة طلب التوليد
أضف خطوة طلب POST مخصص:
- عنوان URL:
https://api.x.ai/v1/videos/generations - الأسلوب: POST
- الرأس:
Authorization: Bearer {{xai_api_key}} - النص (JSON):
{
"model": "grok-imagine-video",
"prompt": "Gentle mist rises from the water as light filters through the trees",
"image": {
"url": "https://example.com/your-test-image.jpg"
},
"duration": 6,
"resolution": "480p"
}
الخطوة 3: استخراج request_id
بعد خطوة POST، أضف معالج استخراج متغير (Extract Variable). قم بتهيئته:
- اسم المتغير:
video_request_id - المصدر: نص الاستجابة
- طريقة الاستخراج: JSONPath
- تعبير JSONPath:
$.request_id
يخزن Apidog القيمة المستخرجة في {{video_request_id}} للاستخدام في الخطوات اللاحقة.
الخطوة 4: بناء حلقة الاستعلام
أضف معالج حلقة For. داخل الحلقة، أضف طلب الاستعلام:
- عنوان URL:
https://api.x.ai/v1/videos/{{video_request_id}} - الأسلوب: GET
- الرأس:
Authorization: Bearer {{xai_api_key}}
أضف معالج استخراج متغير (Extract Variable) داخل الحلقة لالتقاط الحالة الحالية:
- اسم المتغير:
video_status - JSONPath:
$.status
أضف معالج انتظار (Wait) (5000 مللي ثانية) بعد استخراج الحالة لتجنب تجاوز حد المعدل.
عيّن شرط الخروج إذا (Break If) للحلقة: {{video_status}} == "done".
الخطوة 5: التأكد من عنوان URL للفيديو
بعد حلقة For، أضف خطوة GET أخيرة إلى نفس نقطة نهاية الاستعلام. أضف معالج تأكيد (Assertion):
- الحقل:
$.video.url - الشرط: ليس فارغًا
يؤكد هذا التأكيد أن عنوان URL للفيديو موجود قبل أن يجتاز اختبارك.
للحصول على نظرة أعمق حول كيفية اختبار واجهات برمجة التطبيقات غير المتزامنة باستخدام Apidog، بما في ذلك أنماط الاستعلام الأكثر تعقيدًا وتكامل CI/CD، راجع هذا الدليل المخصص.
تشغيل السيناريو
انقر على "تشغيل" (Run) في عرض سيناريو الاختبار. ينفذ Apidog طلب POST، يستخرج request_id، يكرر الاستعلام حتى يصبح status == "done"، ثم يقيم تأكيداتك. يُظهر تقرير الاختبار حالة وتوقيت كل خطوة.
يمكنك توصيل هذا السيناريو بخط أنابيب CI/CD الخاص بك باستخدام Apidog CLI:
apidog run --scenario grok-video-async-flow --env production
الأخطاء الشائعة والحلول
401 غير مصرح به (Unauthorized)
مفتاح API الخاص بك مفقود أو غير صالح. تحقق من تنسيق رأس Authorization: Bearer YOUR_XAI_API_KEY. تأكد من أن المفتاح نشط في وحدة تحكم xAI.
422 كيان غير قابل للمعالجة (Unprocessable Entity)
نص الطلب مشوه. الأسباب الشائعة: حقل model مفقود، prompt فارغ، أو image.url غير متاح. اختبر عنوان URL للصورة في المتصفح قبل استخدامه.
عنوان URL للصورة غير متاح
يجب أن تكون خوادم xAI قادرة على جلب عنوان URL للصورة في وقت التوليد. ستفشل عناوين URL الخاصة، أو عناوين localhost، أو عناوين URL المحمية بالمصادقة. استخدم شبكة توصيل محتوى عامة (CDN) أو URI بيانات base64 بدلاً من ذلك.
تبقى الحالة "processing" إلى أجل غير مسمى
يمكن أن يستغرق التوليد من 30 ثانية إلى عدة دقائق حسب الدقة والمدة. إذا بقيت الحالة "processing" لأكثر من 10 دقائق، فقد تكون المهمة قد توقفت. أرسل طلبًا جديدًا. لا تعرض واجهة برمجة تطبيقات xAI حاليًا إشارة مهلة زمنية بشكل منفصل عن "failed".
أخطاء حد المعدل (429)
تسمح واجهة برمجة التطبيقات بـ 60 طلبًا في الدقيقة وطلب واحد في الثانية. إذا كنت تستعلم عن وظائف متعددة في وقت واحد، فقم بتباعد طلباتك. أضف time.sleep(1) بين مكالمات الاستعلام كحد أدنى.
رفض تحميل Base64
تأكد من أن URI البيانات الخاص بك يتضمن بادئة نوع MIME الصحيحة. استخدم data:image/jpeg;base64, لملفات JPEG و data:image/png;base64, لملفات PNG.
عدم تطابق نسبة العرض إلى الارتفاع
عندما تقوم بتعيين aspect_ratio صريح يختلف بشكل كبير عن أبعاد صورتك المصدر، قد يقوم النموذج بالقص أو التسطير (letterbox). طابق نسبة العرض إلى الارتفاع مع صورتك المصدر للحصول على أفضل النتائج.
الخاتمة
تمنحك واجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو مسارًا مباشرًا من صورة ثابتة إلى مقطع متحرك قصير. تقوم بإرسال (POST) الصورة والطلب، وتتلقى request_id، ثم تستعلم حتى يكتمل، وتقوم بتنزيل ملف MP4. احتل نموذج grok-imagine-video صدارة لوحة متصدرين Artificial Analysis في يناير 2026. تم توليد أكثر من مليار مقطع فيديو في ذلك الشهر الواحد. يعكس هذا النطاق مدى قدرة النموذج الأساسي.
نمط الاستعلام غير المتزامن هو النقطة التي تحدث فيها معظم الأخطاء في عمليات التكامل. يغطي الاختبار المناسب في سيناريوهات اختبار Apidog خطوة استخراج المتغير (Extract Variable)، وحلقة الاستعلام مع شرط التوقف، وتأكيد عنوان URL النهائي. هذا التجميع يلتقط المشكلات قبل أن تصل إلى مرحلة الإنتاج.
ابدأ ببناء تكاملك مع Apidog مجانًا. لا يتطلب بطاقة ائتمان.
الأسئلة الشائعة
ما اسم النموذج الذي أستخدمه لواجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو؟
اسم النموذج هو grok-imagine-video. قم بتمريره كحقل model في نص طلب POST الخاص بك.
ما الفرق بين معلمتي image و reference_images؟
تحدد معلمة image الإطار الأول للفيديو الناتج. يقوم النموذج بالتحريك إلى الأمام من تلك الصورة البدائية. توفر مصفوفة reference_images توجيهًا للنمط والمحتوى دون استخدامها كإطار. يمكنك دمج كليهما في نفس الطلب.
كم تستغرق عملية توليد الفيديو؟
يختلف وقت التوليد حسب المدة والدقة. يستغرق فيديو بدقة 480p ومدته 6 ثوانٍ عادةً من 1 إلى 3 دقائق. قد يستغرق فيديو بدقة 720p ومدته 15 ثانية من 4 إلى 8 دقائق. استعلم كل 5 ثوانٍ للتحقق من الحالة دون استهلاك حد المعدل الخاص بك.
هل يمكنني استخدام ملف محلي كصورة مصدر؟
نعم. قم بتشفير ملفك المحلي كـ URI بيانات base64: data:image/jpeg;base64,{encoded_bytes}. مرر تلك السلسلة كقيمة url داخل كائن image.
ماذا يحدث إذا لم أحدد aspect_ratio؟
عندما تقدم معلمة image، تُضبط نسبة العرض إلى الارتفاع افتراضيًا لتطابق الأبعاد الأصلية للصورة المصدر. عند توليد نص إلى فيديو بدون صورة، يكون الافتراضي 16:9.
كم يكلف فيديو بدقة 720p ومدته 10 ثوانٍ؟
تكلفة صورة الإدخال هي 0.002 دولار. تكلفة الإخراج هي 10 × 0.07 دولار = 0.70 دولار. الإجمالي: حوالي 0.702 دولار لكل فيديو.
ما هي حدود المعدل؟
تسمح واجهة برمجة التطبيقات بـ 60 طلبًا في الدقيقة وطلب واحد في الثانية. يغطي هذا كلًا من طلبات POST للتوليد وطلبات GET للاستعلام مجتمعة.
هل يمكنني تمديد مقطع فيديو لأكثر من 15 ثانية؟
نعم، باستخدام نقطة نهاية POST /v1/videos/extensions. تقوم بتوليد مقطع مبدئي يصل إلى 15 ثانية، ثم تمدده بمرورات توليد إضافية. كل تمديد يتبع أيضًا نمط الاستعلام غير المتزامن.
