Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。
このページは Cloud Translation API によって翻訳されました。
Switch to English

統合計画SDP形式-移行計画

Googleは、ChromeのWebRTC実装を現在のSDPフォーマット(「プランB」と呼ばれます)から標準準拠フォーマット(「統一プラン」、draft-ietf-rtcweb-jsep)に、今後数四半期にわたって移行する予定です。

計画には4つのフェーズと1つの一時的なAPI機能が含まれます。

誰が影響を受けるか

単一のPeerConnectionで複数のオーディオトラックまたは複数のビデオトラックを使用するユーザーは、統一プランで製品をテストし、それに応じて調整する必要があります。呼び出しがChrome以外のエンドポイントから開始され、Chromeから応答された場合、オファーの形式を変更する必要がある場合があります。詳細なSDP解析を行い、msid属性を気にする人は、解析コードが新しい形式(a = msid)を取得することを確認する必要があります。変更が必要かどうか、およびアプリをどのように変更する必要があるかについての詳細は、アプリケーションによって異なります。 RTCPeerConnectionごとに単一のオーディオと単一のビデオトラックのみを使用するほとんどすべてのアプリケーションは、変更による影響を受けないと考えられます。

API機能

RTCPeerConnectionのRTCConfigurationに新しい機能を1つ追加します。

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


partial dictionary RTCConfiguration {
   SdpSemantics sdpSemantics;
}
 

RTCConfigurationはRTCPeerConnectionのコンストラクターに渡すことができ、構築されたすべてのオファーと回答は統一プラン形式になります。 setLocalDescriptionおよびsetRemoteDescriptionの呼び出しでも、SDPが統一プラン形式であることが想定されます。レガシーChrome形式の場合、最初のオーディオトラックと最初のビデオトラック以外はすべて無視されます。

このフラグのデフォルト値を「統合プラン」に設定できるコマンドラインフラグ(Chrome M71以降では–enable-features = RTCUnifiedPlanByDefault、以前のバージョンでは–enable-blink-features = RTCUnifiedPlanByDefault)もあります。

フェーズ

フェーズ1:統合計画を実装する

統一計画は現在開発されており、実験の旗はM65から入手できます。フェーズ2までは、Canaryでテストするのが最も賢明です。 「–enable-blink-features = RTCUnifiedPlan」を使用してChromeを実行すると、上記の「sdpSemantics」機能にアクセスできるようになり、統合プランでテストを開始できます。

フェーズ2:API機能を一般提供する

M69でリリース(2018年8月ベータ版、2018年9月安定版)

このフェーズでは、sdpSemanticsフラグのデフォルト値は「plan-b」です。フェーズ2では、SDP形式に依存する実装を行っているユーザーがテストを実行して、統合プランの使用中にアプリケーションが機能するかどうかを確認する必要があります。 Firefoxをサポートするアプリケーションの場合、これは非常に単純な演習であると期待しています。Firefoxの場合と同じように実行してください。

sdpSemanticsフラグのデフォルト値は「chrome:// flags」で変更できます。 「WebRTC:デフォルトで統合プランSDPセマンティクスを使用する」という機能を探します。

フェーズ3:デフォルトを切り替える

切り替えの日付は、広範囲にわたるテストを経て、ユーザーと協議して設定されます。現在の計画はM72(2018年12月ベータ版、2019年1月安定版)です。

このフェーズでは、sdpSemanticsフラグのデフォルト値を「統一プラン」に変更します。変換にさらに時間が必要であることを発見したアプリケーションは、以前の動作を回復するために、sdpSemanticsフラグを明示的に「plan-b」に設定できます。

テストの一環として、M71とM72の開発サイクルで、Canaryのフラグのデフォルト値を複数回変更することを期待しています。

フェーズ4の日付を設定するために、フラグの使用状況と「プランB」セマンティクスで受信されるSDPの量を監視します。

フェーズ4:「プランB」を削除する

このフェーズでは、sdpSemanticsフラグとプランBをサポートするためのすべてのコードがChromeから削除されます。 sdpSemanticsフラグを設定してもエラーにはなりませんが、効果はありません。

統合計画のためのアプリケーションの準備

プランBと統合プランの違い、および統合プランの準備でアプリケーションを更新する必要がある場合の詳細については、 「統合プラン」移行ガイド(JavaScript)を参照してください。

ネイティブ(C ++)アプリケーションについては、ドキュメント「ネイティブ/モバイルアプリケーションの統合プランへの移行」を参照してください。