यूनिफ़ाइड प्लान एसडीपी फ़ॉर्मैट - ट्रांज़िशन प्लान

Google, Chrome के WebRTC को लागू करने की प्रोसेस को मौजूदा एसडीपी फ़ॉर्मैट (जिसे “प्लान बी” कहा जाता है) को मानकों के मुताबिक फ़ॉर्मैट में बदलें (“एक साथ प्लान”, ड्राफ़्ट-ietf-rtcweb-jsep) को अगली कुछ तिमाहियों में.

इस प्लान में पांच चरण और एक अस्थायी एपीआई की सुविधा शामिल है.

किन पर असर पड़ेगा

एक साथ कई ऑडियो ट्रैक या कई वीडियो ट्रैक इस्तेमाल करने वाले लोग PeerConnection को यूनिफ़ाइड प्लान के तहत अपने प्रॉडक्ट को टेस्ट करना होगा. साथ ही, उसी के हिसाब से. ऐसे मामले में जहां कॉल किसी गैर-Chrome एंडपॉइंट से शुरू किया जाता है और Chrome की ओर से जवाब दिया जाता है, तो ऑफ़र का रूप बदलना पड़ सकता है. वे लोग जो अच्छी तरह से एसडीपी पार्सिंग करें और एमएसआईडी एट्रिब्यूट का ध्यान रखें, तो उनका पार्सिंग कोड नए फ़ॉर्मैट (a=msid) का इस्तेमाल कर रहा है. विवरण ऐप्लिकेशन में बदलाव करने की ज़रूरत होगी. साथ ही, यह भी बताता है कि ऐप्लिकेशन में किस तरह के बदलाव होने वाले हैं निर्भर. हमें लगता है कि लगभग सभी एप्लिकेशन जो केवल एक ही ऑडियो का उपयोग करते है और हर RTCPeerConnection के एक वीडियो ट्रैक पर इस बदलाव का कोई असर नहीं होगा.

एपीआई की सुविधा

हम RTCPeerConnection के RTCConfiguration में एक नई सुविधा जोड़ रहे हैं:

enum SdpSemantics {
  "plan-b",
  "unified-plan"
};


partial dictionary RTCConfiguration {
   SdpSemantics sdpSemantics;
}

RTCConfiguration को एक RTCPeerConnection के कंस्ट्रक्टर को पास किया जा सकता है, साथ ही, बनाए गए सभी ऑफ़र और जवाब, यूनिफ़ाइड प्लान फ़ॉर्मैट में होंगे. setLocalDescription और setRemoteDescription पर किए जाने वाले कॉल के लिए भी एसडीपी की ज़रूरत होगी निजता प्लान वाला फ़ॉर्मैट इस्तेमाल करना होगा; Chrome के पुराने फ़ॉर्मैट में है, तो पहले ऑडियो ट्रैक और पहले वीडियो ट्रैक को छोड़कर बाकी सभी को अनदेखा कर दिया जाएगा.

इसके अलावा, कमांड लाइन फ़्लैग भी मौजूद है (–enable-features=RTCUnifiedPlanByDefault in Chrome M71 और उसके बाद के वर्शन के लिए, –enable-blink-features=RTCUnifiedPlanByDefault पुराने वर्शन) से मिलता-जुलता है, जो इस फ़्लैग के डिफ़ॉल्ट मान को “एक ही जगह पर प्लान करने की सुविधा”.

चरण

पहला चरण: यूनिफ़ाइड प्लान लागू करना

इस चरण में, यूनिफ़ाइड प्लान को एक्सपेरिमेंट से जुड़े फ़्लैग की मदद से बनाया गया था M65 और उसके बाद के वर्शन में उपलब्ध है. दूसरे चरण तक, Chrome कैनरी की मदद से टेस्ट करना सबसे सही रहा “–enable-blink-features=RTCUnifiedPlan” का इस्तेमाल करके.

दूसरा चरण: एपीआई की सुविधा को सामान्य रूप से उपलब्ध कराना

M69 में रिलीज़ (बीटा अगस्त 2018, सितंबर 2018 में स्थिर)

