SBV को JSON में बदलें
या सबटाइटल टेक्स्ट पेस्ट करें
यह रूपांतरण क्या बदलता है
इस दिशा में कुछ नहीं छूटता — स्रोत फ़ॉर्मैट की हर सुविधा के लिए लक्ष्य फ़ॉर्मैट में कहीं जगह है।
यह सूची इन दोनों फ़ॉर्मैट के क्षमता मैट्रिक्स से आती है, आपकी लोड की गई उस फ़ाइल से नहीं। कोई खास फ़ाइल ज़्यादा खो सकती है अगर वह ऐसी सुविधाएँ इस्तेमाल करती हो जिन्हें फ़ॉर्मैट अनुमति देता है पर मैट्रिक्स मॉडल नहीं करता।
यह पेज YouTube SBV फ़ाइल को SubtitleMatrix JSON में बदलता है। SBV में एक पंक्ति पर दो समय 0:00:04.000,0:00:07.000 रहते हैं और उसके नीचे पाठ; कोई क्रमांक नहीं होता। JSON में हर cue के समय 4000 जैसे पूर्णांक मिलीसेकंड हैं, और styles तालिका तथा tags सरणी सब कुछ संरचित रूप में रहता है।
यहाँ कुछ नहीं छूटता: JSON हर वह चीज़ संरचित रूप में रख सकता है जो SBV में है — समय, पाठ, पंक्ति विराम और cue का क्रम। SBV का 0:00:04.000 JSON में 4000 जैसा पूर्णांक मिलीसेकंड बनता है।
SubtitleMatrix JSON का आउटपुट .json फ़ाइल है और उसमें version, styles और cues वाली संरचना बनती है और समय पूर्णांक मिलीसेकंड रहते हैं। चाहे एक फ़ाइल डालें या पूरी सीरीज़, सब कुछ एक-एक करके चलता है, बीच में रोका जा सकता है, और सारे नतीजे एक ZIP में मिलते हैं। कोई सर्वर नहीं, कोई अपलोड नहीं — सब कुछ आपके ब्राउज़र में।
उदाहरण
एक सामान्य SBV फ़ाइल, JSON में बदली गई
इनपुट
0:00:01.000,0:00:03.500
The quick brown fox.
0:00:04.000,0:00:06.250
Jumps over the lazy dog.
0:00:07.000,0:00:09.000
Two lines here.
And a second one.
आउटपुट
{
"version": 1,
"cues": [
{
"start": 1000,
"end": 3500,
"lines": [
"The quick brown fox."
]
},
{
"start": 4000,
"end": 6250,
"lines": [
"Jumps over the lazy dog."
]
},
{
"start": 7000,
"end": 9000,
"lines": [
"Two lines here.",
"And a second one."
]
}
]
}
यहाँ कुछ नहीं छूटता: दोनों ओर की पंक्तियाँ एक-एक करके मिलाइए।
SBV से JSON: वही रूपांतरण एक कठिन इनपुट पर
इनपुट
0:00:02.000,0:00:04.000
Carriage-return line endings.
0:00:06.000,0:00:08.000
Indented timecode, no final newline.आउटपुट
{
"version": 1,
"cues": [
{
"start": 2000,
"end": 4000,
"lines": [
"Carriage-return line endings."
]
},
{
"start": 6000,
"end": 8000,
"lines": [
"Indented timecode, no final newline."
]
}
]
}
असली SBV फ़ाइलों में BOM, मिश्रित पंक्ति-अंत, खाली क्षेत्र या बिगड़ा समय-कोड मिलता है। ऊपर की साफ़ मिसाल से मिलाकर देखिए कि पार्सर कितना माफ़ करता है और क्या रिपोर्ट करता है।
अक्सर पूछे जाने वाले सवाल
SBV की समय-पंक्ति JSON में बदलते समय क्या बदलता है?
SBV का 0:00:04.000 JSON में 4000 जैसा पूर्णांक मिलीसेकंड बनता है। कोई पूर्णांकन नहीं होता, क्योंकि JSON की घड़ी SBV से महीन या बराबर है।
SBV की गिनती JSON फ़ाइल में कहाँ दिखती है?
SBV में cue क्रमांक होता ही नहीं, इसलिए JSON में जाने पर गिनती जोड़ी जाती है या नहीं, यह लक्ष्य का ढाँचा तय करता है। दोनों में cue का असली क्रम समय से आता है, इसलिए क्रमांक न होने से पहचान नहीं खोती।
SBV से JSON का रूपांतरण पूरी तरह सुरक्षित क्यों है?
कुछ नहीं छूटता, क्योंकि JSON SBV की हर जानकारी रख सकता है: cue का समय, पाठ, पंक्ति विराम और क्रम। SBV का 0:00:04.000 JSON में 4000 जैसा पूर्णांक मिलीसेकंड बनता है। यह क्षमता-स्तर का निष्कर्ष है; अगर आपकी SBV फ़ाइल में पार्स करते समय कोई खराब ब्लॉक पहले ही छूटा था, तो वह अलग रिपोर्ट में दिखेगा।
JSON में SBV की cue किस संरचना में बदलती है?
JSON में हर SBV cue cues सरणी का एक ऑब्जेक्ट बनती है जिसमें start और end पूर्णांक मिलीसेकंड होते हैं, जैसे 4000। स्टाइल styles ऑब्जेक्ट में और रंग-ज़ोर tags सरणी में संरचित रूप में रखे जाते हैं।
दो पंक्तियों वाली SBV cue JSON में कैसे दिखती है?
दोनों फ़ॉर्मैट एक cue के भीतर हार्ड लाइन-ब्रेक रख सकते हैं, इसलिए SBV की दो पंक्तियाँ JSON में भी एक ही cue की दो पंक्तियाँ रहती हैं और एक साथ दिखती हैं। कुछ भी जोड़ा या तोड़ा नहीं जाता; बदलता सिर्फ़ समय का लिखावटी रूप है।
JSON से SBV लौटने पर क्या नया छूट सकता है?
नहीं। JSON से SBV की उलटी दिशा में भी सारी स्टाइलिंग (बोल्ड, इटैलिक, रंग, आउटलाइन, छाया), स्क्रीन पर स्थिति (हर cue डिफ़ॉल्ट जगह पर लौटती है), कराओके समय (अक्षर-दर-अक्षर हाइलाइट) जैसी जानकारी गिरती है, क्योंकि दोनों फ़ॉर्मैट अलग-अलग चीज़ें रखते हैं और उलटी दिशा की अपनी कमियाँ हैं। और इस दिशा में SBV से JSON में जो छूटा — जैसे source की कुछ जानकारी JSON में जगह नहीं पाती — वह JSON में कहीं दर्ज नहीं है, इसलिए किसी भी उलटे रूपांतरण से उसे दोबारा नहीं बनाया जा सकता।