انتقل إلى المحتوى الرئيسي
SubtitleMatrix

استخراج الترجمة من الفيديو

مدخلات الوسائطالترجمة داخل الفيديو

التشغيل الأول ينزل محرك الترجمة — نحو 31 MB، يقدمه هذا الموقع ويحفظه المتصفح بعده. والفيديو نفسه لا يغادر هذا التاب أبدا.

تأخذ هذه الصفحة ملف فيديو وتعيد مسارات الترجمة الموجودة فيه أصلا، ملفا لكل مسار، مسمى بلغة المسار. فملف Matroska فيه مسار SDH إنجليزي ومسار صيني ومسار صور PGS يخرج ثلاثة ملفات: ملف .srt وآخر .srt وملف .sup. والحاوية تفكك لا يعاد ترميزها، فمسار النص ينسخ بالبايتات التي كانت في الملف — لا يعاد كتابته من شاشة ولا يعاد توقيته.

العمل يجري في التبويب. يقرأ الفيديو بناء من ffmpeg مترجم إلى WebAssembly يقدمه هذا الموقع بنفسه، والطلب الشبكي الوحيد هو لذلك المحرك: نحو 31 MB في أول استخدام، ويخزنه المتصفح بعدها. والفيديو نفسه لا يرسل إلى أي مكان، وهي القاعدة نفسها التي تتبعها كل صفحة هنا، والسبب الذي يجعل هذه الصفحة صالحة لمادة لا يسمح لها بمغادرة الجهاز.

الترجمة المحروقة في الصورة لا يمكن استخراجها، ولا أداة تستطيع ذلك، لأنه لا مسار يقرأ — تلك الكلمات بكسلات. وإن لم يكن في الملف مسار ترجمة إطلاقا تقول الصفحة ذلك بدل إنتاج ملف فارغ، وهذا يشمل حالة الحرقة: فيديو فيه ترجمة ظاهرة بلا مسار ترجمة يبلغ عنه بأنه لا شيء لاستخراجه.

تسرد الصفحة كل مسار ترجمة تجده قبل أن تكتب شيئا: الفهرس، والترميز، واللغة، والعنوان، وهل المسار معلم default أو forced. والمسارات التي تعيش أصلا في حاويتها تحتفظ بصيغتها — ASS يبقى ASS و WebVTT يبقى WebVTT — لأن تحويلها إلى SRT هنا سيسقط التنسيق بصمت، وإسقاط التنسيق دون طلب هو الشيء الوحيد الذي لا يفعله هذا الموقع. والمسار الذي لا حاوية مستقلة لترميزه (مسار mov_text داخل MP4 مثلا) يعاد ترميزه إلى SRT، وتقول بطاقة النتيجة ذلك بدل تركه يمر كنسخة.

مسارات الصور تخرج صورا لا نصا: مسار PGS يصير .sup ومسار DVD يصير .sub. وهذا عمدي — الصورة هي ما كان في الملف، وتخمين نصها مهمة منفصلة لها صفحتها وسؤال لغتها. خذ .sup إلى صفحة PGS إن احتجت نصا.

الأسئلة الشائعة

أي حاويات الفيديو أستطيع إلقاءها في صفحة استخراج الترجمة؟

MKV و MP4 و M4V و AVI و MOV و TS و WebM و WMV و FLV و MPG و OGV. والقائمة في الحقيقة قائمة مفككات يملكها بناء ffmpeg المضمن لا قائمة ترميزات فيديو: أي شيء داخل الحاوية، فمسارات الترجمة النوع نفسه من التدفق. وملف بامتداد شاذ وجسم Matroska عادي يعمل عادة، لأن المفكك يقرأ الترويسة لا الاسم؛ وأما التنزيل المجزأ أو الناقص فلا يعمل كثيرا، لأنه لا فهرس يمشى فيه.

هل يغادر الفيديو حاسوبي أثناء استخراج الترجمة منه؟

لا. التنزيل الوحيد هو محرك ffmpeg نفسه، نحو 31 MB، يقدمه هذا الموقع ويخزنه المتصفح بعد أول استخدام. وفيديوك يركب في نظام ملفات المحرك الوهمي داخل التبويب ويقرأ من هناك؛ ولا يكتب أبدا في جسم طلب. وتستطيع التأكد في لوحة الشبكة: أثناء معالجة ملف لا يوجد طلب يحمله. وهذه الخاصية سبب وجود الصفحة أصلا — معظم أدوات الاستخراج ترفع أولا، والمادة الخاضعة لحجز قانوني أو طبي لا ترفع.

لماذا حصلت على ملف .sup بدل .srt عند استخراج الترجمة؟

لأن ذلك المسار مخزن صورا لا نصا. مسارات PGS (الترميز hdmv_pgs_subtitle) سلسلة صور، والاستخراج الصادق لتدفق صور تدفق صور: ملف .sup، وهو بالضبط ما تتوقعه المشغلات ومحررات الترجمة. وتحويله نصا يعني التعرف على الحروف في كل صورة، وهي صفحة أخرى فيها سؤال لغة وخطوة تدقيق. والمستخرج لا يخترع نصا لم يقرأه.

ماذا تفعل الصفحة بمسار لا صيغة ملف مستقلة لترميزه؟

تعيد ترميز ذلك المسار وحده إلى SRT وتعلم النتيجة بأنها معاد ترميزها. والحالة الشائعة mov_text، ترميز الترجمة الذي يعيش داخل MP4: لا صيغة ملف خاصة به، فنسخ التدفق ينتج بايتات لا يفتحها شيء. وإعادة الترميز ليست بلا خسارة — التنسيق والتموضع الذين قد يحملهما mov_text لا يبقيان — فتبلغ بطاقة النتيجة عنهما كخسارة بدل تقديم الملف كنسخة لم تمس مما كان في الحاوية.

كيف تسمى ملفات الناتج حين توجد مسارات عدة؟

على اسم الفيديو ورمز لغة المسار: ملف اسمه documentary.mkv وفيه مسار إنجليزي يعطي documentary.eng.srt. وحين يشترك مساران في لغة — مسار إنجليزي عادي ومسار SDH إنجليزي، وهو شائع — يصير الثاني documentary.eng-2.srt بدل الكتابة فوق الأول. والمسار بلا وسم لغة يرجع إلى فهرس تدفقه، فيظل مميزا. وإن حصلت على أكثر من ملف تقدمه الصفحة أرشيف zip واحدا، لأن المتصفحات تمنع صفحة من بدء عدة تنزيلات معا.

لماذا يستغرق التشغيل الأول أطول من الثاني في استخراج الترجمة؟

التشغيل الأول ينزل محرك ffmpeg، نحو 31 MB. ويغطي خط التقدم ذلك التنزيل ثم الاستخراج نفسه. ويخزن المتصفح المحرك، فتبدأ التشغيلات اللاحقة على الصفحة نفسها فورا تقريبا؛ وكذلك بعد إعادة التحميل إن لم يمسح التخزين. ويقدم المحرك أربع قطع لأن منصة الاستضافة ترفض ملفات تتجاوز 25 MiB، فتجمعها الصفحة في الذاكرة قبل البدء — وإعادة الجمع تلك جزء من انتظار التشغيل الأول نفسه.

هل أستطيع إلغاء تشغيل استخراج الترجمة إذا طال؟

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

أدوات ذات صلة