.ytt फ़ॉर्मैट:काम आने वाला संदर्भ
YouTube के टाइम्ड-टेक्स्ट फ़ॉर्मैट का संदर्भ — वही XML जो स्टाइल वाले कैप्शन के पीछे रहता है, .ytt के रूप में सेव होता है और YouTube के भीतर फ़ॉर्मैट 3 या SRV3 कहलाता है। नीचे वही सब है जो यह फ़ॉर्मैट असल में स्वीकार करता है, उन वैल्यू समेत जो देखने में ठीक लगती हैं और चुपचाप गिरा दी जाती हैं।
फ़ाइल की बनावट
<timedtext format="3">
<head>
<pen id="1" b="1" fc="#FEFEFE" fo="254" et="4" ec="#000000"/>
<wp id="0" ap="7" ah="50" av="90"/>
<ws id="0" ju="2"/>
</head>
<body>
<p t="1000" d="1600" wp="0" ws="0" p="1">Today we fix that.</p>
</body>
</timedtext>
हेड दोबारा इस्तेमाल होने वाली स्टाइल घोषित करता है: टेक्स्ट के लिए pen, कैप्शन विंडो कहाँ बैठेगी इसके लिए wp, और उसके भीतर टेक्स्ट कैसे अलाइन होगा इसके लिए ws। बॉडी कैप्शन लाइनों की सूची है, जिनमें से हर एक अपनी इस्तेमाल की गई स्टाइल की ओर id से इशारा करती है।
<pen> — टेक्स्ट की स्टाइल
| एट्रिब्यूट | वैल्यू | मतलब |
|---|---|---|
fs | 0–7 | फ़ॉन्ट: 0 डिफ़ॉल्ट सैन्स, 1 Courier New, 2 Times New Roman, 3 Lucida Console, 5 Comic Sans MS, 6 Monotype Corsiva, 7 Carrois Gothic SC। 4 तय नहीं है। |
sz | integer | साइज़। 100 YouTube का डिफ़ॉल्ट है; स्केल लीनियर नहीं है (नीचे देखिए)। |
b, i, u | "1" | बोल्ड, इटैलिक, अंडरलाइन। सिर्फ़ तभी लिखे जाते हैं जब लागू हों। |
fc | #RRGGBB | टेक्स्ट का रंग। शुद्ध #FFFFFF को आमतौर पर #FEFEFE लिखा जाता है। |
fo | 0–254 | टेक्स्ट की अपारदर्शिता। 255 हटा दिया जाता है — पूरी तरह अपारदर्शी के लिए 254। |
bc, bo | #RRGGBB, 0–254 | बैकग्राउंड बॉक्स का रंग और उसकी अपारदर्शिता। bo="0" बॉक्स हटा देता है। |
et | 1–4 | एज: 1 कड़ी छाया, 2 बेवल, 3 ग्लो, 4 हल्की छाया। आउटलाइन नाम का कोई टाइप नहीं है — उसकी जगह गहरे रंग का ग्लो इस्तेमाल होता है। |
ec | #RRGGBB | एज का रंग। डिफ़ॉल्ट #222222 है, टेक्स्ट वाली अपारदर्शिता पर। |
of | 0–2 | ऑफ़सेट: 0 सबस्क्रिप्ट, 1 सामान्य, 2 सुपरस्क्रिप्ट। |
rb | 0–5 | रूबी एनोटेशन (फ़ुरिगाना): 0 कुछ नहीं, 1 बेस, 2 कोष्ठक, 4 टेक्स्ट पहले, 5 टेक्स्ट बाद में। |
साइज़ का फ़ॉर्मूला
sz में लिखी वैल्यू वह साइज़ नहीं है जो आपके मन में है। यह असली स्केल से चार गुना तेज़ी से बदलती है:
sz = (1 + (scale − 1) × 4) × 100
scale = 1 + (sz / 100 − 1) / 4
यानी sz="100" का मतलब 100% है, sz="200" का 125%, और sz="50" का लगभग 87%। YouTube का डिफ़ॉल्ट कैप्शन साइज़ फ़्रेम की ऊँचाई का लगभग 4.6–4.8% होता है, और sz="100" इसी साइज़ पर रेंडर होता है।
<wp> — विंडो की पोज़िशन
| एट्रिब्यूट | वैल्यू | मतलब |
|---|---|---|
ap | 0–8 | एंकर पॉइंट: 0 ऊपर-बाएँ, 1 ऊपर-बीच, 2 ऊपर-दाएँ, 3 बीच-बाएँ, 4 बीचोबीच, 5 बीच-दाएँ, 6 नीचे-बाएँ, 7 नीचे-बीच, 8 नीचे-दाएँ। |
ah | 0–100 | हॉरिज़ॉन्टल पोज़िशन। |
av | 0–100 | वर्टिकल पोज़िशन। |
पोज़िशन फ़्रेम के सीधे प्रतिशत नहीं हैं। YouTube इन्हें एक सेफ़ एरिया में मैप करता है:
screen% = value × 0.96 + 2
av="0" ऊपर से 2% पर आता है और av="100" 98% पर। उल्टी दिशा में चलने वाला कन्वर्टर value = (screen% − 2) / 0.96 इस्तेमाल करता है।
<ws> — विंडो की स्टाइल
| एट्रिब्यूट | वैल्यू | मतलब |
|---|---|---|
ju | 0–2 | जस्टिफ़िकेशन: 0 बाएँ, 1 दाएँ, 2 बीच में। |
pd | 0–3 | प्रिंट दिशा; 0 का मतलब हॉरिज़ॉन्टल बाएँ से दाएँ। |
sd | 0–1 | स्क्रॉल दिशा, वर्टिकल टेक्स्ट के लिए। |
<p> और <s> — लाइनें और सेगमेंट
| एट्रिब्यूट | वैल्यू | मतलब |
|---|---|---|
p.t | ≥ 1 ms | शुरू होने का समय। कुछ Android प्लेयर 0 पर शुरू होने वाली लाइन को नज़रअंदाज़ कर देते हैं। |
p.d | > 0 ms | अवधि। |
p.wp, p.ws | id | इस्तेमाल की जाने वाली विंडो पोज़िशन और विंडो स्टाइल। |
p.p | id | पूरी लाइन के लिए पेन। |
s.p | id | लाइन के भीतर एक सेगमेंट के लिए पेन। |
s.t | ≥ 0 ms | सेगमेंट का शुरू, लाइन के सापेक्ष — शब्द-दर-शब्द टाइमिंग इसी तरह काम करती है। |
वे ख़ासियतें जो पूरी दोपहर ले लेती हैं
- एक पेन पर सिर्फ़ एक एज। एक ही टेक्स्ट पर आउटलाइन और छाया दोनों चाहिए तो लाइन दो बार लिखनी पड़ेगी, दो पेन के साथ, एक के ऊपर एक।
- मोटी आउटलाइन का मतलब है एक के ऊपर एक रखी कॉपियाँ। ग्लो एज वाली उसी लाइन को कुछ बार दोहराइए; नीचे वाली कॉपियों का फ़ॉन्ट बड़ा मत कीजिए, वरना लेयर्स दाएँ-बाएँ खिसक जाएँगी।
- अपारदर्शिता 255 ग़ायब हो जाती है। 254 इस्तेमाल कीजिए।
- ज़ीरो-विड्थ भराव। जिन लाइनों में कई स्टाइल वाले सेगमेंट मिले होते हैं, उनके इर्द-गिर्द ज़ीरो-विड्थ स्पेस चाहिए, वरना कुछ मोबाइल प्लेयर स्टाइलिंग को लाइन के अपने पेन में समेट देते हैं।
- एनिमेशन नहीं है। ज़ूम और रोल-अप कुछ दर्जन मिलीसेकंड के अंतर पर लिखी गई कैप्शन एंट्रियों की कतार भर हैं।
- दर्शक की सेटिंग जीतती है। जिसने भी प्लेयर में अपने कैप्शन का रूप-रंग बदला है, उसे उसकी सेटिंग दिखेगी, आपके पेन नहीं।
यह जानकारी कहाँ से आई है
YouTube ने इस फ़ॉर्मैट का कोई सार्वजनिक दस्तावेज़ नहीं दिया है। यहाँ दिया गया बर्ताव YTSubConverter से आया है — वह ओपन-सोर्स कन्वर्टर जिसका सोर्स कोड ही व्यवहार में इसका स्पेसिफ़िकेशन है — और इसे YouTube से डाउनलोड किए गए असली कैप्शन ट्रैक तथा प्लेयर असल में जो रेंडर करते हैं, उनसे मिलाकर जाँचा गया है। Rainbow Captions यही फ़ॉर्मैट लिखता है — आप ऊपर दी गई टेबल से ट्रैक हाथ से बना सकते हैं, या लेयरिंग, गार्ड कैरेक्टर और हर शब्द की टाइमिंग ऐप पर छोड़ सकते हैं।
Rainbow Captions पेन, परतदार आउटलाइन, गार्ड कैरेक्टर और हर शब्द की टाइमिंग सँभालता है — 170 भाषाओं में। डाउनलोड मुफ़्त, पहली 10 भाषाएँ भी मुफ़्त।
Mac के लिए डाउनलोड करें