इस चरण में, sdpSemantics फ़्लैग की डिफ़ॉल्ट वैल्यू “plan-b” थी. तय सीमा में दूसरा चरण, वे लोग जिनके पास कॉन्टेंट के प्लेसमेंट के लिए, एसडीपी फ़ॉर्मैट पर निर्भर थे को यह देखने के लिए टेस्ट करने की उम्मीद है कि यूनिफ़ाइड प्लान के लागू होने पर उनके ऐप्लिकेशन काम कर रहे हैं या नहीं इस्तेमाल करें. Firefox का समर्थन करने वाले एप्लिकेशन के लिए, हम अपेक्षा करते है कि यह बहुत सरल होगा व्यायाम: ठीक वैसे ही करें जैसे आप Firefox के लिए करते.

sdpSemantics फ़्लैग की डिफ़ॉल्ट वैल्यू को “chrome://flags” में बदला जा सकता है; “WebRTC: डिफ़ॉल्ट रूप से यूनिफ़ाइड प्लान एसडीपी सिमैंटिक इस्तेमाल करें” सुविधा को खोजें.

तीसरा चरण: डिफ़ॉल्ट पर स्विच करें

स्विच करने की तारीख M72 थी (बीटा दिसंबर 2018, स्थिर जनवरी 2019).

इस चरण में, हमने sdpSemantics फ़्लैग की डिफ़ॉल्ट वैल्यू को बदलकर यह किया “एक ही जगह पर प्लान करने की सुविधा”. ऐसे ऐप्लिकेशन जिन्होंने पाया कि उन्हें यह काम करने में ज़्यादा समय लगा वापस पाने के लिए sdpSemantics फ़्लैग को स्पष्ट रूप से “plan-b” में बदल दें पिछली कार्रवाई.

चरण 4: “प्लान B” को फेंकें

इस चरण में, sdpSemantics फ़्लैग को "plan-b" पर सेट करना अपवाद के तौर पर नतीजे मिलते हैं फेंक दिया जाता है. यह M93 से कैनरी में काफ़ी तेज़ी से फैल रहा है. M96 और इसके बाद के वर्शन में, यह सुविधा उपलब्ध नहीं है स्टेबल सहित अन्य सभी चैनलों पर काफ़ी ट्रैफ़िक आ रहा था.

इस चरण के दौरान, डीप्रिकेशन ट्रायल उपलब्ध थी, जो बिना किसी अपवाद के प्लान B का इस्तेमाल करने की अनुमति थी लेकिन मुफ़्त में आज़माने की सुविधा 25 मई, 2022 से काम करना बंद कर देगी.

पांचवा चरण: Chromium से “प्लान B” को हटाना

मुफ़्त में आज़माने की अवधि खत्म होने के बाद, प्लान B को Chrome से हटा दिया जाएगा. इस स्थिति में, sdpSemantics फ़्लैग को हटा दिया जाएगा. इसे "plan-b" पर सेट करने की कोशिश की जा रही है नहीं होगा अपवाद लागू करें, लेकिन उसका कोई असर नहीं होगा.

प्लान B अब भी उपलब्ध है. इसे खास फ़्लैग या खास बिल्ड के पीछे इस्तेमाल किया जा सकता है, लेकिन इसमें कोड हटाने की प्रोसेस, साल 2022 की दूसरी छमाही में हटा दी जाएगी.

छठा चरण: WebRTC से ”प्लान B” को रोकना और हटाना

WebRTC में प्लान B को पहले ही 'अब काम नहीं करता' के तौर पर मार्क किया गया है, लेकिन यह अब भी उपलब्ध है. इसे 2023 में हटा दिया जाएगा.

यूनिफ़ाइड प्लान के लिए आपका आवेदन तैयार किया जा रहा है

प्लान B और यूनिफ़ाइड प्लान में अंतर के बारे में ज़्यादा जानकारी पाने के लिए, यूनिफ़ाइड प्लान बनाने के लिए, आवेदन को अपडेट करना पड़ सकता है. इसके लिए, “यूनिफ़ाइड प्लान” ट्रांज़िशन गाइड (JavaScript)

नेटिव (C++) ऐप्लिकेशन के लिए, “अपने नेटिव/मोबाइल ऐप्लिकेशन को यूनिफ़ाइड प्लान पर माइग्रेट करना” दस्तावेज़ देखें