تحويل ASS إلى VTT
أو ألصق نص الترجمة
ما يغيره هذا التحويل
4 أشياء تسقط أو تحتاج قرارا
- التنسيق
كل التنسيق عدا العريض والمائل (اللون والتحديد والظل والهوامش)
- الموضع
الموضع على الشاشة (يعود كل مقطع إلى الموضع الافتراضي)
- الكاريوكي
توقيت الكاريوكي (إبراز كل مقطع صوتي)
- محتوى خاص بالصيغة
محتوى تحفظه صيغة المصدر خارج مقاطعها (كتل خارج المقاطع ونص ترويسة وإعدادات لكل مقطع وأحداث معلقة) — لا مكان له في صيغة الهدف
تأتي هذه القائمة من مصفوفة القدرات لهاتين الصيغتين، لا من الملف الذي حملته. وقد يفقد ملف بعينه أكثر إن استخدم ميزات تسمح بها الصيغة ولا تمثلها المصفوفة.
المسار الذي تشرحه هذه الصفحة واضح: من ASS إلى VTT. النص المنطوق يصل إلى VTT كما هو. أرقام التوقيت متطابقة، والصياغة مختلفة: 0:00:01.25 في ASS و00:00:01.250 في VTT.
الفرق بين ASS وVTT ليس شكليا هنا: التنسيق، الموضع على الشاشة، توقيت الكاريوكي ومحتوى الصيغة لا تجد موضعا في VTT. وهذا ما يذكره التقرير.
ملف ASS لا يدخل أي طلب شبكة، حتى أثناء إنتاج VTT. لا يتوقف تحويل ASS إلى VTT عند سطر مشوه. يسجل الخطأ ويستمر الباقي. كل ملف ASS ينتهي إلى VTT مستقل، والأرشيف النهائي يجمعها بلا خلط.
WebVTT يعرف كتلا لا مقابل لها في ASS: NOTE للتعليقات، وSTYLE للأنماط، وREGION للمناطق. هذه الكتل تقرأ وتسجل ضمن المفقود، ولا تترجم إلى وسوم ASS وهمية.
أمثلة
ملف ASS نموذجي محول إلى VTT
الإدخال
[Script Info]
Title: Example
ScriptType: v4.00+
WrapStyle: 0
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
Style: Title,Arial,36,&H0000FFFF,&H000000FF,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:05.00,0:00:08.50,Default,,0,0,0,,{\i1}Italic{\i0} and {\b1}bold{\b0} text.
Dialogue: 0,0:00:09.00,0:00:12.00,Title,,0,0,0,,{\pos(320,240)}Positioned
Dialogue: 0,0:00:13.00,0:00:16.00,Default,,0,0,0,,{\k50}ka{\k30}ra{\k20}o{\k10}ke
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Line one\NLine two
Dialogue: 1,0:00:21.00,0:00:24.00,Default,,0,0,0,,{\an7}Top left
الناتج
WEBVTT
00:00:01.000 --> 00:00:04.000
Hello there.
00:00:05.000 --> 00:00:08.500
<i>Italic</i> and <b>bold</b> text.
00:00:09.000 --> 00:00:12.000
Positioned
00:00:13.000 --> 00:00:16.000
<c>ka</c><c>ra</c><c>o</c><c>ke</c>
00:00:17.000 --> 00:00:20.000
Line one
Line two
00:00:21.000 --> 00:00:24.000
Top left
المقارنة تظهر التنسيق، الموضع على الشاشة، توقيت الكاريوكي ومحتوى الصيغة؛ وما عدا ذلك يطابق سطرا بسطر بين ASS وVTT.
ملف ASS غير مرتب يخرج بصيغة VTT
الإدخال
[Script Info]
; 一份真实的脏文件:BOM + CRLF + 认不出的覆写码 + Comment + 坏时间码
Title: Dirty sample
ScriptType: v4.00+
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Fonts]
fontname: Arial
!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: 0,0:00:00.00,0:00:01.00,Default,,0,0,0,,这是一条注释,不该变成字幕
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello, world
Dialogue: 0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\fad(300,300)}Unmodelled override
Dialogue: 0,0:00:09.00,0:00:12.00,Default,,0,0,0,,{\an7\pos(320,240)}Both, wrong order
Dialogue: 0,0:00:13.00,0:00:16.5,Default,,0,0,0,,One decimal centisecond
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Soft\nbreak
Dialogue: 0,0:00:xx.00,0:00:24.00,Default,,0,0,0,,Broken timecodeالناتج
WEBVTT
00:00:01.000 --> 00:00:04.000
Hello, world
00:00:05.000 --> 00:00:08.000
{\fad(300,300)}Unmodelled override
00:00:09.000 --> 00:00:12.000
Both, wrong order
00:00:13.000 --> 00:00:16.500
One decimal centisecond
00:00:17.000 --> 00:00:20.000
Soft
break
الملفات الحقيقية تصل هكذا: نهايات أسطر مختلطة. وفراغات وحقول فارغة. المحول يصلح أو يسجل، ولا يخفي شيئا عند إنتاج VTT من ASS.
الأسئلة الشائعة
كيف يحسب VTT بداية كل مقطع ونهايته بعد قراءة ASS؟
قارن 0:00:01.25 في ASS ب 00:00:01.250 في VTT لترى الفرق في الكتابة وحدها. لا خسارة في الأرقام هنا؛ VTT يستقبل أزمنة ASS كاملة.
هل يوجد فقدان عند إنتاج VTT من ASS؟
ما لا ينتقل من ASS إلى VTT هو التنسيق، الموضع على الشاشة، توقيت الكاريوكي ومحتوى الصيغة. التقرير يعرضها بندا بندا، والنص نفسه يصل كاملا.
ما مصير الوسوم الداخلية في ASS بعد كتابتها في VTT؟
وسوم الزاوية التي يعرفها VTT تصل، وكذلك إعدادات السطر التي كانت في ASS إن وجدت. ما لا يعرفه VTT يسجل في قائمة المفقود.
إذا حولت VTT عائدا إلى ASS، هل أحصل على الملف نفسه؟
ليس كاملا. إرجاع VTT إلى ASS يسقط الدقة الزمنية ومحتوى الصيغة، وهي قائمة تخص ملفات VTT الحقيقية. النسخة الأصلية من ASS تبقى المرجع الآمن.
أين تعالج ملفات ASS عند تحويلها إلى VTT؟
المعالجة محلية بالكامل: ASS لا يغادر جهازك، والناتج VTT ينشأ في الذاكرة نفسها.
هل يمكن إلغاء تحويل مجموعة ملفات ASS إلى VTT في منتصفها؟
نعم، عشرات ملفات ASS في جلسة واحدة تخرج بصيغة VTT. المعالجة متسلسلة. لكل ملف سطر حالة وتقرير فقدان.
هل توجد طريقة لعدم خسارة ما يسقط من ASS عند التحويل إلى VTT؟
احفظ ملف ASS الأصلي؛ هو النسخة الكاملة. VTT ناتج عملي من ASS للعرض أو المشاركة، وليس أرشيفا كاملا.