Meet Media API के बारे में खास जानकारी

Google Meet Media API की मदद से, Google Meet कॉन्फ़्रेंस में रीयल-टाइम मीडिया ऐक्सेस किया जा सकता है. इससे, अलग-अलग तरह के इस्तेमाल के उदाहरणों को चालू किया जा सकता है. जैसे, ऐसे ऐप्लिकेशन जो कार्रवाई के आइटम को दस्तावेज़ में दर्ज करते हैं, मौजूदा मीटिंग के बारे में रीयल-टाइम में अहम जानकारी देते हैं या किसी नए प्लैटफ़ॉर्म पर ऑडियो और वीडियो स्ट्रीम करते हैं.

उपयोग के उदाहरण

Google Cloud Console में रजिस्टर किए गए ऐप्लिकेशन, Meet के कॉन्फ़्रेंस से कनेक्ट करने के लिए, Meet Media API का इस्तेमाल कर सकते हैं. इससे, ये काम किए जा सकते हैं:

  • वीडियो स्ट्रीम का इस्तेमाल करना. उदाहरण के लिए:
    • Meet कॉन्फ़्रेंस में जनरेट की गई वीडियो स्ट्रीम को अपने एआई मॉडल में फ़ीड करें.
    • कस्टम रिकॉर्डिंग के लिए स्ट्रीम फ़िल्टर करना.
  • ऑडियो स्ट्रीम का इस्तेमाल करना. उदाहरण के लिए:
    • ऑडियो को सीधे Gemini में फ़ीड करें और मीटिंग के लिए अपना एआई चैटबॉट बनाएं.
    • Meet कॉन्फ़्रेंस में जनरेट हुई ऑडियो स्ट्रीम को, अपनी ट्रांसक्रिप्ट सेवा में फ़ीड करना
    • अलग-अलग भाषाओं में कैप्शन जनरेट करें.
    • कैप्चर किए गए ऑडियो से, मॉडल से जनरेट किए गए साइन लैंग्वेज फ़ीड बनाएं.
    • कॉन्फ़्रेंस से बैकग्राउंड और शोर को हटाने के लिए, शोर कम करने वाले मॉडल बनाएं.
  • उपयोगकर्ता के मेटाडेटा का इस्तेमाल करना. उदाहरण के लिए:
    • यह पता लगाना कि मीटिंग में कौनसे लोग शामिल हैं. इससे बेहतर जानकारी और आंकड़े मिलते हैं.

Meet Media API का लाइफ़साइकल

नीचे दी गई इमेज में, Meet Media API का लाइफ़साइकल दिखाया गया है:

  • Meet Media API बॉट, तीसरे पक्ष की वेबसाइट पर शामिल होने की कोशिश करता है.
    पहली इमेज. Meet Media API बॉट, तीसरे पक्ष की वेबसाइट पर शामिल होने की कोशिश करता है. अगर किसी खाते में नाबालिगों की जानकारी मौजूद है, तो कनेक्शन अस्वीकार कर दिया जाता है.
  • एन्क्रिप्ट की गई मीटिंग और वॉटरमार्क वाली मीटिंग.
    दूसरी इमेज. मीटिंग को एन्क्रिप्ट (सुरक्षित) के तौर पर मार्क किया जा सकता है और उन पर वॉटरमार्क लगाया जा सकता है. अगर मीटिंग में एन्क्रिप्शन (सुरक्षित) या वॉटरमार्क की सुविधा चालू है, तो Meet Media API को कनेक्ट नहीं किया जा सकता.
  • पक्का करें कि एडमिन सेटिंग सही हो.
    तीसरी इमेज. पक्का करें कि एडमिन की सेटिंग सही हो.
  • Calendar में मीटिंग सेट अप करें.
    चौथी इमेज. Calendar में मीटिंग सेट अप करें. होस्ट को Calendar की सेटिंग में, तीसरे पक्ष के ऐप्लिकेशन को अनुमति देनी होगी. ऐसा न करने पर, कनेक्शन अस्वीकार कर दिया जाएगा.
  • कॉल के दौरान सेटिंग बदलना.
    पांचवीं इमेज. कॉल के दौरान सेटिंग में बदलाव करना. अगर होस्ट कॉल के दौरान Meet Media API की सेटिंग बंद करता है, तो कनेक्शन बंद हो जाता है.
  • उपभोक्ता से जुड़ी मीटिंग के दौरान, मीटिंग शुरू करने वाले व्यक्ति को मौजूद रहना होगा.
    छठी इमेज. अगर मीटिंग के मालिक के पास कोई उपभोक्ता खाता है, तो मीटिंग शुरू करने वाले व्यक्ति को अनुमति देने के लिए मीटिंग में मौजूद होना ज़रूरी है.ऐसा न होने पर, कनेक्शन अस्वीकार कर दिया जाता है.
  • कनेक्शन स्थापित हो गया.
    सातवीं इमेज. कनेक्शन बन जाने के बाद, होस्ट, को-होस्ट या उसी संगठन के सदस्यों को मीटिंग शुरू करने का डायलॉग दिखता है जिसमें होस्ट काम करता है.
  • कॉल के दौरान, कोई भी व्यक्ति Meet Media API को रोक सकता है.
    आठवीं इमेज. कॉल के दौरान, कोई भी व्यक्ति Meet Media API को रोक सकता है.

