सबटाइटल फ़्रेम दर बदलें
या सबटाइटल टेक्स्ट पेस्ट करें
विकल्प
टाइमिंग किस फ़्रेम रेट में गिनी गई है। फ़ॉर्मैट पेजों पर यही MicroDVD को चाहिए, क्योंकि वह टाइमिंग फ़्रेम संख्याओं में रखता है। फ़्रेम रेट पेजों पर यह वह रेट है जिसके हिसाब से फ़ाइल की टाइमिंग की गई थी — वह संस्करण जिसके लिए सबटाइटल बने थे — और पेज का दूसरा बॉक्स उस वीडियो का रेट लेता है जिसके साथ आप इन्हें इस्तेमाल करेंगे। 23.976, 24, 25, 29.97, 30, 50, 59.94 और 60 आम हैं। गलत होने पर पूरी टाइमलाइन खिसक जाती है, और फ़्रेम रेट पेजों पर वह एक अनुपात से खिसकती है, तय मात्रा से नहीं।
जिस संस्करण के साथ आप सबटाइटल इस्तेमाल करेंगे — जो वीडियो आप दरअसल चलाएँगे — उसका फ़्रेम रेट। लगाया जाने वाला गुणक पहला बॉक्स ÷ यह है, इसलिए 24 से 25 देता है 0.96: फ़िल्म PAL पर 4% तेज़ चलती है, और 100 मिनट की फ़ीचर 96 मिनट के टेप में आ जाती है। दोनों बॉक्स उलटे रहने पर पूरी टाइमलाइन उसी मात्रा से गलत दिशा में खिसक जाती है।
फ़्रेम रेट बदलना सबटाइटल टाइमलाइन की गति बदलना है: हर टाइमस्टैम्प को एक अनुपात से गुणा किया जाता है, जो दोनों फ़्रेम रेट से निकलता है। पहला बॉक्स वह रेट है जिसके साथ आपकी फ़ाइल टाइम हुई थी — वह संस्करण जिसके लिए सबटाइटल बने थे। दूसरा उस संस्करण का रेट है जिसके साथ आप उन्हें चलाएँगे। अनुपात पहला भाग दूसरा है, इसलिए 23.976 और 25 पर 0.95904 बनता है और सब कुछ 4.1 प्रतिशत पहले आ जाता है।
यही दिशा इस पेज का पूरा काम है, और यही वह हिस्सा है जहाँ गलती होती है। जिस संख्या से भाग देना है वह वह संस्करण है जिस पर आप चलाएँगे, वह नहीं जो आपके पास है। PAL के उदाहरण से यह सबसे साफ़ दिखता है: 24 fps पर शूट फ़िल्म 25 fps पर वही तस्वीरें 4 प्रतिशत तेज़ चलाती है, जिससे 100 मिनट की फ़ीचर 96 मिनट का टेप बन जाती है। इसलिए फ़िल्म के साथ टाइम की गई फ़ाइल को टेप पर बैठने के लिए 96 से सिकोड़ना पड़ता है, और वही फ़ाइल फ़िल्म मास्टर पर लौटते समय 104.1667 से खींचनी पड़ती है। दोनों रेट गलत बॉक्स में डालें तो टाइमलाइन उतनी ही मात्रा में उलटी दिशा में चल जाती है — फ़ाइल फिर भी सबटाइटल फ़ाइल जैसी दिखती है, इसीलिए दोनों बॉक्सों पर लेबल हैं, एक ही गुणक नहीं छोड़ा गया।
जो जोड़ियाँ व्यवहार में मिलती हैं: NTSC फ़िल्म बनाम PAL के लिए 23.976 से 25 और वापस, फ़िल्म मास्टर बनाम PAL के लिए 24 से 25 और वापस, इंटरलेस्ड सामग्री दो बार गिने जाने पर 50 से 25, और टाइमलाइन गलत फ़्रेम में गिने जाने पर 23.976 बनाम 29.97। इस समूह के छह पेज बॉक्स भरकर देते हैं और बताते हैं कि हर जोड़ी किस काम की है; यह पेज बाकी सब के लिए है। दोनों बॉक्स कोई भी रेट लेते हैं, 29.97, 30, 59.94 और 60 समेत।
MicroDVD .sub फ़ाइलें बाकी सब से अलग बर्ताव करती हैं, क्योंकि उनके टाइमकोड घड़ी के मान नहीं, फ़्रेम नंबर हैं। अलग रेट पर चलाई गई वही तस्वीरें अपने फ़्रेम नंबर रखती हैं — फ़्रेम 50 दोनों संस्करणों में फ़्रेम 50 ही है — इसलिए रूपांतरण उन नंबरों को नहीं छूता और फ़ाइल की पहली पंक्ति पर घोषित फ़्रेम रेट बदल देता है। SRT, WebVTT, ASS, SSA, SBV, SAMI, TTML, JSON और CSV अपने असली रूप में पढ़े जाते हैं, एक्सटेंशन के अनुमान से नहीं; सादा टेक्स्ट और LRC स्वीकार नहीं, क्योंकि दोनों में अनुपात लगाने लायक समाप्ति समय ही नहीं होता। कुछ अपलोड नहीं होता, और पूरा सीज़न एक बार में कतार से निकलता है।
उदाहरण
वह जोड़ी जिस पर बॉक्स शुरू होते हैं
इनपुट
1
00:00:02,000 --> 00:00:04,000
Hello there.
2
00:00:30,000 --> 00:00:32,000
Half a minute in.
आउटपुट
1
00:00:01,918 --> 00:00:03,836
Hello there.
2
00:00:28,771 --> 00:00:30,689
Half a minute in.
23.976 और 25 पर 0.95904, इसलिए हर टाइमस्टैम्प अपना 95.904 प्रतिशत रखता है। दो सेकंड वाली क्यू 82 ms हिलती है, तीस सेकंड वाली 1,229 ms — शून्य से पंद्रह गुना दूरी, पंद्रह गुना खिसकाव। फ़ाइल में और कुछ नहीं बदलता, और हर क्यू के दोनों किनारे उसी संख्या से गुणा होते हैं, इसलिए क्यू की लंबाई भी उसी अनुपात में घटती है।
फ़्रेम नंबर क्यों नहीं हिलते
इनपुट
{1}{1}25
{50}{100}Hello
{150}{200}World
आउटपुट
{1}{1}24
{50}{100}Hello
{150}{200}World
यह देखने में लगता है कि कुछ नहीं हुआ, और फ़्रेम नंबर सचमुच नहीं हिले — अलग रेट पर चलाई गई वही तस्वीरें अब भी फ़्रेम 50, 100, 150 और 200 हैं। जो बदला वह फ़ॉर्मैट की पहली पंक्ति पर घोषित रेट है: 25 से 24, और खिलाड़ी में सबटाइटल उसी से हिलते हैं। उसी फ़ाइल को बिना कहीं रेट बताए बदलें तो फ़्रेम गुणा होंगे, जो उन फ़ाइलों का जवाब है जिनकी टाइमिंग गलत फ़्रेम में गिनी गई थी, अलग गति पर चलाई जा रही फ़ाइलों का नहीं।
एक मिनट बाद खुलने वाली फ़ाइल
इनपुट
1
00:01:00,000 --> 00:01:02,000
Lead-in ends, speech starts.
2
00:02:00,000 --> 00:02:02,000
One minute later.
आउटपुट
1
00:01:02,563 --> 00:01:04,648
Lead-in ends, speech starts.
2
00:02:05,125 --> 00:02:07,211
One minute later.
25 और 23.976 पर 1.0427094, दूसरी दिशा, और यह शून्य से लगता है: शुरुआती क्यू एक मिनट पर बैठी है और ढाई सेकंड बाद धकेल दी जाती है। लीड-इन बाकी हर खामोशी की तरह टाइमलाइन का हिस्सा है, इसलिए वह सब के साथ स्केल होता है। अगर पहला सबटाइटल अपनी जगह रहना चाहिए और सिर्फ़ उसके बाद का हिल सकता है, तो आपको अनुपात नहीं, तय ऑफ़सेट या पॉइंट सिंक चाहिए।
अक्सर पूछे जाने वाले सवाल
दो फ़्रेम रेट में से पहले बॉक्स में कौन-सा डालूँ?
वह जिसके साथ फ़ाइल टाइम हुई थी — वह संस्करण जिसके लिए सबटाइटल बने थे, वह वीडियो नहीं जिसे अब देखना है। गुणक पहला बॉक्स भाग दूसरा है, इसलिए 24 fps के लिए बनी और 25 fps पर चाहिए होने वाली फ़ाइल 0.96 लेती है, और वही फ़ाइल PAL से लौटते समय 1.0416667। दोनों संख्याएँ जोड़ी के रूप में ही मतलब रखती हैं: 0.96 अपने आप में कुछ नहीं कहता जब तक पता न हो कि फ़ाइल किस संस्करण से आई थी।
क्या वे रेट डाल सकते हैं जो जोड़ियों की सूची में नहीं हैं?
हाँ। अंकगणित के लिहाज़ से दोनों बॉक्स खुले टेक्स्ट हैं और अनुपात उसी से निकलता है जो आप डालें — 29.97, 30, 48, 59.94 और 60 सब चलते हैं। इस समूह के छह पेज इसलिए हैं क्योंकि उनकी जोड़ियाँ व्यवहार में मिलती हैं और जो पेज जोड़ी का नाम लेता है वह बता सकता है कि वह क्यों बनती है। अगर आप रेट के बजाय अनुपात जानते हैं, टाइमिंग समूह का स्केल पेज सीधे प्रतिशत लेता है।
फ़्रेम रेट बदलने पर हर सबटाइटल छोटा क्यों हो जाता है?
क्योंकि हर क्यू के दोनों किनारे उसी अनुपात से गुणा होते हैं। 0.96 पर दो सेकंड का सबटाइटल 1.92 सेकंड का निकलता है, और 0.95904 पर 1.918। टेक्स्ट से कुछ काटा नहीं जा रहा — क्यू को कम समय मिलता है क्योंकि पूरी टाइमलाइन तेज़ गति से चलाई जा रही है, और इसीलिए पंक्ति की पढ़ने की गति भी उन्हीं 4 प्रतिशत बढ़ जाती है। PAL में बदली फ़ाइल भेजने से पहले यह जाँच लेना चाहिए।
MicroDVD फ़ाइल अपने फ़्रेम नंबर क्यों रखती है?
क्योंकि उसके टाइमकोड फ़्रेम नंबर हैं, और तस्वीरें बदल नहीं रही हैं — अलग रेट पर चलाई गई वही शॉट वही फ़्रेम हैं। रूपांतरण फ़ाइल की पहली पंक्ति पर घोषित फ़्रेम रेट फिर से लिखता है, जिसे खिलाड़ी उन नंबरों को वापस सेकंड में बदलने के लिए इस्तेमाल करता है। जिस .sub की टाइमिंग गलत फ़्रेम में गिनी गई थी वह दूसरा मामला है: वहाँ फ़्रेम नंबर हिलते हैं, और उस जोड़ी का पेज 23.976 से 29.97 है।
क्या हर फ़्रेम-रेट जोड़ी के लिए अलग पेज चाहिए?
नहीं, यह पेज कोई भी जोड़ी संभालता है। समूह के बाकी पेज शॉर्टकट हैं जो दोनों बॉक्स भर देते हैं और जोड़ी समझाते हैं: फ़िल्म बनाम PAL के लिए 24 और 25, NTSC फ़िल्म बनाम PAL के लिए 23.976 और 25, फ़्रेम गिनती की गड़बड़ के लिए 23.976 और 29.97, और दो बार गिनी इंटरलेस्ड सामग्री के लिए 50 से 25। उन पेजों पर ऐसा कुछ नहीं जो यहाँ उपलब्ध न हो — फ़र्क़ सिर्फ़ इस में है कि वे आपको बताते हैं कि आपकी फ़ाइल को वे क्यों चाहिए।
दोनों बॉक्स में एक ही रेट डालें तो क्या होता है?
कुछ नहीं, और टूल काम करने का दिखावा करने के बजाय यही बता देता है। एक का अनुपात तादात्म्य मैपिंग है, इसलिए फ़ाइल बाइट-दर-बाइट वैसी ही लौटती है जैसी आई थी। यह अपने आप में उपयोगी जाँच है: दोनों बॉक्स एक ही रेट पर रखकर फ़ाइल डालें और आप देख रहे हैं कि पार्सर और राइटर उसके साथ ठीक क्या करते हैं, ऊपर कोई फ़्रेम-रेट अंकगणित नहीं।