Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

تنسيق الخطة الموحدة SDP - خطة الانتقال

تخطط Google لنقل تنفيذ WebRTC الخاص بـ Chrome من تنسيق SDP الحالي (المسمى "Plan B") إلى تنسيق متوافق مع المعايير ("Unified Plan" ، Draft-ietf-rtcweb-jsep) خلال الربعين المقبلين.

تتضمن الخطة 4 مراحل وميزة API عابرة واحدة.

من سيتأثر

سيتعين على الأشخاص الذين يستخدمون مسارات صوتية متعددة أو مسارات فيديو متعددة في PeerConnection واحدة اختبار منتجهم ضمن خطة موحدة ، والتكيف وفقًا لذلك. في حالة بدء مكالمة من نقطة نهاية بخلاف Chrome والرد عليها من قِبل Chrome ، فقد يتعين تغيير شكل العرض. يجب على الأشخاص الذين يقومون بتحليل SDP التفصيلي ويهتمون بسمات msid التحقق من أن شفرة التحليل الخاصة بهم تلتقط التنسيق الجديد (a = msid). ستعتمد التفاصيل حول ما إذا كانت التغييرات مطلوبة وكيف ستحتاج التطبيقات إلى التغيير على التطبيق. نعتقد أن معظم التطبيقات التي تستخدم صوتًا واحدًا فقط ومسار فيديو واحد لكل RTCPeerConnection لن تتأثر بالتغيير.

ميزة API

نحن نضيف ميزة جديدة إلى تكوين RTCCeerConnection الخاص بـ RTCPeerConnection:

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


partial dictionary RTCConfiguration {
   SdpSemantics sdpSemantics;
}
 

يمكن تمرير RTCConfiguration إلى مُنشئ RTCPeerConnection ، وستكون جميع العروض والإجابات التي تم إنشاؤها بتنسيق الخطة الموحدة. ستتوقع أيضًا المكالمات إلى setLocalDescription و setRemoteDescription أن يكون SDP بتنسيق الخطة الموحدة ؛ إذا كان بتنسيق Chrome القديم ، فسيتم تجاهل الجميع باستثناء المسار الصوتي الأول ومسار الفيديو الأول.

هناك أيضًا علامة سطر الأوامر (–enable-features = RTCUnifiedPlanByDefault في Chrome M71 والإصدارات الأحدث ، –enable-blink-features = RTCUnifiedPlanByDefault في الإصدارات السابقة) التي تسمح بتعيين القيمة الافتراضية لهذه العلامة على "خطة موحدة".

المراحل

المرحلة 1: تنفيذ الخطة الموحدة

تم تطوير الخطة الموحدة حاليًا ، وعلم التجريب متاح من M65. حتى المرحلة 2 ، من الحكمة الاختبار مع كناري. إذا قمت بتشغيل Chrome باستخدام "–enable-blink-features = RTCUnifiedPlan" ، فستتمكن من الوصول إلى ميزة "sdpSemantics" الموضحة أعلاه ، ويمكنك بدء الاختبار باستخدام الخطة الموحدة.

المرحلة 2: إتاحة ميزة واجهة برمجة التطبيقات بشكل عام

صدر في M69 (بيتا أغسطس 2018 ، مستقر سبتمبر 2018)

في هذه المرحلة ، القيمة الافتراضية لعلامة sdpSemantics هي "plan-b". في المرحلة الثانية ، نتوقع من الأشخاص الذين لديهم تطبيقات تعتمد على تنسيق SDP تشغيل الاختبارات لمعرفة ما إذا كانت تطبيقاتهم تعمل عندما تكون الخطة الموحدة قيد الاستخدام. بالنسبة للتطبيقات التي تدعم Firefox ، نتوقع أن يكون هذا تمرينًا بسيطًا للغاية: افعل ما تفعله مع Firefox.

يمكن تغيير القيمة الافتراضية لعلامة sdpSemantics في "chrome: // flags"؛ ابحث عن ميزة "WebRTC: استخدم Unified Plan SDP Semantics افتراضيًا".

المرحلة 3: تبديل الافتراضي

سيتم تحديد تاريخ المفتاح بالتشاور مع المستخدمين ، بعد إجراء اختبارات مكثفة. خطتنا الحالية هي M72 (بيتا ديسمبر 2018 ، مستقر يناير 2019).

في هذه المرحلة ، سنقوم بتغيير القيمة الافتراضية لعلامة sdpSemantics إلى "خطة موحدة". يمكن للتطبيقات التي تكتشف أنها تحتاج إلى مزيد من الوقت للتحويل تعيين إشارة sdpSemantics بشكل صريح إلى "plan-b" لاستعادة السلوك السابق.

كجزء من الاختبار ، نتوقع محاولة تغيير القيمة الافتراضية للعلم في Canary عدة مرات خلال دورة تطوير M71 و M72.

سنراقب استخدام العلم ، ومقدار SDP الذي يتم تلقيه باستخدام دلالات "الخطة ب" ، من أجل تحديد تاريخ المرحلة 4.

المرحلة 4: إزالة "الخطة ب"

في هذه المرحلة ، ستتم إزالة علامة sdpSemantics وجميع الرموز لدعم الخطة ب من Chrome. لن يكون تعيين علامة sdpSemantics خطأ ، ولكن لن يكون له أي تأثير.

إعداد طلبك لخطة موحدة

للحصول على معلومات تفصيلية حول الاختلافات في الخطة ب والخطة الموحدة وكيف قد يلزم تحديث تطبيقك استعدادًا للخطة الموحدة ، راجع دليل النقل "الخطة الموحدة" (JavaScript)

بالنسبة لتطبيقات (C ++) الأصلية ، راجع المستند "ترحيل تطبيقك الأصلي / المحمول إلى الخطة الموحدة"