liveStream रिसॉर्स में, YouTube पर ट्रांसमिट की जा रही वीडियो स्ट्रीम के बारे में जानकारी होती है. स्ट्रीम में वह कॉन्टेंट होता है जिसे YouTube के उपयोगकर्ताओं को ब्रॉडकास्ट किया जाएगा. बनाने के बाद, liveStream संसाधन को एक या उससे ज़्यादा liveBroadcast संसाधनों से बंधा जा सकता है.
तरीके
एपीआई, liveStreams संसाधनों के लिए इन तरीकों का इस्तेमाल करता है:
- list
- एपीआई अनुरोध पैरामीटर से मैच करने वाली वीडियो स्ट्रीम की सूची दिखाता है. इसे अभी आज़माएं.
- शामिल करें
- वीडियो स्ट्रीम बनाता है. स्ट्रीम की मदद से, YouTube पर वीडियो भेजा जा सकता है. इसके बाद, YouTube उस वीडियो को आपकी ऑडियंस को ब्रॉडकास्ट कर सकता है. इसे अभी आज़माएं.
- अपडेट करें
- वीडियो स्ट्रीम को अपडेट करता है. अगर आपको जिन प्रॉपर्टी में बदलाव करना है वे अपडेट नहीं हो पा रही हैं, तो आपको सही सेटिंग के साथ नई स्ट्रीम बनानी होगी. इसे अभी आज़माएं.
- मिटाएं
- वीडियो स्ट्रीम मिटाता है. इसे अभी आज़माएं.
संसाधन का रेप्रज़ेंटेशन
यहां दिया गया JSON स्ट्रक्चर, liveStreams संसाधन का फ़ॉर्मैट दिखाता है:
{
  "kind": "youtube#liveStream",
  "etag": etag,
  "id": string,
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "isDefaultStream": boolean
  },
  "cdn": {
    "ingestionType": string,
    "ingestionInfo": {
      "streamName": string,
      "ingestionAddress": string,
      "backupIngestionAddress": string
    },
    "resolution": string,
    "frameRate": string
  },
  "status": {
    "streamStatus": string,
    "healthStatus": {
      "status": string,
      "lastUpdateTimeSeconds": unsigned long,
      "configurationIssues": [
        {
          "type": string,
          "severity": string,
          "reason": string,
          "description": string
        }
      ]
    }
  },
  "contentDetails": {
    "closedCaptionsIngestionUrl": string,
    "isReusable": boolean
  }
}प्रॉपर्टी
इस टेबल में, इस संसाधन में दिखने वाली प्रॉपर्टी के बारे में बताया गया है:
| प्रॉपर्टी | |
|---|---|
| kind | stringएपीआई संसाधन के टाइप की पहचान करता है. वैल्यू youtube#liveStreamहोगी. | 
| etag | etagइस संसाधन का Etag. | 
| id | stringयह वह आईडी होता है जिसे YouTube, स्ट्रीम की खास पहचान करने के लिए असाइन करता है. | 
| snippet | objectsnippetऑब्जेक्ट में स्ट्रीम की बुनियादी जानकारी होती है. इसमें स्ट्रीम का चैनल, टाइटल, और ब्यौरा शामिल होता है. | 
| snippet.publishedAt | datetimeस्ट्रीम बनाने की तारीख और समय. वैल्यू को ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) फ़ॉर्मैट में दिया गया है. | 
| snippet.channelId | stringयह एक आईडी होता है. इसका इस्तेमाल YouTube, स्ट्रीम करने वाले चैनल की खास ढंग से पहचान करने के लिए करता है. | 
| snippet.title | stringस्ट्रीम का टाइटल. वैल्यू, 1 से 128 वर्णों की होनी चाहिए. | 
| snippet.description | stringस्ट्रीम का ब्यौरा. वैल्यू 10,000 वर्णों से ज़्यादा नहीं हो सकती. | 
| snippet.isDefaultStream | boolean
          इस प्रॉपर्टी का इस्तेमाल 1 सितंबर, 2020 या इसके बाद नहीं किया जा सकेगा. इसके बाद, जब चैनल पर लाइव स्ट्रीम करने की सुविधा चालू होगी, तब YouTube डिफ़ॉल्ट स्ट्रीम और डिफ़ॉल्ट ब्रॉडकास्ट बनाना बंद कर देगा. ज़्यादा जानकारी के लिए, हटाए गए टैग और एट्रिब्यूट से जुड़ी सूचना देखें.
        इस प्रॉपर्टी से पता चलता है कि यह स्ट्रीम, चैनल के लिए डिफ़ॉल्ट स्ट्रीम है या नहीं. डिफ़ॉल्ट स्ट्रीम कैसे काम करती हैं जब किसी YouTube चैनल पर लाइव स्ट्रीमिंग की सुविधा चालू होती है, तो YouTube उस चैनल के लिए एक डिफ़ॉल्ट स्ट्रीम और एक डिफ़ॉल्ट ब्रॉडकास्ट बनाता है. स्ट्रीम से यह तय होता है कि चैनल का मालिक, YouTube पर लाइव वीडियो कैसे भेजता है. वहीं, ब्रॉडकास्ट से यह तय होता है कि दर्शक डिफ़ॉल्ट स्ट्रीम कैसे देख सकते हैं. चैनल का मालिक, इन संसाधनों की पहचान करने के लिए, liveStreams.listऔरliveBroadcasts.listतरीकों का इस्तेमाल कर सकता है.चैनल की डिफ़ॉल्ट स्ट्रीम हमेशा मौजूद रहती है. साथ ही, इसके शुरू या खत्म होने का कोई समय नहीं होता. इसे मिटाया भी नहीं जा सकता. चैनल के मालिक को सिर्फ़ वीडियो के बिट भेजने की ज़रूरत होती है. इसके बाद, स्ट्रीम अपने-आप चलने लगती है. जब कोई स्ट्रीम खत्म हो जाती है, तो YouTube उस ब्रॉडकास्ट को YouTube वीडियो में बदल देता है और वीडियो को एक YouTube वीडियो आईडी असाइन करता है. कन्वर्ज़न पूरा होने के बाद, वीडियो को चैनल पर अपलोड किए गए वीडियो की सूची में शामिल कर लिया जाता है. ब्रॉडकास्ट खत्म होने के तुरंत बाद, वीडियो उपलब्ध नहीं होता. साथ ही, वीडियो उपलब्ध होने में लगने वाला समय, ब्रॉडकास्ट की कुल अवधि पर निर्भर करता है. | 
