Google Cast भेजने वाले ऐप्लिकेशन, रिसीवर ऐप्लिकेशन पर JSON फ़ॉर्मैट में मैसेज भेजकर, रिसीवर डिवाइस पर वीडियो चलाने की सुविधा को कंट्रोल करते हैं. इसी तरह, पाने वाला व्यक्ति, भेजने वाले को ही मैसेज भेजता है. यह मैसेज उन्हें JSON में भी भेजा जाता है. ये मैसेज, भेजने वाले की तरफ़ से भेजे जाने वाले निर्देश हो सकते हैं, जो प्लेयर की स्थिति में बदलाव करते हैं. इसके अलावा, ये मैसेज पाने वाले से मिलने वाले निर्देशों के जवाब या उन डेटा स्ट्रक्चर भी हो सकते हैं जो रिसीवर ऐप्लिकेशन के मीडिया के बारे में बताते हैं.
Google Cast SDK टूल की डेवलपर से जुड़ी सेवा की अतिरिक्त शर्तों के मुताबिक, कास्ट मीडिया ऐप्लिकेशन को इन मैसेज का इस्तेमाल यहां बताए गए तरीके से करना चाहिए. ऐसा करके, कास्ट किए जाने वाले डिवाइस पर मीडिया को कंट्रोल किया जा सकता है. ऐसा करने से, मीडिया ऐप्लिकेशन सभी प्लैटफ़ॉर्म पर एक जैसा उपयोगकर्ता अनुभव देगा. साथ ही, इससे यह पक्का होगा कि कास्ट ऐप्लिकेशन, नए और आने वाले समय में इस्तेमाल के उदाहरणों के साथ काम करेगा. जहां उचित हो, ये स्ट्रक्चर कस्टम डेटा के साथ भी काम करते हैं. साथ ही, ऐप्लिकेशन उन निर्देशों के लिए खुद के मैसेज तय कर सकता है जो SDK टूल के साथ काम नहीं करते.
मीडिया प्लेबैक मैसेज का नेमस्पेस urn:x-cast:com.google.cast.media है.
ध्यान दें: इस स्पेसिफ़िकेशन में बताए गए मैसेज और स्ट्रक्चर का तय किया गया ज़्यादा से ज़्यादा साइज़, किसी ट्रांसपोर्ट मैसेज के ज़्यादा से ज़्यादा साइज़ से तय होता है. हर फ़ील्ड के लिए इसकी कोई सीमा नहीं है. ट्रांसपोर्ट मैसेज का ज़्यादा से ज़्यादा साइज़ 64 केबीटीई है.
सामान्य नेमस्पेस डेटा स्ट्रक्चर
सभी मीडिया नेमस्पेस आर्टफ़ैक्ट में इस्तेमाल किए जाने वाले डेटा स्ट्रक्चर का एक सुपरसेट, एक सामान्य नेमस्पेस में तय किया जाता है.
इमेज
यह किसी इमेज की जानकारी होती है. इसमें थोड़ा मेटाडेटा शामिल होता है, ताकि भेजने वाले ऐप्लिकेशन को इमेज चुनने की अनुमति मिले. यह इस बात पर निर्भर करता है कि इमेज को कैसे रेंडर किया जाएगा.
इमेज के कलेक्शन में मौजूद सिर्फ़ एक आइटम के लिए, ऊंचाई और चौड़ाई की जानकारी देना ज़रूरी नहीं है. उदाहरण के लिए, अगर एक ही आइटम लौटाया जाता है, तो ऐसा करना ज़रूरी नहीं है. अगर दो आइटम दिखाए जाते हैं, तो एक आइटम की ऊंचाई और चौड़ाई बतानी होगी. हालांकि, अगर भेजने वाले को किसी खास पैरामीटर से पास किया गया आइटम पसंद नहीं है, तो वह "डिफ़ॉल्ट" विकल्प चुन सकता है.
नाम | Type | ब्यौरा |
---|---|---|
यूआरएल | यूआरआई | इमेज के लिए यूआरआई |
ऊंचाई | पूर्णांक | ज़रूरी नहीं इमेज की ऊंचाई |
चौड़ाई | पूर्णांक | ज़रूरी नहीं इमेज की चौड़ाई |
आवाज़ बढ़ाने/घटाने का स्लाइडर
मीडिया स्ट्रीम का वॉल्यूम. इसका इस्तेमाल, मीडिया स्ट्रीम पर फ़ेड-इन/फ़ेड-आउट इफ़ेक्ट के लिए किया जाता है. (ध्यान दें: भेजने वाले एपीआई का इस्तेमाल करके, सिस्टम की आवाज़ में बदलाव किया जाता है.) स्ट्रीम वॉल्यूम का इस्तेमाल वॉल्यूम स्लाइडर या वॉल्यूम बटन के साथ नहीं किया जाना चाहिए. ऐसा डिवाइस के वॉल्यूम को कंट्रोल करने के लिए किया जाता है. स्ट्रीम का वॉल्यूम बदलने के लिए, इनमें से कम से कम एक पैरामीटर पास करना ज़रूरी है.
नाम | Type | ब्यौरा |
---|---|---|
लेवल | दोगुनी | ज़रूरी नहीं स्ट्रीम का मौजूदा वॉल्यूम लेवल 0.0 और 1.0 के बीच होना चाहिए, जहां 1.0 ज़्यादा से ज़्यादा वॉल्यूम है. |
म्यूट किया गया | boolean | ज़रूरी नहीं क्या कास्ट डिवाइस म्यूट किया गया है, आवाज़ के स्तर पर निर्भर नहीं |
मीडिया नेमस्पेस डेटा स्ट्रक्चर
ये मैसेज, मीडिया प्लेयर की स्थिति के बारे में बताते हैं. नेमस्पेस urn:x-cast:com.google.cast.media है.
MediaInformation
इस डेटा स्ट्रक्चर में, किसी मीडिया स्ट्रीम के बारे में जानकारी दी जाती है.
नाम | Type | ब्यौरा |
---|---|---|
contentId | स्ट्रिंग | कॉन्टेंट की सेवा के लिए खास तौर पर बना आइडेंटिफ़ायर, जो फ़िलहाल मीडिया प्लेयर पर लोड किया गया है. यह फ़्री फ़ॉर्म स्ट्रिंग है और खास तौर पर ऐप्लिकेशन के लिए है. ज़्यादातर मामलों में, मीडिया के लिए यही यूआरएल होता है. हालांकि, भेजने वाला व्यक्ति एक ऐसी स्ट्रिंग पास करने का विकल्प चुन सकता है जिसे पाने वाला ठीक से समझ सके. ज़्यादा से ज़्यादा लंबाई: 1 हज़ार |
streamType | enum (स्ट्रिंग) |
यह इनमें से किसी एक के तौर पर मीडिया आर्टफ़ैक्ट के टाइप के बारे में बताता है:
|
contentType | स्ट्रिंग | चलाए जा रहे मीडिया का MIME कॉन्टेंट टाइप |
मेटाडेटा | ऑब्जेक्ट | ज़रूरी नहीं मीडिया मेटाडेटा ऑब्जेक्ट, इनमें से कोई एक: |
duration | दोगुनी | ज़रूरी नहीं मौजूदा स्ट्रीम की अवधि (सेकंड में) |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा भेजने वाले या पाने वाले ऐप्लिकेशन के ज़रिए तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
GenericMediaMetadata
इसमें सामान्य मीडिया आर्टफ़ैक्ट के बारे में बताया गया है.
नाम | Type | ब्यौरा |
---|---|---|
metadataType | पूर्णांक | 0 (एकमात्र मान) |
टाइटल | स्ट्रिंग | ज़रूरी नहीं कॉन्टेंट के ब्यौरे वाला टाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
सबटाइटल | स्ट्रिंग | ज़रूरी नहीं वीडियो के सबटाइटल की जानकारी देने वाला सबटाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
इमेज | इमेज[] | ज़रूरी नहीं कॉन्टेंट से जुड़ी इमेज के यूआरएल की कैटगरी. लोड करें मैसेज में भेजने वाला व्यक्ति, फ़ील्ड की शुरुआती वैल्यू की जानकारी दे सकता है. सुझाए गए साइज़ उपलब्ध होने चाहिए |
releaseDate | स्ट्रिंग (ISO 8601) | वैकल्पिक ISO 8601 तारीख और समय, इस वीडियो को रिलीज़ किए जाने की तारीख और समय होना ज़रूरी है. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
MovieMediaMetadata
मूवी मीडिया आर्टफ़ैक्ट के बारे में बताता है.
नाम | Type | ब्यौरा |
---|---|---|
metadataType | पूर्णांक | 1 (एकमात्र मान) |
टाइटल | स्ट्रिंग | ज़रूरी नहीं कॉन्टेंट के ब्यौरे वाला टाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
सबटाइटल | स्ट्रिंग | ज़रूरी नहीं वीडियो के सबटाइटल की जानकारी देने वाला सबटाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
Studio | स्ट्रिंग | ज़रूरी नहीं वह Studio जिसने कॉन्टेंट रिलीज़ किया. प्लेयर, content_id का इस्तेमाल करके स्वतंत्र रूप से स्टूडियो को वापस पा सकता है या उसे लोड करें मैसेज में भेजने वाला व्यक्ति असाइन कर सकता है |
इमेज | इमेज[] | ज़रूरी नहीं कॉन्टेंट से जुड़ी इमेज के यूआरएल की कैटगरी. लोड करें मैसेज में भेजने वाला व्यक्ति, फ़ील्ड की शुरुआती वैल्यू की जानकारी दे सकता है. सुझाए गए साइज़ उपलब्ध होने चाहिए |
releaseDate | स्ट्रिंग (ISO 8601) | वैकल्पिक ISO 8601 तारीख और समय, इस वीडियो को रिलीज़ किए जाने की तारीख और समय होना ज़रूरी है. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
TvShowMediaMetadata
टेलीविज़न शो के एपिसोड के मीडिया आर्टफ़ैक्ट के बारे में जानकारी देता है.
नाम | Type | ब्यौरा |
---|---|---|
metadataType | पूर्णांक | 2 (सिर्फ़ एक वैल्यू) |
seriesTitle | स्ट्रिंग | ज़रूरी नहीं टीवी सीरीज़ की जानकारी देने वाला टाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
सबटाइटल | स्ट्रिंग | ज़रूरी नहीं टी.वी. एपिसोड की जानकारी देने वाला सबटाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
सीज़न | पूर्णांक | ज़रूरी नहीं टीवी शो का सीज़न नंबर |
एपिसोड | पूर्णांक | ज़रूरी नहीं टीवी शो का एपिसोड नंबर (सीज़न के हिसाब से) |
इमेज | इमेज[] | ज़रूरी नहीं कॉन्टेंट से जुड़ी इमेज के यूआरएल की कैटगरी. लोड करें मैसेज में भेजने वाला व्यक्ति, फ़ील्ड की शुरुआती वैल्यू की जानकारी दे सकता है. सुझाए गए साइज़ उपलब्ध होने चाहिए |
originalAirDate | स्ट्रिंग (ISO 8601) | ज़रूरी नहीं है. ISO 8601 के हिसाब से, इस एपिसोड के रिलीज़ होने का समय. प्लेयर, content_id का इस्तेमाल करके originAirDate को खुद वापस पा सकता है या भेजने वाला व्यक्ति Load मैसेज में यह जानकारी दे सकता है |
MusicTrackMediaMetadata
इसमें संगीत ट्रैक मीडिया आर्टफ़ैक्ट के बारे में बताया जाता है.
नाम | Type | ब्यौरा |
---|---|---|
metadataType | पूर्णांक | 3 (सिर्फ़ एक वैल्यू) |
albumName | स्ट्रिंग | वैकल्पिक एल्बम या संग्रह, जिससे यह ट्रैक बनाया गया है. प्लेयर, content_id का इस्तेमाल करके एल्बमName को खुद से वापस पा सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह जानकारी दे सकता है |
टाइटल | स्ट्रिंग | ज़रूरी नहीं ट्रैक का नाम (जैसे, गाने का टाइटल). प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
albumArtist | स्ट्रिंग | ज़रूरी नहीं इस ट्रैक को दिखाने वाले एल्बम से जुड़े कलाकार का नाम. प्लेयर, content_id का इस्तेमाल करके एल्बमArtist को फिर से हासिल कर सकता है या उसे लोड करें मैसेज में भेजने वाला व्यक्ति दे सकता है |
कलाकार | स्ट्रिंग | ज़रूरी नहीं मीडिया ट्रैक से जुड़े कलाकार का नाम. प्लेयर, content_id का इस्तेमाल करके कलाकार को स्वतंत्र रूप से वापस ला सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह जानकारी दे सकता है |
संगीतकार | स्ट्रिंग | ज़रूरी नहीं मीडिया ट्रैक से जुड़े संगीतकार का नाम. प्लेयर, content_id का इस्तेमाल करके स्वतंत्र रूप से कंपोज़र को ढूंढ सकता है या उसे लोड करें मैसेज में भेजने वाला व्यक्ति दे सकता है |
trackNumber | पूर्णांक | ज़रूरी नहीं एल्बम में ट्रैक की संख्या |
discNumber | पूर्णांक | वैकल्पिक एल्बम के वॉल्यूम (जैसे कि कोई डिस्क) की संख्या |
इमेज | इमेज[] | ज़रूरी नहीं कॉन्टेंट से जुड़ी इमेज के यूआरएल की कैटगरी. लोड करें मैसेज में भेजने वाला व्यक्ति, फ़ील्ड की शुरुआती वैल्यू की जानकारी दे सकता है. सुझाए गए साइज़ उपलब्ध होने चाहिए |
releaseDate | स्ट्रिंग (ISO 8601) | वैकल्पिक ISO 8601 तारीख और समय, इस वीडियो को रिलीज़ किए जाने की तारीख और समय होना ज़रूरी है. प्लेयर, content_id का इस्तेमाल करके रिलीज़ की तारीख को अपने हिसाब से वापस पा सकता है या भेजने वाला व्यक्ति लोड मैसेज में यह जानकारी दे सकता है |
PhotoMediaMetadata
फ़ोटोग्राफ़िक मीडिया आर्टफ़ैक्ट के बारे में बताता है.
नाम | Type | ब्यौरा |
---|---|---|
metadataType | पूर्णांक | 4 (सिर्फ़ एक वैल्यू) |
टाइटल | स्ट्रिंग | ज़रूरी नहीं फ़ोटो का टाइटल. प्लेयर, content_id का इस्तेमाल करके खुद से टाइटल हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह टाइटल दे सकता है |
कलाकार | स्ट्रिंग | ज़रूरी नहीं फ़ोटोग्राफ़र का नाम. प्लेयर, content_id का इस्तेमाल करके कलाकार को स्वतंत्र रूप से वापस ला सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह जानकारी दे सकता है |
स्थान | स्ट्रिंग | ज़रूरी नहीं वह जगह जहां फ़ोटो ली गई थी, जैसे कि "मैड्रिड, स्पेन". प्लेयर, content_id का इस्तेमाल करके स्वतंत्र रूप से जगह की जानकारी पा सकता है या भेजने वाले की ओर से लोड करें मैसेज में यह जानकारी दी जा सकती है |
latitude | दोगुनी | ज़रूरी नहीं जिस जगह की फ़ोटो ली गई उसका अक्षांश की वैल्यू. प्लेयर, content_id का इस्तेमाल करके अक्षांश को स्वतंत्र रूप से हासिल कर सकता है या उसे भेजने वाले की ओर से लोड करें मैसेज में दिया जा सकता है |
longitude | दोगुनी | ज़रूरी नहीं जिस जगह की फ़ोटो ली गई उसकी देशांतर की वैल्यू. प्लेयर, content_id का इस्तेमाल करके देशांतर को स्वतंत्र रूप से हासिल कर सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह जानकारी दे सकता है |
चौड़ाई | पूर्णांक | ज़रूरी नहीं फ़ोटो की चौड़ाई, पिक्सल में. प्लेयर, content_id का इस्तेमाल करके स्वतंत्र रूप से चौड़ाई की जानकारी पा सकता है या उसे लोड करें मैसेज में भेजने वाले की ओर से असाइन किया जा सकता है |
ऊंचाई | पूर्णांक | ज़रूरी नहीं फ़ोटो की लंबाई के पिक्सल में. प्लेयर, content_id का इस्तेमाल करके खुद की ऊंचाई पता कर सकता है या उसे भेजने वाले की ओर से लोड करें मैसेज में बताया जा सकता है |
creationDateTime | स्ट्रिंग (ISO 8601) | यह फ़ोटो खींचे जाने की ISO 8601 की तारीख और समय ज़रूरी नहीं है . प्लेयर, content_id का इस्तेमाल करके CreateDateTime को वापस पा सकता है या भेजने वाला व्यक्ति लोड करें मैसेज में यह जानकारी दे सकता है |
MediaStatus
सेशन के हिसाब से, मीडिया आर्टफ़ैक्ट की मौजूदा स्थिति के बारे में बताता है.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | इस खास सेशन के प्लेबैक के लिए यूनीक आईडी. यह आईडी, मेटाडेटा पाने वाले व्यक्ति ने LOAD पर सेट किया होता है. इसका इस्तेमाल, वीडियो चलाने के खास इंस्टेंस की पहचान करने के लिए किया जा सकता है. उदाहरण के लिए, एक ही सेशन में "विश यू यहां होते" वाले दो प्लेबैक में से हर एक का यूनीक MediaSessionId होगा. |
मीडिया | MediaInformation | ज़रूरी नहीं (स्थिति वाले मैसेज के लिए) उस कॉन्टेंट की पूरी जानकारी जिसे देखा जा रहा है. किसी स्थिति संदेश में केवल तभी वापस लौटा जाए, अगर Mediainformation बदल गया हो. |
playbackRate | float | यह बताता है कि मीडिया का समय बढ़ रहा है या नहीं और इसकी दर कितनी है. यह प्लेयर की स्थिति पर निर्भर नहीं करता, क्योंकि मीडिया का समय किसी भी स्थिति में रुक सकता है. 1.0 नियमित समय है, 0.5 स्लो मोशन है |
playerState | enum (स्ट्रिंग) | इनमें से किसी एक के तौर पर खिलाड़ी की स्थिति के बारे में बताता है:
|
idleReason | enum (स्ट्रिंग) | ज़रूरी नहीं अगर PlayerState IDLE है और उसे IDLE में बदलने की वजह पता हो, तो यह प्रॉपर्टी दी जाती है. अगर प्लेयर अभी-अभी शुरू होने की वजह से IDLE है, तो यह प्रॉपर्टी नहीं दी जाएगी. अगर प्लेयर किसी दूसरे स्थिति में है, तो यह प्रॉपर्टी नहीं दी जानी चाहिए. ये वैल्यू लागू होती हैं:
|
currentTime | दोगुनी | वीडियो शुरू होने के बाद से मीडिया प्लेयर की मौजूदा स्थिति, सेकंड में. अगर यह लाइव स्ट्रीम का कॉन्टेंट है, तो यह फ़ील्ड इवेंट शुरू होने से सेकंड में वह समय दिखाता है जो प्लेयर को दिखना चाहिए. |
supportedMediaCommands | फ़्लैग | इस बात की जानकारी देने वाले फ़्लैग कि मीडिया प्लेयर किन मीडिया निर्देशों का इस्तेमाल करता है:
कॉम्बिनेशन को योग के रूप में दिखाया जाता है. उदाहरण के लिए, Pause+seek+StreamVolume+ पाबंदियां == 15. |
वॉल्यूम | वॉल्यूम | स्ट्रीम का वॉल्यूम |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
भेजने वाले से पाने वाले तक के निर्देश
ये निर्देश, मीडिया प्लेयर को कंट्रोल करते हैं. नीचे दिए गए मैसेज में मौजूद सभी customData ऑब्जेक्ट ज़रूरी नहीं होने चाहिए. इसका मतलब है कि डेटा पास न होने पर, डेटा पाने वाले को सही तरीके से डिग्रेड कर देना चाहिए. इससे सामान्य रिमोट कंट्रोल ऐप्लिकेशन ठीक से काम करेंगे.
लोड
मीडिया प्लेयर में नया कॉन्टेंट लोड करता है.
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | लोड करें (सिर्फ़ वैल्यू) |
मीडिया | MediaInformation | लोड करने के लिए मीडिया का मेटाडेटा (contentId शामिल है) |
अपने-आप चलने की सुविधा | boolean | ज़रूरी नहीं (डिफ़ॉल्ट तौर पर यह सही है) अगर वीडियो अपने-आप चलने वाला पैरामीटर दिया गया है, तो मीडिया प्लेयर लोड होने पर कॉन्टेंट चलाना शुरू कर देगा. अगर वीडियो अपने-आप चलने की सुविधा के बारे में नहीं बताया गया है, तब भी मीडिया प्लेयर को लागू करने पर, वीडियो तुरंत शुरू हो सकता है. अगर वीडियो शुरू हो गया है, तो जवाब में प्लेयर की स्थिति बफ़र हो रही है पर सेट होनी चाहिए. ऐसा न होने पर, इसे 'रोका गया' पर सेट करना होगा |
currentTime | दोगुनी | ज़रूरी नहीं कॉन्टेंट शुरू होने से लेकर अब तक के सेकंड. अगर कॉन्टेंट लाइव कॉन्टेंट है और पोज़िशन के बारे में नहीं बताया गया है, तो स्ट्रीम, लाइव पोज़िशन से शुरू होगी |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | अमान्य प्लेयर की स्थिति लोड नहीं हो सका लोड रद्द किया गया |
रोकें
मौजूदा वीडियो को रोकने से. भेजने वाले सभी ऐप्लिकेशन के लिए STATUS इवेंट की सूचना ट्रिगर करता है.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | रोके जाने वाले मीडिया सेशन का आईडी |
requestId | पूर्णांक | अनुरोध/रिस्पॉन्स को जोड़ने के लिए इस्तेमाल करने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | रोकें (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | खिलाड़ी की स्थिति अमान्य है |
खोजें
स्ट्रीम में मौजूदा जगह सेट करता है. भेजने वाले सभी ऐप्लिकेशन के लिए STATUS इवेंट की सूचना ट्रिगर करता है. अगर दी गई जगह मौजूदा कॉन्टेंट के लिए सही जगह की सीमा से बाहर है, तो प्लेयर को अनुरोध की गई जगह के जितना हो सके उतना करीब वाला सही पोज़िशन चुनना चाहिए.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | उस मीडिया सेशन का आईडी जहां स्ट्रीम की जगह सेट की गई है |
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | SeeK (सिर्फ़ वैल्यू) |
resumeState | enum (स्ट्रिंग) | ज़रूरी नहीं अगर इसे सेट नहीं किया जाता है, तो वीडियो चलाने की स्थिति में कोई बदलाव नहीं होगा. इसके लिए, ये वैल्यू लागू होती हैं:
|
currentTime | दोगुनी | ज़रूरी नहीं कॉन्टेंट शुरू होने से लेकर अब तक के सेकंड. अगर कॉन्टेंट लाइव कॉन्टेंट है और पोज़िशन के बारे में नहीं बताया गया है, तो स्ट्रीम, लाइव पोज़िशन से शुरू होगी |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | खिलाड़ी की स्थिति अमान्य है |
रोकें
मौजूदा वीडियो का प्लेबैक बंद करता है. भेजने वाले सभी ऐप्लिकेशन के लिए STATUS इवेंट की सूचना ट्रिगर करता है. इस निर्देश के बाद, कॉन्टेंट लोड नहीं होगा और MediaSessionId अमान्य हो जाएगा.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | कॉन्टेंट को बंद करने के लिए, मीडिया सेशन का आईडी |
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | STOP (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | खिलाड़ी की स्थिति अमान्य है |
चलाएं
लोड कॉल के साथ लोड किए गए कॉन्टेंट का प्लेबैक शुरू किया जाता है. साथ ही, वीडियो मौजूदा समय से चलता रहता है.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | चलाए जाने वाले कॉन्टेंट के मीडिया सेशन का आईडी |
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | PLAY (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | खिलाड़ी की स्थिति अमान्य है |
स्टेटस पाएं
मीडिया की स्थिति वापस लाता है.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | ज़रूरी नहीं उस मीडिया का मीडिया सेशन आईडी जिसके लिए मीडिया की स्थिति दिखनी चाहिए. अगर कोई भी आईडी नहीं दिया जाता है, तो सभी मीडिया सेशन आईडी के लिए स्टेटस दिया जाएगा. |
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | GET_STATUS (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
उस व्यक्ति को MediaStatus का मैसेज भेजें जिसने मैसेज भेजने का अनुरोध किया है | कभी नहीं | कभी नहीं | कभी नहीं |
SetVolume
मीडिया स्ट्रीम का वॉल्यूम सेट करता है. इसका इस्तेमाल, मीडिया स्ट्रीम पर फ़ेड-इन/फ़ेड-आउट इफ़ेक्ट के लिए किया जाता है. (ध्यान दें: रिसीवर की आवाज़ को वेब भेजने वाले व्यक्ति के setVolume का इस्तेमाल करके बदला जाता है. स्ट्रीम वॉल्यूम का इस्तेमाल वॉल्यूम स्लाइडर या वॉल्यूम बटन के साथ जोड़कर नहीं किया जाना चाहिए. ऐसा डिवाइस के वॉल्यूम को कंट्रोल करने के लिए किया जाता है. स्ट्रीम की आवाज़ में बदलाव होने से, रिसीवर पर कोई यूज़र इंटरफ़ेस (यूआई) ट्रिगर नहीं होगा.
नाम | Type | ब्यौरा |
---|---|---|
mediaSessionId | पूर्णांक | उस मीडिया का मीडिया सेशन आईडी जिसके लिए स्ट्रीम का वॉल्यूम बदला गया है |
requestId | पूर्णांक | अनुरोध और उसके जवाब को आपस में जोड़ने के लिए, अनुरोध का आईडी |
टाइप | स्ट्रिंग | वॉल्यूम (सिर्फ़ वैल्यू) |
वॉल्यूम | वॉल्यूम | स्ट्रीम का वॉल्यूम |
customData | ऑब्जेक्ट | ज़रूरी नहीं भेजने वाले के ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
जवाब | ट्रिगर | ब्रॉडकास्ट | गड़बड़ियां |
---|---|---|---|
कभी नहीं | पेमेंट पाने वाले की स्थिति में बदलाव | मीडिया की स्थिति में बदलाव करने का मैसेज | खिलाड़ी की स्थिति अमान्य है |
पाने वाले से भेजने वाले को भेजे गए मैसेज
मैसेज पाने वाला व्यक्ति दो तरह के मैसेज भेजता है:
- गड़बड़ियां: भेजने वाले के अनुरोध में गड़बड़ी का जवाब होने पर भेजे जाने वाले Unicast मैसेज.
- स्थिति: मैसेज ब्रॉडकास्ट करें.
- भेजने वाले की शुरू की गई कार्रवाई का नतीजा. इसमें उस अनुरोध का requestId शामिल होगा जिसकी वजह से बदलाव हुआ है.
- अपने-आप चलने वाला: उदाहरण के लिए, रिसीवर के ऐप्लिकेशन में हुए किसी बदलाव की वजह से. अनुरोध आईडी 0 होगा.
गड़बड़ी: खिलाड़ी की अमान्य स्थिति
यह तब भेजा जाता है जब भेजने वाले का अनुरोध पूरा नहीं होता, क्योंकि प्लेयर सही स्थिति में नहीं है. उदाहरण के लिए, अगर ऐप्लिकेशन ने अब तक मीडिया एलिमेंट नहीं बनाया है.
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | इस गड़बड़ी को जनरेट करने वाले अनुरोध का आईडी |
टाइप | स्ट्रिंग | INVALID_PLAYER_STATE (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
गड़बड़ी: लोड नहीं हो सका
लोड करने का अनुरोध पूरा नहीं होने पर भेजा गया. प्लेयर की स्थिति IDLE होगी.
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | इस गड़बड़ी को जनरेट करने वाले अनुरोध का आईडी |
टाइप | स्ट्रिंग | LOAD_FAILED (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
गड़बड़ी: लोड रद्द किया गया
लोड करने का अनुरोध रद्द होने पर भेजा गया (दूसरा लोड अनुरोध मिला).
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | इस गड़बड़ी को जनरेट करने वाले अनुरोध का आईडी |
टाइप | स्ट्रिंग | LOAD_CANCELLED (सिर्फ़ वैल्यू) |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
गड़बड़ी: अमान्य अनुरोध
यह तब भेजा जाता है, जब अनुरोध अमान्य होता है. उदाहरण के लिए, अनुरोध के टाइप की जानकारी नहीं है.
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | इस गड़बड़ी को जनरेट करने वाले अनुरोध का आईडी |
टाइप | स्ट्रिंग | INVALID_REQUEST (सिर्फ़ मान) |
वजह | Enum (स्ट्रिंग) | वैल्यू:
|
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |
मीडिया की स्थिति
स्थिति बदलने के बाद या मीडिया की स्थिति के अनुरोध के बाद भेजा जाता है. सिर्फ़ MediaStatus के वे ऑब्जेक्ट भेजे जाएंगे जिनमें बदलाव किए गए हैं या जिनका अनुरोध किया गया था.
नाम | Type | ब्यौरा |
---|---|---|
requestId | पूर्णांक | इस आईडी का इस्तेमाल, स्थिति के जवाब को जनरेट करने वाले अनुरोध से जोड़ने के लिए किया जाता है. इसके अलावा, अगर स्थिति वाला मैसेज अपने-आप भेजा गया हो, तो 0 का इस्तेमाल किया जाता है. यह मैसेज भेजने वाले के अनुरोध से ट्रिगर नहीं होता है. भेजने वाले ऐप्लिकेशन किसी रैंडम नंबर को चुनकर और लगातार बढ़ते रहने वाले यूनीक अनुरोध आईडी जनरेट करेंगे (वे 0 का इस्तेमाल नहीं करेंगे). |
टाइप | स्ट्रिंग | MEDIA_STATUS (सिर्फ़ वैल्यू) |
स्टेटस | MediaStatus[] | मीडिया स्थिति ऑब्जेक्ट की श्रेणी. ध्यान दें: MediaStatus में मीडिया एलिमेंट को सिर्फ़ तब ही लौटाया जाएगा, जब उसमें बदलाव किया गया हो. |
customData | ऑब्जेक्ट | ज़रूरी नहीं डेटा पाने वाले ऐप्लिकेशन की ओर से तय किया गया, ऐप्लिकेशन के हिसाब से डेटा का ब्लॉब |