सामान्य शब्द

Cloud प्रोजेक्ट नंबर
Google Cloud प्रोजेक्ट के लिए,
जनरेट किया गया ऐसा आइडेंटिफ़ायर जिसे बदला नहीं जा सकताint64. ये वैल्यू, रजिस्टर किए गए हर ऐप्लिकेशन के लिए, Google Cloud Console से जनरेट होती हैं.
कॉन्फ़्रेंस
मीटिंग स्पेस में, सर्वर से जनरेट किया गया कॉल का इंस्टेंस. आम तौर पर, उपयोगकर्ता इस स्थिति को एक मीटिंग मानते हैं.
कॉन्फ़्रेंस के संसाधन का डेटा चैनल

Google Meet REST API की तरह, एचटीटीपी पर रिसॉर्स का अनुरोध करने के बजाय, Meet Media API क्लाइंट, डेटा चैनलों पर सर्वर से रिसॉर्स का अनुरोध करते हैं.

हर तरह के संसाधन के लिए, एक खास डेटा चैनल खोला जा सकता है. खुलने के बाद, क्लाइंट चैनल पर अनुरोध भेज सकता है. संसाधन के अपडेट, उसी चैनल पर भेजे जाएंगे.

कॉन्ट्रिब्यूटिंग सोर्स (CSRC)

वर्चुअल मीडिया स्ट्रीम के साथ, यह नहीं माना जा सकता कि कोई मीडिया स्ट्रीम हमेशा एक ही उपयोगकर्ता पर ले जाती है. हर आरटीपी पैकेट के हेडर में मौजूद CSRC वैल्यू, पैकेट के असली सोर्स की पहचान करती है.

Meet, कॉन्फ़्रेंस में शामिल होने वाले हर व्यक्ति को एक यूनीक सीएसआरसी वैल्यू असाइन करता है. यह वैल्यू तब तक एक जैसी रहती है, जब तक वे चले नहीं जाते.

डेटा चैनल

WebRTC डेटा चैनल, ऑडियो और वीडियो स्ट्रीम के अलावा, किसी भी तरह के डेटा (टेक्स्ट, फ़ाइलें वगैरह) को एक्सचेंज करने की सुविधा देते हैं. डेटा चैनल, मीडिया स्ट्रीम के उसी कनेक्शन का इस्तेमाल करते हैं. इससे, WebRTC ऐप्लिकेशन में डेटा एक्सचेंज को जोड़ने का बेहतर तरीका मिलता है.

इंटरैक्टिव कनेक्टिविटी एस्टैब्लिशमेंट (आईसीई)

यह एक प्रोटोकॉल है, जो कनेक्शन बनाने के लिए, पीयर-टू-पीयर (पी2पी) नेटवर्किंग की मदद से, दो कंप्यूटर के बीच बातचीत करने के सभी संभावित रास्ते ढूंढता है. साथ ही, यह पक्का करता है कि आप कनेक्ट रहें.

मीडिया स्ट्रीम

WebRTC मीडिया स्ट्रीम, मीडिया डेटा के फ़्लो को दिखाती है. आम तौर पर, यह कैमरा या माइक्रोफ़ोन जैसे डिवाइस से कैप्चर किया गया ऑडियो या वीडियो होता है. इसमें एक या एक से ज़्यादा मीडिया स्ट्रीम ट्रैक होते हैं. हर ट्रैक, मीडिया के किसी एक सोर्स को दिखाता है, जैसे कि वीडियो ट्रैक या ऑडियो ट्रैक.