| cdn | objectcdnऑब्जेक्ट, लाइव स्ट्रीम के कॉन्टेंट डिलीवरी नेटवर्क (सीडीएन) की सेटिंग तय करता है. इन सेटिंग से यह पता चलता है कि YouTube पर आपका कॉन्टेंट किस तरह से स्ट्रीम किया जाता है. | 
| cdn.format | stringयह प्रॉपर्टी 18 अप्रैल, 2016 से बंद कर दी गई है. साथ ही, 17 अगस्त, 2020 से यह काम नहीं करेगी. इस तारीख के बाद भी इस प्रॉपर्टी का इस्तेमाल करने वाले अनुरोध काम नहीं करेंगे. इसके बजाय, फ़्रेम रेट और रिज़ॉल्यूशन की जानकारी अलग-अलग देने के लिए, cdn.frameRateऔरcdn.resolutionप्रॉपर्टी का इस्तेमाल करें. | 
| cdn.ingestionType | stringवीडियो स्ट्रीम को ट्रांसमिट करने के लिए इस्तेमाल किया जाने वाला तरीका या प्रोटोकॉल. इस प्रॉपर्टी के लिए ये वैल्यू मान्य हैं: 
 | 
| cdn.ingestionInfo | objectingestionInfoऑब्जेक्ट में YouTube की दी गई वह जानकारी होती है जो आपको YouTube पर स्ट्रीम करने के लिए ज़रूरी होती है. | 
| cdn.ingestionInfo.streamName | stringवीडियो स्ट्रीम को YouTube से असाइन किया गया नाम. | 
| cdn.ingestionInfo.ingestionAddress | stringवीडियो डालने के लिए इस्तेमाल किया जाने वाला मुख्य यूआरएल. आरटीएमपी, DASH या एचएलएस का इस्तेमाल करने पर, आपको YouTube पर वीडियो स्ट्रीम करने के लिए इसका इस्तेमाल करना चाहिए. आपको इस यूआरएल पर वीडियो स्ट्रीम करना होगा. वीडियो स्ट्रीम को कोड में बदलने के लिए, जिस ऐप्लिकेशन या टूल का इस्तेमाल किया जाता है उसके आधार पर, आपको स्ट्रीम का यूआरएल और स्ट्रीम का नाम अलग-अलग डालना पड़ सकता है. इसके अलावा, आपको उन्हें इस फ़ॉर्मैट में जोड़ना पड़ सकता है: STREAM_URL/STREAM_NAME | 
| cdn.ingestionInfo.backupIngestionAddress | stringबैकअप डेटा डालने के लिए यूआरएल. आरटीएमपी, DASH या एचएलएस का इस्तेमाल करने पर, आपको YouTube पर वीडियो स्ट्रीम करने के लिए इसका इस्तेमाल करना चाहिए. आपके पास इस यूआरएल पर, ingestionAddressको भेजे जा रहे कॉन्टेंट को एक साथ स्ट्रीम करने का विकल्प है. | 
| cdn.ingestionInfo.rtmpsIngestionAddress | stringडेटा डालने के लिए मुख्य यूआरएल. RTMPS का इस्तेमाल करने पर, आपको YouTube पर वीडियो स्ट्रीम करने के लिए इसका इस्तेमाल करना चाहिए. आपको वीडियो को इस यूआरएल पर स्ट्रीम करना होगा. वीडियो स्ट्रीम को कोड में बदलने के लिए, जिस ऐप्लिकेशन या टूल का इस्तेमाल किया जाता है उसके आधार पर, आपको स्ट्रीम का यूआरएल और स्ट्रीम का नाम अलग-अलग डालना पड़ सकता है. इसके अलावा, आपको उन्हें इस फ़ॉर्मैट में जोड़ना पड़ सकता है: STREAM_URL/STREAM_NAME | 
| cdn.ingestionInfo.rtmpsBackupIngestionAddress | stringडेटा का बैकअप लेने के लिए इस्तेमाल किया जाने वाला यूआरएल. RTMPS का इस्तेमाल करने पर, आपको YouTube पर वीडियो स्ट्रीम करने के लिए इसका इस्तेमाल करना चाहिए. | 
| cdn.resolution | stringइनबाउंड वीडियो डेटा का रिज़ॉल्यूशन. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| cdn.frameRate | stringइनबाउंड वीडियो डेटा का फ़्रेम रेट. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| status | objectstatusऑब्जेक्ट में, लाइव स्ट्रीम की स्थिति की जानकारी होती है. | 
| status.streamStatus | stringस्ट्रीम की स्थिति. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| status.healthStatus | objectइस ऑब्जेक्ट में, लाइव स्ट्रीम की परफ़ॉर्मेंस की जानकारी होती है. इसका इस्तेमाल, स्ट्रीमिंग से जुड़ी समस्याओं की पहचान करने, उनका पता लगाने, और उन्हें हल करने के लिए किया जा सकता है. | 
| status.healthStatus.status | stringइस स्ट्रीम का स्टेटस कोड. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| status.healthStatus.lastUpdateTimeSeconds | unsigned longस्ट्रीम की परफ़ॉर्मेंस का स्टेटस पिछली बार कब अपडेट किया गया था. इस वैल्यू में, सेकंड में यूनिक्स टाइमस्टैंप दिखता है. | 
| status.healthStatus.configurationIssues[] | listइस ऑब्जेक्ट में, स्ट्रीम पर असर डालने वाली कॉन्फ़िगरेशन से जुड़ी समस्याओं की सूची होती है. | 
| status.healthStatus.configurationIssues[].type | stringइससे पता चलता है कि स्ट्रीम पर किस तरह की गड़बड़ी का असर पड़ा है. | 
| status.healthStatus.configurationIssues[].severity | stringइससे पता चलता है कि स्ट्रीम में समस्या कितनी गंभीर है. इस प्रॉपर्टी की मान्य वैल्यू ये हैं: 
 | 
