Google is committed to advancing racial equity for Black communities. See how.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Unified Plan SDP-Format - Übergangsplan

Google plant, die WebRTC-Implementierung von Chrome in den nächsten Quartalen vom aktuellen SDP-Format (als "Plan B" bezeichnet) auf ein standardkonformes Format ("Unified Plan", Entwurf-ietf-rtcweb-jsep) umzustellen.

Der Plan umfasst 4 Phasen und eine vorübergehende API-Funktion.

Wer wird betroffen sein

Personen, die mehrere Audiospuren oder mehrere Videospuren in einer einzigen PeerConnection verwenden, müssen ihr Produkt unter Unified Plan testen und entsprechend anpassen. Wenn ein Anruf von einem Nicht-Chrome-Endpunkt initiiert und von Chrome beantwortet wird, muss sich möglicherweise die Form des Angebots ändern. Personen, die eine detaillierte SDP-Analyse durchführen und sich um msid-Attribute kümmern, müssen überprüfen, ob ihr Parsing-Code das neue Format (a = msid) übernimmt. Die Details darüber, ob Änderungen erforderlich sind und wie sich die Apps ändern müssen, sind anwendungsabhängig. Wir glauben, dass fast alle Anwendungen, die nur eine einzige Audio- und eine einzige Videospur pro RTCPeerConnection verwenden, von der Änderung nicht betroffen sind.

Die API-Funktion

Wir fügen der RTCC-Konfiguration von RTCPeerConnection eine neue Funktion hinzu:

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


partial dictionary RTCConfiguration {
   SdpSemantics sdpSemantics;
}
 

Die RTCC-Konfiguration kann an den Konstruktor einer RTCPeerConnection übergeben werden, und alle erstellten Angebote und Antworten werden im Unified Plan-Format erstellt. Aufrufe von setLocalDescription und setRemoteDescription erwarten auch, dass das SDP im Unified Plan-Format vorliegt. Wenn es sich um das ältere Chrome-Format handelt, werden alle bis auf die erste Audiospur und die erste Videospur ignoriert.

Es gibt auch ein Befehlszeilenflag (–enable-features = RTCUnifiedPlanByDefault in Chrome M71 und höher, –enable-blink-features = RTCUnifiedPlanByDefault in früheren Versionen), mit dem der Standardwert dieses Flags auf „Unified-Plan“ gesetzt werden kann.

Die Phasen

Phase 1: Implementierung eines einheitlichen Plans

Derzeit wird ein einheitlicher Plan entwickelt, und die Flagge für Experimente ist ab M65 erhältlich. Bis zur zweiten Phase ist es am klügsten, mit Canary zu testen. Wenn Sie Chrome mit "–enable-blink-features = RTCUnifiedPlan" ausführen, haben Sie Zugriff auf die oben beschriebene Funktion "sdpSemantics" und können mit Unified Plan testen.

Phase 2: Machen Sie die API-Funktion allgemein verfügbar

Veröffentlicht in M69 (Beta August 2018, stabil September 2018)

In dieser Phase lautet der Standardwert des sdpSemantics-Flags "plan-b". In Phase 2 erwarten wir, dass Benutzer mit Implementierungen, die vom SDP-Format abhängen, Tests ausführen, um festzustellen, ob ihre Anwendungen funktionieren, wenn Unified Plan verwendet wird. Für Anwendungen, die Firefox unterstützen, erwarten wir eine sehr einfache Übung: Machen Sie genau das, was Sie für Firefox tun würden.

Der Standardwert des sdpSemantics-Flags kann in "chrome: // flags" geändert werden. Suchen Sie nach der Funktion "WebRTC: Standardmäßig Unified Plan SDP-Semantik verwenden".

Phase 3: Standard wechseln

Das Datum für den Wechsel wird nach ausführlichen Tests in Absprache mit den Benutzern festgelegt. Unser aktueller Plan ist M72 (Beta Dezember 2018, stabil Januar 2019).

In dieser Phase ändern wir den Standardwert des sdpSemantics-Flags in "Unified-Plan". Anwendungen, die feststellen, dass sie mehr Zeit zum Konvertieren benötigen, können das sdpSemantics-Flag explizit auf "plan-b" setzen, um das vorherige Verhalten wiederherzustellen.

Im Rahmen von Tests werden wir voraussichtlich versuchen, den Standardwert des Flags in Canary während des Entwicklungszyklus von M71 und M72 mehrmals zu ändern.

Wir werden die Verwendung des Flags und die Menge an SDP überwachen, die mit der Semantik „Plan B“ empfangen wird, um das Datum für Phase 4 festzulegen.

Phase 4: Entfernen Sie "Plan B"

In dieser Phase werden das sdpSemantics-Flag und der gesamte Code zur Unterstützung von Plan B aus Chrome entfernt. Das Setzen des sdpSemantics-Flags ist kein Fehler, hat jedoch keine Auswirkungen.

Vorbereiten Ihres Antrags für einen einheitlichen Plan

Ausführliche Informationen zu den Unterschieden zwischen Plan B und Unified Plan und darüber, wie Ihre Anwendung möglicherweise zur Vorbereitung auf Unified Plan aktualisiert werden muss, finden Sie im Übergangshandbuch „Unified Plan“ (JavaScript).

Informationen zu nativen (C ++) Anwendungen finden Sie im Dokument „Migrieren Ihrer nativen / mobilen Anwendung zu Unified Plan“.