النصوص المصاحبة في Remotion: SRT وتوقيت الكلمات وتصدير الترجمة النصية
تعالج مقاطع SRT المستوردة والنصوص المصاحبة ذات التوقيت الفعلي لكل كلمة مشكلات مختلفة في التحرير. يوضح هذا الدليل المستند إلى التوثيق كيفية الحفاظ على المسافات البيضاء، وتوحيد المراجع الزمنية للنصوص المصاحبة، والتحكّم في ظهورها خلال الوقفات ومواضع القطع، واختيار ترجمة نصية مدمجة في الصورة أو تصدير ملف SRT منفصل.
تخيّل عرضًا توضيحيًا افتراضيًا لمنتج. النص المفرّغ صحيح، لكن التمييز يشمل جملة كاملة، ويظل النص المصاحب ظاهرًا خلال وقفة في الكلام. لن تحل زيادة الحركة أيًا من المشكلتين. تتطلب الأولى توقيتًا لكل كلمة، وتتطلب الثانية قرارًا بشأن وقت اختفاء النص.
اختر سلوك النصوص المصاحبة قبل تنسيقها. يتناول هذا الدليل، المستند إلى التوثيق، النصوص المصاحبة المقدَّمة إلى Remotion ومخرجات الترجمة النصية. بياناته النموذجية وخطة فحصه توضيحية ولم تُنفَّذ، وليستا تطبيقًا خضع للاختبار أو دليلًا من استخدام فعلي لدى Optijara.
اختر ترجمة نصية على مستوى المقاطع أو نصوصًا مصاحبة بتوقيت فعلي لكل كلمة
استخدم SRT عندما يناسب عرض المقطع النصي كاملًا الفيديو
ينبغي أن تكون لتمييز الكلمات فائدة واضحة. ففي تسجيل شاشة مصحوب بتعليق صوتي، قد تمنح العبارة الكاملة المشاهدين وقتًا للقراءة وهم يشاهدون تنفيذ أمر.
يحوّل مرجع parseSrt في Remotion مقاطع SRT المقدَّمة إلى عناصر Caption تُعاد في مصفوفة captions داخل كائن. تحتفظ كل جملة في مثاله بالفترة الزمنية لمقطعها النصي. ولا يكتشف المحلّل متى نُطقت كل كلمة.
| مستوى تفصيل التوقيت المقدَّم | العرض المطلوب | العمل الإضافي | القيد |
|---|---|---|---|
| SRT بتوقيت للمقطع النصي كاملًا | ترجمة نصية لعبارات أو جمل | استيراد المقاطع ومراجعتها وتنسيقها | لا توجد محاذاة لكل كلمة على حدة |
| بيانات Caption بتوقيت فعلي لكل كلمة | تمييز الكلمة المنطوقة | الحفاظ على الوحدات النصية، وتجميع الصفحات، وربط التوقيت | تظل المحاذاة المقدَّمة بحاجة إلى مراجعة مع الصوت |
| فترات زمنية للجمل فقط | تمييز الكلمات منفردة | الحصول أولًا على بيانات محاذاة للكلمات ومراجعتها | التقسيم إلى مدد متساوية ليس محاذاة للكلام |
استخدم توقيت الكلمات عندما تحتاج إلى تمييز كلمات منفردة
استخدم بيانات الكلمات عندما يساعد التمييز شخصًا على متابعة الشرح، مثلما يحدث حين ينطق الراوي مصطلحًا تقنيًا. تقسيم الجملة إلى كلمات بمدد متساوية ينتج جدولًا للحركة، ولا يقدم دليلًا على توقيت الكلام.
تقبل بنية Caption كلا مستويَي التفصيل، لذلك لا يستطيع نوع البيانات حسم هذه المسألة. اسأل مزوّد البيانات عما إذا كانت كل فترة تخص مقطعًا نصيًا أم كلمة.
ولفهم سياق استخدام React للفيديو، يعرض مثال Mux التاريخي لإنشاء الفيديو برمجيًا سير عمل للتصور المرئي موجّهًا إلى المطوّرين. وهو ليس مرجعًا لواجهات برمجة النصوص المصاحبة الحالية أو لدقتها.
استورد النصوص المصاحبة دون فقدان النص أو معلومات التوقيت
تحقّق من حقول Caption وقاعدة المسافات البيضاء
اقرأ الحقول الموثَّقة كما هي. يحمل text النص المصاحب، بينما يحدّد startMs وendMs حدود فترته الزمنية. ويحمل timestampMs طابعًا زمنيًا واحدًا أو null؛ ويحمل confidence رقمًا من 0 إلى 1 أو null. لا يمكن لطابع زمني تمثيلي أن يحل محل أحد حدود الفترة.
احتفظ بالمسافات في بيانات الكلمات، ويُفضَّل وضعها قبل الكلمات اللاحقة. تراعي الأدوات المساعدة المسافات البيضاء: فقد تؤدي إزالة المسافات من أطراف كل وحدة نصية إلى حذف الفواصل اللازمة لقراءة النص. التزم بهذه القاعدة في أي طبقة تكييف بدلًا من توقّع أن تضيف الأداة المسافات.
يوصي مرجع Caption باستخدام white-space: pre للحفاظ عليها أثناء التصيير. ومع ذلك، تحتاج العبارات التقنية الطويلة إلى فحص تخطيطها بأبعاد الفيديو المطلوبة. فالحفاظ على المسافات البيضاء لا يعني أن النص يتّسع داخل المساحة المتاحة.
عالج إخفاقات التحميل والتحقّق المعتمد على الإصدار
يستخدم دليل الاستيراد الدالة staticFile() للإشارة إلى ملف SRT في public، ثم يجلب نصه ويمرّره إلى parseSrt. يعلّق نمطه غير المتزامن التصيير باستخدام useDelayRender()، ويستدعي continueRender(handle) بعد نجاح التحميل، ويستدعي cancelRender(error) عند الإخفاق.
تحقّق من response.ok قبل قراءة الاستجابة، ثم تحقّق من وصول النصوص المصاحبة المتوقَّعة. توضح MDN أن fetch لا يرفض الطلب لمجرد ورود حالة خطأ HTTP. فقد يكتمل الطلب وتظل استجابته غير صالحة للاستخدام كترجمة نصية. وجّه إخفاقات التحليل والتحقّق إلى الإلغاء أيضًا، بدلًا من السماح باستمرار التصيير بنصوص مصاحبة فارغة عن طريق الخطأ.
يوثّق مرجع المحلّل الخيار strict: true بدءًا من الإصدار 4.0.530. والقيمة الافتراضية هي false، للتحليل المتسامح. يرفض الوضع الصارم الملفات غير السليمة أو الفارغة، مع تقديم سياق المقطع النصي والسطر. تحقّق من الإصدار المثبَّت لديك قبل إضافته.
تأتي قيمة confidence: 1 في المثال من المحلّل. وهي ليست درجة مقاسة لدقة التعرّف على الكلام. تظل الصياغة بحاجة إلى مراجعة مع الصوت. وبالمثل، يفرض pageBreakAfter، المتاح بدءًا من 4.0.517، فاصلًا دون تغيير التوقيت، كما يوضح مرجع Caption.
منهج المقطع النصي والتوقيت والقطع للتحكّم في ظهور النصوص المصاحبة
منهج المقطع النصي والتوقيت والقطع هو منهج تحريري أصيل في هذه المقالة. يفصل التجميع عن ربط الخط الزمني والتحكّم في الظهور. وهو ليس ميزة في Remotion ولا إطارًا للأداء خضع للتحقّق.
المقطع النصي: جمّع النص دون اختلاق محاذاة
تحوّل createTikTokStyleCaptions البيانات ذات المسافات الصحيحة إلى صفحات. ويتحكّم combineTokensWithinMilliseconds في مدة التجميع. متى تجاوزت الصفحة تلك المدة، يبدأ النص المصاحب التالي الذي يستهل بمسافة صفحة جديدة. لا يستطيع هذا الإعداد توفير توقيت الكلمات المفقود أو اكتشاف الصمت في الصوت؛ كما أنه لا يتحكّم بدقة في عدد الكلمات.
توضح هذه البيانات النموذجية ذات النوع المحدَّد قاعدة المسافات. تسمّي وحداتها النصية المكتوبة بأحرف صغيرة مراحل المنهج، وفتراتها الزمنية مختلقة لأغراض الشرح. لم تُنفَّذ هذه الشيفرة، وهي ليست تطبيقًا كاملًا أو تفريغًا نصيًا فعليًا.
import type {Caption} from '@remotion/captions';
const illustrativeCaptions: Caption[] = [
{text: 'cue', startMs: 1000, endMs: 1300, timestampMs: null, confidence: null},
{text: ' clock', startMs: 1300, endMs: 1500, timestampMs: null, confidence: null},
{text: ' cut', startMs: 1500, endMs: 1900, timestampMs: null, confidence: null},
];المسافات في البداية مهمة، وكذلك الفترات الزمنية المنفصلة. يحافظ التنسيق على المعلومات المقدَّمة، لكنه لا يثبت صحة التوقيت.
التوقيت: قارن الطوابع الزمنية ضمن نظام إحداثيات واحد
تحمل الوحدات النصية في الصفحات قيمًا مطلقة لـfromMs وtoMs ضمن الخط الزمني للنصوص المصاحبة المقدَّمة. يقارنها دليل العرض بالوقت المشتق من الإطارات. قبل نسخ ذلك المثال، حدّد بداية الخط الزمني للنصوص المصاحبة لديك.
في Sequence بسيطة تعتمد على الإزاحة فقط، يُزاح useCurrentFrame() بمقدار from، وتتراكم الإزاحات في التسلسلات المتداخلة، وفقًا لـمرجع Sequence. ويتطلب الاقتصاص، وتغيير سرعة التشغيل، والتكرار، وتجميد الإطارات، قواعد ربط خاصة بكل منها. اربط الإطار المحلي الناتج بوقت النص المصاحب مرة واحدة. فتطبيق الإزاحة مرتين ينشئ خطأ جديدًا في التوقيت.
خذ حسابًا توضيحيًا بمعدل 30 إطارًا في الثانية. افترض أن التسلسل يبدأ عند الإطار 30 من التركيب، وأن النصوص المصاحبة تستخدم وقت التركيب، وأن سرعة التشغيل لم تتغير، ولا يوجد تداخل أو اقتصاص أو تكرار أو تجميد. يقابل الإطار المحلي 0 الوقت 1000 مللي ثانية. ويقابل الإطار المحلي 8 نحو 1266.67 مللي ثانية، والإطار المحلي 9 الوقت 1300 مللي ثانية. وعند إجراء مقارنة تشمل البداية وتستبعد النهاية، تكون الكلمة الأولى في البيانات النموذجية غير نشطة عند الموضع الأخير. هذه نتائج حسابية، وليست مخرجات مرصودة من Remotion.
بالنسبة إلى الحدود الواقعة بين الإطارات، تعتمد قاعدة الفحص المقترحة التقريب إلى أعلى لعدد المللي ثواني مضروبًا في معدل الإطارات في الثانية ومقسومًا على 1000. دوّن هذه القاعدة. وأعِد حساب الربط كلما غيّر تعديلٌ الخط الزمني للمصدر.
يستخدم دليل العرض Sequence، رغم أن المرجع الحالي لم يعد يوصي باستخدامها مباشرة في الشيفرات الجديدة. يمكن للمكوّنات الأحدث إتاحة خصائص التوقيت مباشرة أو استخدام Interactive.withSchema(). تحقّق من دعم الإصدار قبل اختيار أي من النمطين.
القطع: قرّر ما يظل ظاهرًا خلال التعديلات والوقفات
لا يعني فاصل الصفحة اختفاء النص. يوثّق مرجع التجميع الخيار breakOnSilenceAfterMilliseconds بدءًا من 4.0.514. وهو يقارن الفجوات بين الطوابع الزمنية للنصوص المصاحبة، ولا يحلّل الصوت. تستمر الصفحة السابقة حتى بداية الصفحة التالية، بما في ذلك الوقفة.
اختر ما إذا كان ينبغي أن تبقى تلك الصفحة بعد آخر وحدة نصية منطوقة فيها. حدّد حدود التصيير للسلوك المختار، بما يشمل القطع بين المشاهد ونهاية التركيب. يطبّق دليل العرض حدًا أقصى خاصًا به للمدة؛ ولا يتخذ التجميع وحده هذا القرار.
في العرض التوضيحي الافتراضي، حدّد العبارة المنطوقة والفعل المرتبط بها على الشاشة. إذا سمّى الراوي زرًا بينما يشير المؤشر إلى مكان آخر، فراجع الصورة والصوت معًا. صحّح موضع القطع أو التوقيت، أو أبقِ العبارة كاملة ظاهرة. لا تغيّر التعليمات المنطوقة لتطابق تعديلًا لاحقًا للواجهة.
احتفظ بالنصوص المصاحبة المقدَّمة كما هي وعدّل نسخة منفصلة. دوّن ما إذا كان التوقيت يشير إلى التسجيل أم إلى التركيب النهائي. وثّق الربط بعد حذف كلام أو إدراج تسجيل شاشة. واذكر سبب تصحيح كل عبارة محل خلاف؛ فملاحظة التصحيح لا تثبت فحص التشغيل.
قبل إضافة مزيد من الحركة، اتبع قائمة التحقّق هذه:
- دوّن نقطة بداية الخط الزمني للنصوص المصاحبة وأي ربط ناتج عن التعديلات.
- تحقّق مما إذا كان الإدخال يتضمن توقيت المقاطع النصية أو الكلمات؛ واحتفظ بمسافاته.
- اختر مدة التجميع بمعزل عن التمييز.
- حوّل وقت الإطار إلى وقت النص المصاحب مرة واحدة بالضبط.
- قرّر متى تختفي النصوص المصاحبة خلال الوقفات وعند مواضع القطع، بما في ذلك المقطع النصي الأخير.
- اختر المخرج للمنصة المستهدفة وخطّط لفحص الحدود.
{"playbook":"cue-clock-cut","cue":"preserve-granularity-and-spaces","clock":"map-caption-time-once","cut":"bound-visibility","inspectionStatus":"proposed-unexecuted"}أخطاء الفرق: عيوب النصوص المصاحبة والإصلاحات المحدَّدة
افصل مشكلات الإدخال عن مشكلات التجميع والتوقيت
أصلح المرحلة المسؤولة عن العَرَض. تغيير الخط لا ينشئ محاذاة للكلمات. وتعديل التجميع لن يلغي إزاحة طُبّقت مرتين.
| العَرَض المرئي | السبب المحتمل | التصحيح المحدَّد | الفحص المقترح |
|---|---|---|---|
| اندماج الكلمات | أُزيلت مسافات الوحدات النصية | استعد قاعدة المسافات البيضاء في الإدخال | قارن النص المجمَّع بالصياغة المعتمدة |
| تمييز الجملة كاملة | لا يوجد سوى توقيت SRT على مستوى المقطع النصي | أبقِ عرض المقطع النصي أو احصل على محاذاة للكلمات | افحص مستوى التفصيل قبل التنسيق |
| تقدّم التمييز أو تأخره | اختلاف المرجع الزمني المحلي عن مرجع النصوص المصاحبة | طبّق ربط الإزاحة مرة واحدة بالضبط | افحص حدود الفترات الزمنية |
| استمرار النص خلال وقفة | عومل التجميع على أنه إخفاء | حدّد حدودًا مقصودة للظهور | افحص الفجوة الصامتة |
| اختفاء المقطع النصي الأخير أو بقاؤه أطول من المطلوب | ظهور النهاية بلا حدود أو مقتطع | وفّق بين نهاية الوحدة النصية ونهاية التركيب | افحص الفترة المنطوقة الأخيرة |
| التصاق الكلمات في SRT | إدخال التصدير يفتقر إلى المسافات | احتفظ بالفواصل قبل التسلسل | اقرأ نص المقطع النصي الناتج |
توضح المشكلة 10476 على GitHub هذا الالتباس تاريخيًا. استخدم مُبلِّغ المشكلة @remotion/captions@4.0.441. وأكّد القائم على الصيانة أن مراعاة المسافات البيضاء سلوك قائم، وأقر بوجود أخطاء منفصلة، وأغلق المشكلة باعتبارها مكتملة. أسماء الخيارات المقترحة فيها ليست تعليمات لواجهة البرمجة الحالية، ولا ينبغي عرض عيوبها المغلقة على أنها لم تُحل.
استخدم خطة مقترحة لفحص الحدود بدلًا من الاكتفاء بالثقة في المعاينة
افحص المواضع المتجاورة حول حدود تمثيلية. في المثال الحسابي، مواضع إطارات التركيب المقترحة للفحص هي 29 و30 و38 و39. وهي تغطي دخول الكلمة الأولى وخروجها وفق تلك الافتراضات. لم يُجرَ أي اختبار تصيير.
| القياس المقترح | طريقة الفحص | الأدلة التي ينبغي الاحتفاظ بها |
|---|---|---|
| دخول المقطع النصي وخروجه | راجع الإطارات المتجاورة والصوت | مواضع الإطارات وملاحظات التصحيح |
| الانتقال بين الصفحات | قارن النص الظاهر على جانبي الانتقال | التجميع المقصود ولقطات الشاشة المرصودة |
| الظهور أثناء الوقفة | افحص ما بعد الكلمة الأخيرة وما قبل التالية | سياسة الإخفاء أو الإبقاء المختارة |
| القطع والمقطع النصي الأخير | راجع الصوت المعدَّل وحدود التركيب | ربط التعديلات وملاحظات الحالة النهائية |
| اتساق التصدير | قارن صياغة SRT وفتراته الزمنية بالفيديو | الملف الذي تمت مراجعته وملاحظات التشغيل على المنصة المستهدفة |
لا تتضمن هذه الخطة نتائج مقاسة. كرّر الفحوص بعد التعديلات، حتى لو بدت معاينة سابقة صحيحة. ولا يمكن لمعلومات المتحدث أن تحل محل توقيت الكلمات أيضًا. يوضح دليل تمرير معلومات المتحدث إلى التفريغ النصي الفرق بين تمييز المتحدثين والتعرّف التلقائي على الكلام. فمسار النشاط ليس كلمات محاذاة زمنيًا.
اختر النصوص المصاحبة المدمجة في الصورة، أو ملف SRT منفصلًا، أو كليهما
صيّر النصوص المصاحبة المرئية داخل الفيديو
يصف دليل التصدير الترجمة النصية المدمجة في الصورة بأنها مكوّنات للنصوص المصاحبة تُصيَّر داخل الفيديو. ويصبح مظهرها جزءًا من وحدات البكسل. تحقّق من ملاءمة ذلك للمنصة المستهدفة ومن بقاء محتوى الشاشة المهم ظاهرًا.
مسار النصوص المصاحبة القابل للاختيار مخرج منفصل. إذا كنت تحتاج إلى فيديو منسَّق وترجمة نصية تُدار بصورة منفصلة، فخطّط لكلا المخرجين.
حوّل المقاطع النصية إلى SRT وأنتج ملف ترجمة نصية منفصلًا
يوثّق الدليل نفسه استخدام serializeSrt() مع Artifact لإنتاج ملف ترجمة نصية أثناء التصيير. لم تُنتج هذه المقالة ملفًا من هذا النوع.
يعرّف مرجع التسلسل lines بأنها مصفوفة ثنائية الأبعاد: العناصر الخارجية مقاطع نصية، والعناصر الداخلية تُضمّ معًا دون إدراج مسافات. يبدأ كل مقطع نصي عند startMs لعنصره الأول وينتهي عند endMs لعنصره الأخير. احتفظ بالترتيب والفواصل كما هي.
ينشئ محرف السطر الجديد في text أسطرًا مرئية داخل مقطع نصي واحد. وفي الإصدارات المدعومة، يبدأ pageBreakAfter مقطعًا نصيًا آخر. لا ينشئ أي منهما محاذاة للكلام. عند تحويل الوحدات النصية في الصفحات المجمَّعة إلى نصوص مصاحبة مجددًا، احتفظ بفتراتها الزمنية الأصلية؛ فلا ينبغي أن تحل مدة عرض الصفحة محل نهاية الكلمة الأخيرة.
راجع ملف SRT الناتج إلى جانب الفيديو على المنصة المستهدفة. لا يدل التسلسل وحده على نجاح الرفع أو دعم تشغيل الترجمة النصية.
القيود: النصوص المصاحبة المقروءة ما زالت تحتاج إلى مراجعة الصوت والمخرجات
تعتمد جودة التوقيت على البيانات المقدَّمة والتعديلات
لم يُثبَّت Remotion، ولم يُجرَ تفريغ نصي أو تنفيذ للبيانات النموذجية أو تصيير لإعداد هذا الدليل. ولم تُجرَ استدعاءات مدفوعة لواجهات البرمجة أو قراءة لوسائط خاصة. الأمثلة الرقمية حسابية فقط.
قارن التفريغ النصي بالصوت الفعلي، مع الانتباه إلى الأسماء التقنية والمقاطع المعدَّلة. يقدّم دليل منصة اختبار الذكاء الاصطناعي للكلام متعدد اللغات مثالًا ذا صلة خاصًا باللغة، لفحص الأسماء وفائدة سير العمل. وهو ليس توصية بمزوّد خدمة هنا.
تحتاج الخصوصية والتخطيط وإمكانية الوصول إلى قرارات منفصلة
قبل مشاركة الصوت مع خدمة خارجية، تحقّق من الإذن ومن طريقة تعاملها الموثَّقة مع البيانات. خصّص ميزانية للتكييف والمراجعة دون افتراض تحقيق وفورات. افحص العبارات الطويلة بالأبعاد المطلوبة، خصوصًا حيث يمكن للترجمة النصية أن تحجب الواجهة المعروضة.
لا تثبت النصوص المصاحبة الجذابة الامتثال لمتطلبات إمكانية الوصول. راجع الصياغة والتوقيت، وأدرج المعلومات غير الكلامية ذات الصلة، وقيّم قابلية القراءة وتنسيق التسليم. وفي الفيديو المُعان بالذكاء الاصطناعي، تجيب إثباتات منشأ المحتوى المرئي عن سؤال مختلف يتعلق بالأدلة. احتفظ بسجلات المصدر والتعديلات منفصلة عن مراجعة الصوت، على أن يدعم كل منها ما يثبته فعليًا فقط.
النقاط الرئيسية
- 1يظل SRT بتوقيت للمقطع النصي كاملًا ذا توقيت على مستوى المقطع بعد الاستيراد؛ ويحتاج تمييز الكلمات منفردة إلى بيانات بمحاذاة فعلية لكل كلمة.
- 2احتفظ بالمسافات البيضاء في نص Caption لأن التجميع والتسلسل إلى SRT لا ينشئان الفواصل المفقودة.
- 3قارن الوقت المشتق من الإطارات وفترات الوحدات النصية ضمن نظام إحداثيات واحد محدَّد، مع تطبيق الإزاحات مرة واحدة فقط.
- 4لا تؤدي فواصل الصفحات الناتجة عن الفجوات بين الطوابع الزمنية إلى إخفاء النصوص المصاحبة تلقائيًا خلال الوقفات.
- 5اختر ترجمة نصية مدمجة في الصورة، أو ملف SRT منفصلًا، أو كليهما، بما يناسب المنصة الفعلية المستهدفة، وراجع التشغيل عليها.
- 6البيانات النموذجية وخطة فحص الحدود توضيحيتان ولم تُنفَّذا؛ وتظل الصياغة المقدَّمة والتوقيت والتخطيط بحاجة إلى مراجعة مع الوسائط الفعلية.
الخلاصة
ابدأ بالتوقيت المتوفر لديك. قد يناسب SRT بتوقيت للمقطع النصي كاملًا تسجيل الشاشة؛ أما تمييز الكلمات منفردة فيحتاج إلى توقيت فعلي لكل كلمة. استخدم منهج المقطع النصي والتوقيت والقطع لفصل التجميع وربط الخط الزمني عن قرارات الظهور. احتفظ بالمسافات وراعِ التعديلات، ثم راجع المخرج المختار مع الصوت والتشغيل على المنصة المستهدفة. إذا احتاج فريقك إلى مساعدة في تصميم سير عمل للنصوص المصاحبة بمساعدة الذكاء الاصطناعي، فإن Optijara تقدم استشارات الذكاء الاصطناعي.
الأسئلة الشائعة
هل يستطيع Remotion استيراد ملف ترجمة نصية SRT موجود؟
نعم. اجلب النص واستدعِ `parseSrt({input: text})` من `@remotion/captions`، ثم اقرأ مصفوفة `captions` في الكائن المُعاد. يتحول كل مقطع نصي مقدَّم إلى عنصر Caption. عالج إخفاقات التحميل والتحليل. يتطلب التحليل الصارم الاختياري الإصدار `4.0.530` أو أحدث. راجع [مرجع المحلّل](https://www.remotion.dev/docs/captions/parse-srt).
هل ينشئ استيراد SRT توقيتًا على مستوى الكلمات؟
لا. يوفّر المقطع النصي الذي يحتوي على جملة فترة زمنية واحدة للمقطع، ولا يوفّر فترات منفصلة للكلمات المنطوقة. يحتاج تمييز الكلمات إلى توقيت فعلي لكل كلمة خضع للمراجعة مع الصوت. التقسيم إلى مدد متساوية ينشئ جدولًا للحركة، ولا ينشئ محاذاة للكلام. راجع [مثال تحليل SRT](https://www.remotion.dev/docs/captions/parse-srt).
هل يخفي breakOnSilenceAfterMilliseconds النصوص المصاحبة أثناء الصمت؟
لا. بدءًا من الإصدار `4.0.514`، ينشئ فواصل صفحات باستخدام الفجوات بين الطوابع الزمنية، دون تحليل الصوت. وتستمر الصفحة السابقة حتى تبدأ التالية. حدّد حدود التصيير لإخفاء النص أثناء الوقفة. راجع [مرجع التجميع](https://www.remotion.dev/docs/captions/create-tiktok-style-captions).
لماذا يظهر تمييز الكلمات بإزاحة داخل Sequence؟
يُزاح `useCurrentFrame()` داخل Sequence بسيطة تعتمد على الإزاحة فقط بمقدار `from`. قارنه بوقت النص المصاحب بعد ربط كليهما بخط زمني واحد فقط. ويتطلب التداخل، والاقتصاص، وتغيير سرعة التشغيل، والتكرار، وتجميد الإطارات، قواعد ربط خاصة بكل منها. راجع [مرجع Sequence](https://www.remotion.dev/docs/sequence).
هل يستطيع Remotion تصدير النصوص المصاحبة إلى ملف SRT منفصل؟
نعم. تحوّل `serializeSrt()` مجموعات Caption إلى نص SRT؛ ويمكن لـ`Artifact` إنتاج ملف منفصل أثناء التصيير. احتفظ بالمسافات وحدود المقاطع النصية، ثم راجع التشغيل على المنصة المستهدفة. راجع [دليل تصدير الترجمة النصية](https://www.remotion.dev/docs/captions/exporting).
المصادر
- https://www.remotion.dev/docs/captions/parse-srt
- https://www.remotion.dev/docs/captions/importing
- https://www.remotion.dev/docs/captions/displaying
- https://www.remotion.dev/docs/captions/exporting
- https://www.remotion.dev/docs/captions/create-tiktok-style-captions
- https://www.remotion.dev/docs/captions/caption
- https://www.remotion.dev/docs/captions/serialize-srt
- https://www.remotion.dev/docs/sequence
- https://github.com/remotion-dev/remotion/issues/10476
- https://www.mux.com/blog/visualize-mux-data-with-remotion
- https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
- https://www.optijara.ai/en/blog/nvidia-nemotron-3-diarization-speaker-transcript-handoff-map-2026
- https://www.optijara.ai/en/blog/cohere-transcribe-arabic-multilingual-speech-ai-test-bench-2026
- https://www.optijara.ai/en/blog/ai-provenance-watermarking-readiness-c2pa-synthid-2026
- https://www.optijara.ai/en
بقلم
Hamza Diazحمزة دياز هو مؤسس Optijara، حيث يبني وكلاء ذكاء اصطناعي عمليين، وأنظمة أتمتة، وسير عمل Copilot للشركات الخدمية. يكتب عن تشغيل الذكاء الاصطناعي، واستراتيجية الوكلاء، والتطبيق الواقعي للفرق التي تريد أنظمة مفيدة بدلًا من الضجيج.