मीडिया स्ट्रीम ट्रैक

इसमें आरटीपी पैकेट का एक ही, एकतरफ़ा फ़्लो होता है. मीडिया स्ट्रीम ट्रैक, ऑडियो या वीडियो में से कोई एक हो सकता है, दोनों नहीं. आम तौर पर, सिक्योर रीयल-टाइम ट्रांसपोर्ट प्रोटोकॉल (एसआरटीपी) के दोतरफ़ा कनेक्शन में दो मीडिया स्ट्रीम ट्रैक होते हैं. पहला, लोकल से रिमोट पीयर पर डेटा भेजने के लिए और दूसरा, रिमोट पीयर से लोकल पीयर पर डेटा पाने के लिए.

मीटिंग स्पेस

वर्चुअल जगह या ऐसा ऑब्जेक्ट जो हमेशा मौजूद रहता है, जैसे कि मीटिंग रूम. यहां कॉन्फ़्रेंस होती है. किसी भी समय, एक ही स्पेस में सिर्फ़ एक कॉन्फ़्रेंस हो सकती है. मीटिंग स्पेस से, उपयोगकर्ताओं को शेयर किए गए संसाधनों को ढूंढने और उनसे जुड़ने में भी मदद मिलती है.

मीटिंग में हिस्सा लेने वाला व्यक्ति

कॉन्फ़्रेंस में शामिल व्यक्ति या कंपैनियन मोड का इस्तेमाल करके, दर्शक के तौर पर कॉल में शामिल व्यक्ति या कॉल से कनेक्ट किया गया रूम डिवाइस. जब कोई व्यक्ति मीटिंग में शामिल होता है, तो उसे एक यूनीक आईडी असाइन किया जाता है.

काम की स्ट्रीम

क्लाइंट, वर्चुअल ऑडियो स्ट्रीम और वर्चुअल वीडियो स्ट्रीम की तय संख्या ही खोल सकता है.

कॉन्फ़्रेंस में शामिल होने वाले लोगों की संख्या, इस संख्या से ज़्यादा हो सकती है. इन स्थितियों में, Meet सर्वर उन लोगों के ऑडियो और वीडियो स्ट्रीम को ट्रांसमिट करते हैं जिन्हें "सबसे ज़्यादा काम का" माना जाता है. काम की जानकारी दिखाने के लिए, कई बातों को ध्यान में रखा जाता है. जैसे, स्क्रीन शेयर करना और मीटिंग में हिस्सा लेने वाले व्यक्ति ने हाल ही में क्या कहा है.

चुनिंदा फ़ॉरवर्ड यूनिट (एसएफ़यू)

चुनिंदा फ़ॉरवर्ड यूनिट (एसएफ़यू), WebRTC मीटिंग में सर्वर-साइड कॉम्पोनेंट है. यह मीडिया स्ट्रीम डिस्ट्रिब्यूशन को मैनेज करता है. मीटिंग में हिस्सा लेने वाले लोग सिर्फ़ SFU से कनेक्ट होते हैं. यह SFU, ज़रूरी स्ट्रीम को चुनिंदा लोगों को फ़ॉरवर्ड करता है. इससे क्लाइंट प्रोसेसिंग और बैंडविड्थ की ज़रूरत कम हो जाती है. साथ ही, ज़्यादा लोगों के साथ मीटिंग करने की सुविधा मिलती है.

सेशन डिस्क्रिप्शन प्रोटोकॉल (एसडीपी)

सिग्नल भेजने की वह सुविधा जिसका इस्तेमाल WebRTC, पी2पी कनेक्शन के लिए करता है. RFC 8866 इसे कंट्रोल करता है.

एसडीपी का जवाब

एसडीपी ऑफ़र का जवाब. जवाब में, रिमोट पीयर से मिली किसी भी स्ट्रीम को स्वीकार या अस्वीकार किया जाता है. यह यह भी तय करता है कि किन स्ट्रीम को, ऑफ़र करने वाले पीयर को वापस भेजा जाए. ध्यान दें कि एसडीपी जवाब में, शुरुआती ऑफ़र से सिग्नल वाली स्ट्रीम नहीं जोड़ी जा सकतीं. उदाहरण के लिए, अगर कोई ऑफ़र करने वाला पीयर सिग्नल देता है कि वह अपने रिमोट पीयर से तीन ऑडियो स्ट्रीम स्वीकार करता है, तो यह रिमोट पीयर, ट्रांसमिशन के लिए चार ऑडियो स्ट्रीम का सिग्नल नहीं दे सकता.

