حساب مدة الفيديو بعد إدراج إطار مجمّد
يبقي الإطار المجمّد صورة واحدة ظاهرة بينما يستمر الخط الزمني، ولذلك يزيد إدراجه مدة العرض النهائية من دون تغيير مدة اللقطات الأصلية المتحركة.
شغّل الأداة مجانًا
تستقبل هذه الحاسبة مدة الفيديو الأصلية، والطابع الزمني الذي يبدأ عنده التجميد، وطول التجميد المطلوب، وكلها بالثواني. وهي تتحقق من أن نقطة التجميد تقع ضمن الخط الزمني للمصدر ثم تعيد المدة الإجمالية الجديدة. يمكنكم استخدامها لتخطيط المونتاج، أو مراجعة مواصفات التسليم، أو تقدير مدة التعليق الصوتي، أو إعداد بيانات وصفية موثوقة قبل التصيير.
أدخلوا قيم الخط الزمني بالثواني
أدخلوا المدة الكاملة للفيديو غير المعدّل في original_duration، والطابع الزمني المراد تثبيته في freeze_point، والوقت المضاف في freeze_length. تستخدم القيم الثلاث الثواني، ويمكن أن تتضمن كسورًا عشرية، لذا تلائم قرارات المونتاج التي تقل عن ثانية كما تلائم المقاطع الطويلة. فالقيمة 2.5، مثلًا، تعني ثانيتين ونصفًا. يجب أن تكون المدة الأصلية أكبر من صفر، بينما يمكن أن يكون طول التجميد صفرًا إذا أردتم التحقق من نقطة مخططة فقط. يجوز أن تقع النقطة عند البداية، أو في أي موضع داخل الفيديو، أو عند لحظة النهاية نفسها، ولا يجوز أن تكون سالبة أو بعد النهاية الأصلية. استخدموا المقياس نفسه لجميع القيم. إذا كان المحرر يعرض الدقائق والثواني، فحوّلوا القراءة إلى إجمالي الثواني قبل الإرسال، حتى لا تُفهم 1:30 على أنها 1.30 ثانية بدلًا من 90 ثانية.
افهموا ما تتضمنه العملية الحسابية
تضيف العملية طول التجميد إلى المدة الأصلية. تحدد نقطة التجميد صلاحية موضع الإدراج، لكنها لا تغيّر المقدار المضاف؛ فتجميد مدته أربع ثوانٍ يضيف أربع ثوانٍ سواء بدأ قرب المقدمة أم في الوسط أم عند الإطار الأخير. لذلك تساوي new_total_duration مدة المصدر مضافًا إليها التوقف المدرج. يفترض هذا النموذج إدراجًا حقيقيًا يدفع جميع المواد اللاحقة إلى الأمام. ولا يصف استبدال لقطات قائمة بصورة ثابتة، لأن الاستبدال قد يُبقي المدة الإجمالية كما هي. كذلك لا يشمل الانتقالات، أو هوامش التحرير، أو تغييرات السرعة، أو الإطارات المكررة لموافقة معدل الإطارات، أو الحشو الصوتي، إلا إذا أضفتم مددها منفصلة إلى الخطة. تكرر الاستجابة قيم الإدخال الثلاث المقبولة إلى جانب النتيجة، مما يسهّل تدقيق الحساب وحفظ ملاحظات المونتاج ومقارنة الخطة بالملف المصدّر.
استخدموا النتيجة في سير عمل المونتاج
استخدموا المدة الجديدة قيمة تخطيط أولية قبل تشغيل قائمة التصيير أو تحديث بيانات التسليم الوصفية. يمكن للمحرر التحقق من بقاء فيديو تعليمي ضمن حد النشر بعد التوقف عند تفصيل مهم، ويمكن للمنتج حجز تعليق صوتي أو موسيقى تكفي لقطة ثابتة، كما يستطيع خط آلي التحقق من قائمة قرارات المونتاج قبل إرسالها إلى المصيّر. ستُرفض أي نقطة تشير إلى موضع يتجاوز مادة المصدر المتاحة. ولأن الحساب لا يرفع ملف الوسائط، فهو مفيد أيضًا عندما يجب إبقاء الفيديو في التخزين المحلي؛ إذ لا تلزم إلا معلومات التوقيت الرقمية. وللدقة على مستوى الإطار، حوّلوا موضع الإطار المختار وعدد الإطارات المثبتة إلى ثوانٍ باستخدام معدل الإطارات الدقيق للمشروع. انتبهوا خصوصًا إلى المعدلات الكسرية مثل 29.97، حيث قد تختلف الطوابع المقربة قليلًا عن المواضع الدقيقة. تحسب هذه القدرة المدة ولا تفحص برامج الترميز أو مسارات الكود الزمني أو معدل الإطارات المتغير أو الملف المصيّر نفسه.
حالات الاستخدام
تخطيط توقف في فيديو تعليمي
تحققوا من مدة العرض النهائية بعد تثبيت إطار مدة تكفي الجمهور لقراءة محتواه.
التحقق من قرار مونتاج
ارفضوا تعليمة تجميد تقع نقطتها قبل بداية المصدر أو بعد نهايته.
تحديث بيانات التسليم
احسبوا المدة الإجمالية المخططة قبل أن ينشئ المصيّر أو سير النشر الملف النهائي.
الأسئلة الشائعة
ما تكلفة العملية الحسابية؟
يمكنكم تشغيلها مجانًا في متصفح هذه الصفحة. تستخدم طلبات API السعر الأساسي الحالي البالغ $0.002.
ما الوحدات التي ينبغي استخدامها؟
أدخلوا المدة الأصلية ونقطة التجميد وطوله بالثواني. وتُقبل كسور الثواني العشرية.
هل يمكن أن تقع نقطة التجميد عند نهاية الفيديو تمامًا؟
نعم. يقع طابع النهاية ضمن المدة الأصلية، ويمثل تثبيت الإطار الأخير.
لماذا لا تدخل نقطة التجميد في عملية الجمع؟
تُستخدم للتحقق من موضع الإدراج. أما الطول المضاف فيبقى واحدًا في أي موضع صالح على الخط الزمني.
هل يزيد استبدال لقطات بصورة ثابتة مدة الفيديو؟
ليس بالضرورة. تمثل الحاسبة توقفًا مدرجًا يدفع المادة اللاحقة، لا استبدالًا يشغل زمنًا قائمًا.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/video/freeze-frame-duration \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"original_duration":90,"freeze_point":32.5,"freeze_length":4.25}'const res = await fetch("https://api.kit.forhosting.com/video/freeze-frame-duration", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"original_duration": 90,
"freeze_point": 32.5,
"freeze_length": 4.25
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/video/freeze-frame-duration",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"original_duration": 90,
"freeze_point": 32.5,
"freeze_length": 4.25
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/video/freeze-frame-duration", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"original_duration":90,"freeze_point":32.5,"freeze_length":4.25}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"original_duration":90,"freeze_point":32.5,"freeze_length":4.25}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/video/freeze-frame-duration", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"original_duration": 90,
"freeze_point": 32.5,
"freeze_length": 4.25
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "video.freeze_frame_duration",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_mb | 500 |
max_minutes | 60 |
max_megapixels | 3.9 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |