In order to help application developers transition smoothly, the Chrome team started supporting Unified Plan behind the flag starting from Chrome release M69.
Google is adding one new feature to the RTCPeerConnection’s RTCConfiguration:
enum SdpSemantics { "plan-b", "unified-plan" };
partial dictionary RTCConfiguration { SdpSemantics sdpSemantics; }
To enable Unified Plan, use this flag when you create a peer connection:
let peer = new RTCPeerConnection ({ sdpSemantics : "unified-plan" });
This won’t be needed from Chrome M72, as Unified Plan will be applied by default.
If you want to learn more, check out the detailed Unified Plan Transition Guide for application developers.
Additionally, it might be useful to have a look at this npm module, which is able to convert between a Unified Plan SDP to Plan B and vice versa.
If your application mimics Google’s Simulcast implementation, you will need to stay on Plan B until API semantics for Unified Plan are implemented. In the meantime, you can continue to use the Plan B SDP in Chrome:
let peer = new RTCPeerConnection ({ sdpSemantics : "plan-b" });
How Can callstats.io Help with the Transition to Unified Plan?
Figure 1: The callstats.io dashboard.
When you integrate callstats.io into your application, you are able to do two very important things related to this transition. First, you are able to track negotiation errors. Second, you can access the content of SDPs that trigger negotiation errors and use that as input when fixing errors in your application.
Comments
0 comments
Please sign in to leave a comment.