| status.healthStatus.configurationIssues[].reason | stringसमस्या के बारे में कम शब्दों में जानकारी. LiveStream संसाधनों के लिए कॉन्फ़िगरेशन से जुड़ी समस्याएं दस्तावेज़ में, कॉन्फ़िगरेशन से जुड़ी हर तरह की समस्या की वजह बताई गई है. | 
| status.healthStatus.configurationIssues[].description | stringसमस्या की पूरी जानकारी. जब भी संभव हो, ब्यौरे में समस्या को हल करने का तरीका बताया जाता है. LiveStream संसाधनों के लिए कॉन्फ़िगरेशन से जुड़ी समस्याएं दस्तावेज़ में, कॉन्फ़िगरेशन से जुड़ी सभी समस्याओं के टाइप और उनसे जुड़े ब्यौरे दिए गए हैं. | 
| contentDetails | objectcontent_detailsऑब्जेक्ट में स्ट्रीम के बारे में जानकारी होती है. इसमें सबटाइटल डालने के लिए यूआरएल भी शामिल होता है. | 
| contentDetails.closedCaptionsIngestionUrl | stringडेटा डालने का वह यूआरएल जहां इस स्ट्रीम के सबटाइटल भेजे जाते हैं. | 
| contentDetails.isReusable | booleanइससे पता चलता है कि स्ट्रीम को फिर से इस्तेमाल किया जा सकता है या नहीं. इसका मतलब है कि इसे कई ब्रॉडकास्ट से जोड़ा जा सकता है. आम तौर पर, ब्रॉडकास्टर एक ही स्ट्रीम का इस्तेमाल कई अलग-अलग ब्रॉडकास्ट के लिए करते हैं. हालांकि, ऐसा तब होता है, जब वे ब्रॉडकास्ट अलग-अलग समय पर होते हैं. अगर इस वैल्यू को falseपर सेट किया जाता है, तो स्ट्रीम को फिर से इस्तेमाल नहीं किया जा सकेगा. इसका मतलब है कि इसे सिर्फ़ एक ब्रॉडकास्ट से बंधा जा सकता है. एक बार इस्तेमाल होने वाली स्ट्रीम और बार-बार इस्तेमाल होने वाली स्ट्रीम में ये अंतर होते हैं:
 |