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

JSON सबटाइटल फ़ॉर्मैट

यह फ़ॉर्मैट क्या व्यक्त कर सकता है

टेक्स्ट स्टाइलिंग
फ़ॉन्ट, रंग, आउटलाइन, छाया
स्क्रीन पर स्थान
हाँ
कराओके टाइमिंग
हाँ
क्यू के भीतर लाइन ब्रेक
हाँ
टाइमलाइन
हर क्यू के लिए शुरू और अंत समय
टाइमिंग संकल्प
1 ms
फ़्रेम संख्याओं में रखी टाइमिंग
नहीं
दाएँ-से-बाएँ टेक्स्ट
हाँ

उदाहरण

एक सामान्य JSON फ़ाइल, और उससे क्या पढ़ा जाता है

फ़ाइल

{
  "version": 1,
  "title": "Fixture: typical",
  "fps": 25,
  "styles": {
    "Default": {
      "name": "Default",
      "fontFamily": "Arial",
      "fontSize": 20,
      "primaryColor": "#FFFFFF",
      "bold": false,
      "italic": false
    }
  },
  "generator": "subtitlematrix fixtures",
  "cues": [
    {
      "id": "1",
      "start": 0,
      "end": 2000,
      "lines": [
        "Hello world.",
        "Second line."
      ],
      "style": "Default",
      "position": {
        "x": 100,
        "y": 200,
        "align": "center"
      }
    },
    {
      "id": "2",
      "start": 2500,
      "end": 4000,
      "lines": [
        "Plain line.",
        {
          "text": "Styled line.",
          "tags": [
            {
              "kind": "italic",
              "start": 0,
              "end": 6
            }
          ]
        }
      ]
    },
    {
      "id": "3",
      "start": 4500,
      "end": 6000,
      "lines": [
        "Roger: I am here."
      ],
      "speaker": "Roger"
    }
  ]
}

इसमें क्या है

3 cues, 5 lines of text

  0 ms → 2000 ms
    Hello world.
    Second line.
    [Default; position 100,200 (center)]
  2500 ms → 4000 ms
    Plain line.
    Styled line.   [italic ×1]
  4500 ms → 6000 ms
    Roger: I am here.
    [speaker Roger]

Outside the cues:
  styles     Default
  other keys version, title, fps, generator — carried through untouched

दाईं ओर कोई रूपांतरित फ़ाइल नहीं है — यह वही है जो यह साइट बाईं ओर की फ़ाइल से पढ़ती है, और इस फ़ाइल का हर रूपांतरण यहीं से शुरू होता है।

एक कठिन JSON फ़ाइल, और उससे अब भी क्या पढ़ा जाता है

फ़ाइल

{
    "cues": [
        { "start": "0:00:01,5", "end": "0:00:03,0", "text": "Unpadded timecode." },
        { "start": 4000.5, "end": 5000, "lines": ["Fractional start.", { "text": "Second.", "tags": [] }] },
        { "start": 9000, "end": 8000, "lines": ["End before start."] },
        { "start": "nope", "end": 12000, "lines": ["No readable start."] },
        { "start": 13000, "lines": ["No end at all."] }
    ],
    "generator": "subtitlematrix boundary",
    "styles": {},
    "title": "Fixture: boundary"
}

इसमें क्या है

3 cues, 4 lines of text

  1500 ms → 3000 ms
    Unpadded timecode.
  4001 ms → 5000 ms
    Fractional start.
    Second.
  9000 ms → 9001 ms
    End before start.

Outside the cues:
  other keys generator, title — carried through untouched

Reported while reading — repaired or skipped, never silently:
  2 × entries with no readable start and end time (they are not cues, so they were skipped)
  1 × cue times that were not whole milliseconds (they were rounded to the nearest millisecond)
  1 × cues whose end time was not after their start time (they were given a 1ms duration)

असली JSON फ़ाइलों में BOM, Windows के CRLF अंत, समय-कोड से पहले पड़ी कोई पंक्ति या पढ़ा ही न जाने वाला समय-कोड मिलता है। ऐसा कुछ भी अपवाद नहीं फेंकता: जो समझ नहीं आता, वह चुपचाप गिरने के बजाय रिपोर्ट में आ जाता है।

SubtitleMatrix JSON को दूसरे फ़ॉर्मैट में बदलें

इनमें से हर एक पूरी तरह आपके ब्राउज़र में चलता है। लेबल बताते हैं कि वह दिशा खोलने से पहले क्या कीमत लेती है।

इस फ़ॉर्मैट में बदलना

यह पेज SubtitleMatrix JSON फ़ॉर्मैट का संदर्भ है: यह क्या रख सकता है, क्या नहीं, और इसे किन-किन फ़ॉर्मैट में बदला जा सकता है।

JSON इस साइट का अपना संरचित फ़ॉर्मैट है: समय पूर्णांक मिलीसेकंड, styles तालिका और हर cue के tags। कोई खिलाड़ी इसे सीधे नहीं चलाता; यह स्क्रिप्ट और पाइपलाइन के लिए है।

इस फ़ॉर्मैट से किसी भी लक्ष्य में जाने पर कुछ न कुछ छूटता है, और नीचे का हर पेज उसकी अपनी सूची दिखाता है। सारे रूपांतरण ब्राउज़र में चलते हैं: फ़ाइल अपलोड नहीं होती, खाता नहीं चाहिए, और NDA, मरीज़ के रिकॉर्ड या प्रसारण-प्रतिबंध वाली सामग्री मशीन से बाहर नहीं जाती।

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

JSON फ़ाइल क्या है?

यहाँ JSON इस साइट का अपना सबटाइटल ढाँचा है: version क्षेत्र, वैकल्पिक style तालिका, और cues की सरणी जिनके समय मिलीसेकंड में हैं। यह स्क्रिप्ट और पाइपलाइन के लिए है, खिलाड़ियों के लिए नहीं।

JSON में स्टाइल रखी जाती है?

हाँ, और बाकियों से ज़्यादा: फ़ॉन्ट, आकार, रंग, आउटलाइन और मार्जिन की स्टाइल-तालिका, साथ में पाठ के भीतर के ओवरराइड कोड। styles ऑब्जेक्ट नामित स्टाइल रखता है और tags सरणी हर पंक्ति का ज़ोर संरचित रूप में रखती है।

JSON में समय कैसे लिखा जाता है?

पूर्णांक मिलीसेकंड में, जैसे 4000। दशमलव नहीं, इकाई नहीं — सिर्फ़ संख्या, जिससे स्क्रिप्ट में गणना सीधी रहती है।

JSON से किन फ़ॉर्मैट में बिना कुछ खोए बदला जा सकता है?

कोई भी नहीं — JSON की हर जानकारी रखने वाला कोई लक्ष्य इस साइट पर नहीं है। इसलिए हर दिशा में कुछ छूटता है; लक्ष्य इस बात से चुनें कि आप कौन-सी गिरी हुई चीज़ बर्दाश्त कर सकते हैं, इससे नहीं कि कौन-सा फ़ॉर्मैट सबसे आम है।

JSON cue के बाहर क्या रखता है?

कुछ नहीं — JSON में सारी जानकारी cue के भीतर ही रहती है, इसलिए cue के बाहर गिराने के लिए कुछ नहीं होता।

JSON फ़ाइल को टेक्स्ट एडिटर में खोल सकते हैं?

हाँ; कॉमा और उद्धरण सही रखें, क्योंकि समय 4000 जैसी सादी संख्या है।