मुख्य सामग्री पर जाएँ
SubtitleMatrix

ASS को VTT में बदलें

या सबटाइटल टेक्स्ट पेस्ट करें

यह रूपांतरण क्या बदलता है

4 चीज़ें छूटती हैं या फ़ैसला माँगती हैं

  • स्टाइलिंग

    बोल्ड और इटैलिक के अलावा सारी स्टाइलिंग (रंग, आउटलाइन, छाया, मार्जिन)

  • स्थान

    स्क्रीन पर स्थान (हर क्यू डिफ़ॉल्ट जगह पर लौट आता है)

  • कराओके

    कराओके टाइमिंग (प्रति-अक्षर हाइलाइट)

  • फ़ॉर्मैट-विशिष्ट सामग्री

    वह सामग्री जो स्रोत फ़ॉर्मैट अपने क्यू के बाहर रखता है (क्यू से बाहर के ब्लॉक, हेडर टेक्स्ट, प्रति-क्यू सेटिंग, टिप्पणी की गई घटनाएँ) — लक्ष्य फ़ॉर्मैट में उसके लिए कोई जगह नहीं

यह सूची इन दोनों फ़ॉर्मैट के क्षमता मैट्रिक्स से आती है, आपकी लोड की गई उस फ़ाइल से नहीं। कोई खास फ़ाइल ज़्यादा खो सकती है अगर वह ऐसी सुविधाएँ इस्तेमाल करती हो जिन्हें फ़ॉर्मैट अनुमति देता है पर मैट्रिक्स मॉडल नहीं करता।

इस पेज पर ASS फ़ाइल डालिए और VTT फ़ाइल पाइए। ASS एक स्क्रिप्ट है: [Script Info], [V4+ Styles] की स्टाइल-तालिका, और Dialogue पंक्तियाँ जिनमें समय 0:00:04.00 तथा {\i1}, {\pos(320,240)} और \k जैसे ओवरराइड कोड होते हैं। VTT में WEBVTT हेडर के बाद cues आती हैं, समय 00:00:04.000 की तरह बिंदु के साथ लिखा जाता है, और NOTE, STYLE व REGION ब्लॉक तथा align जैसी सेटिंग cue के बाहर रहते हैं।

जो नहीं बचता: बोल्ड और इटैलिक के अलावा बाकी स्टाइलिंग (रंग, आउटलाइन, छाया, मार्जिन), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। ASS के रंग, आउटलाइन और मार्जिन VTT में नहीं जाते, हालाँकि बोल्ड और इटैलिक बच जाते हैं; ASS का {\pos(320,240)} VTT में कोई जगह नहीं पाता और हर cue डिफ़ॉल्ट स्थान पर लौटती है; कराओके की अक्षर-दर-अक्षर अवधि चली जाती है, इसलिए VTT पूरा cue एक साथ दिखाता है। ये चीज़ें चुपचाप नहीं गिरतीं — फ़ाइल डालने से पहले ही ऊपर की सूची में लिखी रहती हैं।

WebVTT (VTT) की फ़ाइल .vtt एक्सटेंशन के साथ बनती है; शुरुआत में WEBVTT हेडर होता है और समय में बिंदु आता है। एक फ़ाइल हो या पूरी सीरीज़, कतार एक-एक करके चलती है, बीच में रोकी जा सकती है, और नतीजे एक ZIP में आते हैं। रूपांतरण आपके ब्राउज़र में होता है, इसलिए फ़ाइल कहीं अपलोड नहीं होती।

उदाहरण

एक सामान्य 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: वही रूपांतरण एक कठिन इनपुट पर

इनपुट

[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

असली ASS फ़ाइलों में BOM, मिश्रित पंक्ति-अंत, खाली क्षेत्र या बिगड़ा समय-कोड मिलता है। ऊपर की साफ़ मिसाल से मिलाकर देखिए कि पार्सर कितना माफ़ करता है और क्या रिपोर्ट करता है।

अक्सर पूछे जाने वाले सवाल

ASS के क्षण VTT की घड़ी में कैसे अनुवादित होते हैं?

ASS इसे 0:00:04.00 लिखता है और VTT इसे 00:00:04.000 लिखता है; क्षण वही रहता है, सिर्फ़ विराम-चिह्न और इकाई बदलती है। कोई पूर्णांकन नहीं होता, क्योंकि VTT की घड़ी ASS से महीन या बराबर है।

ASS के [Script Info], [Fonts]/[Graphics] की सामग्री और Comment: पंक्तियाँ का VTT में क्या ठिकाना है?

ASS की वह सामग्री cue मॉडल के बाहर रहती है — [Script Info] वैश्विक सेटिंग है, [Fonts] व [Graphics] एम्बेडेड बाइट हैं, और Comment: ऐसे इवेंट हैं जो कभी दिखाए नहीं जाते। VTT में उसके लिए कोई अनुभाग, स्तंभ या विशेषता नहीं है, इसलिए वह गिर जाती है और रिपोर्ट में अलग से गिनी जाती है; VTT का अपना हेडर उसे दोबारा नहीं बना सकता।

ASS से VTT में कौन-कौन सी जानकारी छूटती है?

इस दिशा में 4 तरह की जानकारी गिरती है: बोल्ड और इटैलिक के अलावा बाकी स्टाइलिंग (रंग, आउटलाइन, छाया, मार्जिन), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। मिसाल के लिए, ASS का {\pos(320,240)} और उसका रंग VTT में अपना स्थान नहीं पाते। यह सूची आपकी फ़ाइल डालने से पहले ही दिखती है, और फ़ाइल आने के बाद उसमें बताया जाता है कि उसमें से कितनी चीज़ें वाकई मौजूद थीं।

VTT में ASS के cues के आगे क्या लिखा जाता है?

ASS से बनी VTT फ़ाइल की पहली पंक्ति WEBVTT होती है, क्योंकि उसके बिना खिलाड़ी फ़ाइल नहीं खोलते। उसके बाद हर ASS cue का समय 00:00:04.000 जैसे बिंदु वाले रूप में और पाठ उसके नीचे लिखा जाता है; क्रमांक रखे जा सकते हैं पर अनिवार्य नहीं।

ASS की cues का क्रम VTT में बदलता है या नहीं?

cues शुरुआती समय के क्रम में लिखी जाती हैं, इसलिए ASS में अगर कोई cue क्रम से बाहर थी तो VTT में वह अपनी सही जगह पर लौट आती है। एक cue के भीतर की पंक्तियाँ अलग नहीं होतीं, क्योंकि दोनों फ़ॉर्मैट हार्ड लाइन-ब्रेक रख सकते हैं।

VTT से ASS लौटने पर क्या नया छूट सकता है?

नहीं। VTT से ASS की उलटी दिशा में भी समय की सूक्ष्मता (लक्ष्य की घड़ी 10 ms की है, इसलिए हर समय पूर्णांकित होता है), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट) जैसी जानकारी गिरती है, क्योंकि दोनों फ़ॉर्मैट अलग-अलग चीज़ें रखते हैं और उलटी दिशा की अपनी कमियाँ हैं। और इस दिशा में ASS से VTT में जो छूटा — जैसे ASS का {\pos(320,240)} और उसका रंग VTT में अपना स्थान नहीं पाते — वह VTT में कहीं दर्ज नहीं है, इसलिए किसी भी उलटे रूपांतरण से उसे दोबारा नहीं बनाया जा सकता।

संबंधित टूल