ASS को TXT में बदलें
या सबटाइटल टेक्स्ट पेस्ट करें
यह रूपांतरण क्या बदलता है
6 चीज़ें छूटती हैं या फ़ैसला माँगती हैं
- टाइमिंग
पूरी टाइमलाइन (आउटपुट फ़ॉर्मैट कोई टाइमिंग नहीं रखता)
- स्टाइलिंग
सारी स्टाइलिंग (बोल्ड, इटैलिक, रंग, आउटलाइन, छाया)
- स्थान
स्क्रीन पर स्थान (हर क्यू डिफ़ॉल्ट जगह पर लौट आता है)
- कराओके
कराओके टाइमिंग (प्रति-अक्षर हाइलाइट)
- लाइन ब्रेक
लाइन ब्रेक (कई पंक्तियों वाले क्यू एक पंक्ति में जोड़ दिए जाएँगे)
- फ़ॉर्मैट-विशिष्ट सामग्री
वह सामग्री जो स्रोत फ़ॉर्मैट अपने क्यू के बाहर रखता है (क्यू से बाहर के ब्लॉक, हेडर टेक्स्ट, प्रति-क्यू सेटिंग, टिप्पणी की गई घटनाएँ) — लक्ष्य फ़ॉर्मैट में उसके लिए कोई जगह नहीं
यह सूची इन दोनों फ़ॉर्मैट के क्षमता मैट्रिक्स से आती है, आपकी लोड की गई उस फ़ाइल से नहीं। कोई खास फ़ाइल ज़्यादा खो सकती है अगर वह ऐसी सुविधाएँ इस्तेमाल करती हो जिन्हें फ़ॉर्मैट अनुमति देता है पर मैट्रिक्स मॉडल नहीं करता।
यह पेज Advanced SubStation Alpha (ASS) फ़ाइल को Plain Text (TXT) में बदलता है। ASS एक स्क्रिप्ट है: [Script Info], [V4+ Styles] की स्टाइल-तालिका, और Dialogue पंक्तियाँ जिनमें समय 0:00:04.00 तथा {\i1}, {\pos(320,240)} और \k जैसे ओवरराइड कोड होते हैं। TXT में सिर्फ़ पंक्तियाँ हैं — कोई समय-कोड नहीं, इसलिए हर पंक्ति एक cue मानी जाती है।
जो नहीं बचता: पूरी समयरेखा (लक्ष्य कोई समय नहीं रखता), सारी स्टाइलिंग (बोल्ड, इटैलिक, रंग, आउटलाइन, छाया), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट), पंक्ति विराम (बहु-पंक्ति cue एक पंक्ति में जुड़ जाती हैं), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। समय-कोड पूरी तरह गायब हो जाते हैं, इसलिए TXT की एक पंक्ति को आपकी फ़ाइल का कोई क्षण याद नहीं रहता; ASS के रंग, आउटलाइन, छाया और मार्जिन TXT में कोई स्तंभ नहीं पाते; ASS का {\pos(320,240)} TXT में कोई जगह नहीं पाता और हर cue डिफ़ॉल्ट स्थान पर लौटती है। ये चीज़ें चुपचाप नहीं गिरतीं — फ़ाइल डालने से पहले ही ऊपर की सूची में लिखी रहती हैं।
Plain Text (TXT) का आउटपुट .txt फ़ाइल है और उसमें हर cue एक सादी पंक्ति बनती है, बिना समय के। चाहे एक फ़ाइल डालें या पूरी सीरीज़, सब कुछ एक-एक करके चलता है, बीच में रोका जा सकता है, और सारे नतीजे एक ZIP में मिलते हैं। कोई सर्वर नहीं, कोई अपलोड नहीं — सब कुछ आपके ब्राउज़र में।
उदाहरण
एक सामान्य ASS फ़ाइल, TXT में बदली गई
इनपुट
[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
आउटपुट
Hello there.
Italic and bold text.
Positioned
karaoke
Line one
Line two
Top left
इस आउटपुट में छूटा: पूरी समयरेखा, स्टाइलिंग, स्क्रीन स्थिति, कराओके, पंक्ति विराम, फ़ॉर्मैट-विशिष्ट सामग्री। बाकी सब पंक्ति-दर-पंक्ति मेल खाता है।
ASS से TXT: वही रूपांतरण एक कठिन इनपुट पर
इनपुट
[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आउटपुट
Hello, world
{\fad(300,300)}Unmodelled override
Both, wrong order
One decimal centisecond
Soft
break
असली ASS फ़ाइलों में BOM, मिश्रित पंक्ति-अंत, खाली क्षेत्र या बिगड़ा समय-कोड मिलता है। ऊपर की साफ़ मिसाल से मिलाकर देखिए कि पार्सर कितना माफ़ करता है और क्या रिपोर्ट करता है।
अक्सर पूछे जाने वाले सवाल
TXT में ASS की समय-पंक्ति का क्या होता है?
ASS हर cue के शुरू और अंत को 0:00:04.00 के रूप में रखता है, पर TXT में समय के लिए कोई जगह ही नहीं है। इसलिए पाठ की पंक्तियाँ क्रम में लिखी जाती हैं और हर समय-कोड छूट जाता है; क्रम बना रहता है, पर कौन-सी पंक्ति कब दिखेगी यह TXT से पता नहीं चलता।
ASS का [Script Info], [Fonts]/[Graphics] की सामग्री और Comment: पंक्तियाँ TXT में कहाँ जाता है?
ASS की वह सामग्री cue मॉडल के बाहर रहती है — [Script Info] वैश्विक सेटिंग है, [Fonts] व [Graphics] एम्बेडेड बाइट हैं, और Comment: ऐसे इवेंट हैं जो कभी दिखाए नहीं जाते। TXT में उसके लिए कोई अनुभाग, स्तंभ या विशेषता नहीं है, इसलिए वह गिर जाती है और रिपोर्ट में अलग से गिनी जाती है; TXT का अपना हेडर उसे दोबारा नहीं बना सकता।
ASS से TXT में बदलने पर क्या खो जाता है?
इस दिशा में 6 तरह की जानकारी गिरती है: पूरी समयरेखा (लक्ष्य कोई समय नहीं रखता), सारी स्टाइलिंग (बोल्ड, इटैलिक, रंग, आउटलाइन, छाया), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट), पंक्ति विराम (बहु-पंक्ति cue एक पंक्ति में जुड़ जाती हैं), cue मॉडल के बाहर रखी स्रोत की सामग्री (गैर-cue ब्लॉक, हेडर पाठ, प्रति-cue सेटिंग, टिप्पणी-किए इवेंट)। मिसाल के लिए, ASS का 0:00:04.00 किसी भी TXT पंक्ति के साथ नहीं रहता, इसलिए पाठ का क्रम तो बचता है पर समय नहीं। यह सूची आपकी फ़ाइल डालने से पहले ही दिखती है, और फ़ाइल आने के बाद उसमें बताया जाता है कि उसमें से कितनी चीज़ें वाकई मौजूद थीं।
TXT में ASS के cue और पंक्तियों का क्या नाता है?
TXT में हर ASS cue की पंक्तियाँ बिना समय के सादे पाठ बनती हैं। बहु-पंक्ति cue एक पंक्ति में जुड़ जाती है, क्योंकि TXT का मॉडल एक पंक्ति एक cue है।
दो पंक्तियों वाली ASS cue TXT में कैसे आएगी?
ASS एक cue के भीतर हार्ड लाइन-ब्रेक रख सकता है, पर TXT का मॉडल एक पंक्ति एक cue है। इसलिए दोनों पंक्तियाँ जोड़ दी जाती हैं और अलग पंक्ति का अंतर खत्म हो जाता है; पाठ का क्रम बना रहता है, पर दृश्य विराम नहीं।
TXT से ASS लौटने पर क्या नया छूट सकता है?
नहीं। TXT से ASS की उलटी दिशा में भी समयरेखा स्वयं बनाई जाती है (स्रोत में कोई समय नहीं), समय की सूक्ष्मता (लक्ष्य की घड़ी 10 ms की है, इसलिए हर समय पूर्णांकित होता है) जैसी जानकारी गिरती है, क्योंकि दोनों फ़ॉर्मैट अलग-अलग चीज़ें रखते हैं और उलटी दिशा की अपनी कमियाँ हैं। और इस दिशा में ASS से TXT में जो छूटा — जैसे ASS का 0:00:04.00 किसी भी TXT पंक्ति के साथ नहीं रहता, इसलिए पाठ का क्रम तो बचता है पर समय नहीं — वह TXT में कहीं दर्ज नहीं है, इसलिए किसी भी उलटे रूपांतरण से उसे दोबारा नहीं बनाया जा सकता।