एसडीपी ऑफ़र

ऑफ़र-जवाब वाले पीयर-टू-पीयर नेगोशिएशन फ़्लो में शुरुआती एसडीपी. ऑफ़र, शुरू करने वाले पीयर ने बनाया है. इसमें पीयर-टू-पीयर सेशन की शर्तें तय की गई हैं. ऑफ़र को हमेशा Meet Media API क्लाइंट से बनाया जाता है और Meet के सर्वर पर सबमिट किया जाता है.

उदाहरण के लिए, किसी ऑफ़र में यह जानकारी हो सकती है कि ऑफ़र देने वाला व्यक्ति या ग्रुप, कितनी ऑडियो या वीडियो स्ट्रीम भेज रहा है (या पाने में सक्षम है) और डेटा चैनल खोलने हैं या नहीं.

सिंक्रोनाइज़ेशन सोर्स (एसएसआरसी)

एसएसआरसी एक 32-बिट आइडेंटिफ़ायर है. इससे किसी आरटीपी (रीयल-टाइम ट्रांसपोर्ट प्रोटोकॉल) सेशन में, मीडिया स्ट्रीम के किसी एक सोर्स की खास पहचान की जाती है. WebRTC में, SSRC का इस्तेमाल अलग-अलग लोगों की मीडिया स्ट्रीम या एक ही व्यक्ति के अलग-अलग ट्रैक (जैसे, अलग-अलग कैमरे) के बीच अंतर करने के लिए किया जाता है.

RtpTransceiver

RFC 8829 में बताए गए तरीके के मुताबिक, ट्रांसीवर एक ऐसा एब्स्ट्रैक्शन है जो पीयर-टू-पीयर सेशन में आरटीपी स्ट्रीम के आस-पास होता है.

एसडीपी में, एक ट्रांसीवर को एक मीडिया डिस्क्रिप्शन के साथ मैप किया जाता है और उसकी जानकारी दी जाती है. ट्रांसीवर में एक RtpSender और एक RtpReceiver होता है.

आरटीपी, दोतरफ़ा होता है. इसलिए, एक ही आरटीपी कनेक्शन के लिए, हर पीयर का अपना ट्रांसीवर इंस्टेंस होता है. लोकल पीयर के लिए किसी ट्रांसीवर का RtpSender, रिमोट पीयर में किसी खास ट्रांसीवर के RtpReceiver से मैप किया जाता है. इसका उलटा भी सही है. रिमोट पीयर के एक ही ट्रांसीवर के RtpSender को लोकल पीयर के RtpReceiver पर मैप किया जाता है.

हर मीडिया ब्यौरे का अपना ट्रांसीवर होता है. इसलिए, एक से ज़्यादा आरटीपी स्ट्रीम वाले पीयर-टू-पीयर सेशन में, हर पीयर के लिए कई RtpSenders और RtpReceiver के साथ कई ट्रांसीवर होते हैं.

वर्चुअल मीडिया स्ट्रीम

वर्चुअल मीडिया स्ट्रीम, WebRTC कॉन्फ़्रेंस में चुनिंदा फ़ॉरवर्डिंग यूनिट (एसएफ़यू) से जनरेट की गई मीडिया स्ट्रीम होती हैं. SFU, मीटिंग में शामिल हर व्यक्ति की अलग-अलग स्ट्रीम को, कम वर्चुअल स्ट्रीम में मल्टीप्लेक्स करता है. इससे, मीटिंग में शामिल सभी लोगों को एक ही स्ट्रीम दिखती है. इससे कनेक्शन टॉपोलॉजी को आसान बनाया जा सकता है और मीटिंग में हिस्सा लेने वाले लोगों पर लोड कम किया जा सकता है. साथ ही, मीटिंग में ज़्यादा लोगों को शामिल किया जा सकता है. हर वर्चुअल स्ट्रीम में कई लोगों का मीडिया शामिल हो सकता है. इसे एसएफ़यू डाइनैमिक तौर पर मैनेज करता है.