VTT को ASS में बदलें
या सबटाइटल टेक्स्ट पेस्ट करें
यह रूपांतरण क्या बदलता है
2 चीज़ें छूटती हैं या फ़ैसला माँगती हैं
- सटीकता
टाइमिंग की सटीकता — आउटपुट की घड़ी मोटी है, इसलिए हर टाइमस्टैम्प निकटतम 10 ms में गोल किया जाता है
- फ़ॉर्मैट-विशिष्ट सामग्री
वह सामग्री जो स्रोत फ़ॉर्मैट अपने क्यू के बाहर रखता है (क्यू से बाहर के ब्लॉक, हेडर टेक्स्ट, प्रति-क्यू सेटिंग, टिप्पणी की गई घटनाएँ) — लक्ष्य फ़ॉर्मैट में उसके लिए कोई जगह नहीं
यह सूची इन दोनों फ़ॉर्मैट के क्षमता मैट्रिक्स से आती है, आपकी लोड की गई उस फ़ाइल से नहीं। कोई खास फ़ाइल ज़्यादा खो सकती है अगर वह ऐसी सुविधाएँ इस्तेमाल करती हो जिन्हें फ़ॉर्मैट अनुमति देता है पर मैट्रिक्स मॉडल नहीं करता।
यह पेज WebVTT (VTT) फ़ाइल को Advanced SubStation Alpha (ASS) में बदलता है। VTT में WEBVTT हेडर के बाद cues आती हैं, समय 00:00:04.000 की तरह बिंदु के साथ लिखा जाता है, और NOTE, STYLE व REGION ब्लॉक तथा align जैसी सेटिंग cue के बाहर रहते हैं। ASS एक स्क्रिप्ट है: [Script Info], [V4+ Styles] की स्टाइल-तालिका, और Dialogue पंक्तियाँ जिनमें समय 0:00:04.00 तथा {\i1}, {\pos(320,240)} और \k जैसे ओवरराइड कोड होते हैं।
जो नहीं बचता: समय की सूक्ष्मता (लक्ष्य की घड़ी 10 ms की है, इसलिए हर समय पूर्णांकित होता है), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। समय निकटतम 10 ms तक पूर्णांकित होता है, जैसे 00:00:04,001 से 0:00:04.00; WEBVTT हेडर, NOTE/STYLE/REGION ब्लॉक और align/position जैसी cue सेटिंग ASS में नहीं जाते, क्योंकि वहाँ उनके लिए कोई अनुभाग नहीं है। ये चीज़ें चुपचाप नहीं गिरतीं — फ़ाइल डालने से पहले ही ऊपर की सूची में लिखी रहती हैं।
Advanced SubStation Alpha (ASS) का आउटपुट .ass फ़ाइल है और उसमें हेडर, [V4+ Styles] स्टाइल-तालिका और Dialogue पंक्तियाँ साथ आती हैं। चाहे एक फ़ाइल डालें या पूरी सीरीज़, सब कुछ एक-एक करके चलता है, बीच में रोका जा सकता है, और सारे नतीजे एक ZIP में मिलते हैं। कोई सर्वर नहीं, कोई अपलोड नहीं — सब कुछ आपके ब्राउज़र में।
उदाहरण
एक सामान्य VTT फ़ाइल, ASS में बदली गई
इनपुट
WEBVTT
intro
00:00:01.000 --> 00:00:04.000
Hello there.
00:00:04.500 --> 00:00:08.000 align:start position:10%
Second line with <i>italics</i>.
आउटपुट
[Script Info]
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,0,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:04.50,0:00:08.00,Default,,0,0,0,,Second line with {\i1}italics{\i0}.
इस आउटपुट में छूटा: समय सटीकता, फ़ॉर्मैट-विशिष्ट सामग्री। बाकी सब पंक्ति-दर-पंक्ति मेल खाता है।
VTT से ASS: वही रूपांतरण एक कठिन इनपुट पर
इनपुट
a stray comment line
cue-id-1
00:00:01.000 --> 00:00:02.000
No header, two lines before the timecode.
आउटपुट
[Script Info]
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,0,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:02.00,Default,,0,0,0,,No header, two lines before the timecode.
असली VTT फ़ाइलों में BOM, मिश्रित पंक्ति-अंत, खाली क्षेत्र या बिगड़ा समय-कोड मिलता है। ऊपर की साफ़ मिसाल से मिलाकर देखिए कि पार्सर कितना माफ़ करता है और क्या रिपोर्ट करता है।
अक्सर पूछे जाने वाले सवाल
VTT की समय-पंक्ति ASS में बदलते समय क्या बदलता है?
VTT इसे 00:00:04.000 लिखता है और ASS इसे 0:00:04.00 लिखता है; क्षण वही रहता है, सिर्फ़ विराम-चिह्न और इकाई बदलती है। चूँकि ASS की घड़ी 10 ms की है और VTT की 1 ms की, हर समय निकटतम 10 ms तक पूर्णांकित होता है — 00:00:04.000 से 0:00:04.00।
VTT का WEBVTT हेडर, NOTE/STYLE/REGION ब्लॉक और align/position जैसी cue सेटिंग ASS में कहाँ जाता है?
VTT की वह सामग्री cue मॉडल के बाहर रहती है — ये ब्लॉक और सेटिंग VTT के अपने ढाँचे हैं, और लक्ष्य फ़ॉर्मैट के पास इनके लिए कोई स्तंभ या अनुभाग नहीं है। ASS में उसके लिए कोई अनुभाग, स्तंभ या विशेषता नहीं है, इसलिए वह गिर जाती है और रिपोर्ट में अलग से गिनी जाती है; ASS का अपना हेडर उसे दोबारा नहीं बना सकता।
VTT से ASS बनाने की असली कीमत क्या है?
इस दिशा में 2 तरह की जानकारी गिरती है: समय की सूक्ष्मता (लक्ष्य की घड़ी 10 ms की है, इसलिए हर समय पूर्णांकित होता है), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। मिसाल के लिए, VTT का 00:00:04,001 ASS में 0:00:04.00 बनता है, यानी हर समय 10 ms के गुणक तक पूर्णांकित होता है। यह सूची आपकी फ़ाइल डालने से पहले ही दिखती है, और फ़ाइल आने के बाद उसमें बताया जाता है कि उसमें से कितनी चीज़ें वाकई मौजूद थीं।
ASS के Dialogue इवेंट और VTT के cue में क्या नाता है?
ASS में हर VTT cue एक Dialogue पंक्ति बनती है और किसी स्टाइल की ओर इशारा करती है। चूँकि VTT में स्टाइल-तालिका नहीं होती, एक Default स्टाइल बनाई जाती है — Arial, आकार 20, सफ़ेद पाठ काली आउटलाइन के साथ — और सारी पंक्तियाँ उसी पर जाती हैं। इसे बाद में किसी भी ASS एडिटर में बदला जा सकता है।
दो पंक्तियों वाली VTT cue ASS में कैसे दिखती है?
दोनों फ़ॉर्मैट एक cue के भीतर हार्ड लाइन-ब्रेक रख सकते हैं, इसलिए VTT की दो पंक्तियाँ ASS में भी एक ही cue की दो पंक्तियाँ रहती हैं और एक साथ दिखती हैं। कुछ भी जोड़ा या तोड़ा नहीं जाता; बदलता सिर्फ़ समय का लिखावटी रूप है।
ASS से VTT लौटने पर क्या नया छूट सकता है?
नहीं। ASS से VTT की उलटी दिशा में भी बोल्ड और इटैलिक के अलावा बाकी स्टाइलिंग (रंग, आउटलाइन, छाया, मार्जिन), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट) जैसी जानकारी गिरती है, क्योंकि दोनों फ़ॉर्मैट अलग-अलग चीज़ें रखते हैं और उलटी दिशा की अपनी कमियाँ हैं। और इस दिशा में VTT से ASS में जो छूटा — जैसे VTT का 00:00:04,001 ASS में 0:00:04.00 बनता है, यानी हर समय 10 ms के गुणक तक पूर्णांकित होता है — वह ASS में कहीं दर्ज नहीं है, इसलिए किसी भी उलटे रूपांतरण से उसे दोबारा नहीं बनाया जा सकता।