En Google, luchamos por la equidad racial de la comunidad negra. Más información
Esta página se ha traducido con Cloud Translation API.
Switch to English

Formato SDP del plan unificado - plan de transición

Google planea hacer la transición de la implementación de WebRTC de Chrome del formato SDP actual (llamado "Plan B") a un formato conforme a los estándares ("Plan Unificado", borrador-ietf-rtcweb-jsep) durante los próximos dos trimestres.

El plan incluye 4 fases y una característica de API transitoria.

Quien se verá afectado

Las personas que usan múltiples pistas de audio o múltiples pistas de video en un solo PeerConnection tendrán que probar su producto bajo Unified Plan y adaptarse en consecuencia. En el caso de que una llamada se inicie desde un punto final que no sea Chrome y Chrome responda, es posible que la forma de la oferta tenga que cambiar. Las personas que realizan análisis detallados de SDP y se preocupan por los atributos de msid tendrán que comprobar que su código de análisis recoja el nuevo formato (a = msid). Los detalles sobre si serán necesarios cambios y cómo deben cambiar las aplicaciones dependerán de la aplicación. Creemos que casi todas las aplicaciones que usan un solo audio y una sola pista de video por RTCPeerConnection no se verán afectadas por el cambio.

La función API

Estamos agregando una nueva característica a RTCConfiguration de RTCPeerConnection:

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


partial dictionary RTCConfiguration {
   SdpSemantics sdpSemantics;
}

La RTCConfiguration se puede pasar al constructor de una RTCPeerConnection, y todas las ofertas y respuestas construidas estarán en el formato de Plan Unificado. Las llamadas a setLocalDescription y setRemoteDescription también esperan que el SDP esté en el formato del Plan Unificado; si está en el formato heredado de Chrome, se ignorarán todas las pistas excepto la primera de audio y la primera de video.

También hay una marca de línea de comando (–enable-features = RTCUnifiedPlanByDefault en Chrome M71 y superior, –enable-blink-features = RTCUnifiedPlanByDefault en versiones anteriores) que permite que el valor predeterminado de esta marca se establezca en “plan unificado”.

Las fases

Fase 1: Implementar un plan unificado

El Plan Unificado está actualmente desarrollado y la bandera para la experimentación ha estado disponible en M65. Hasta la fase 2, es mejor probar con Canary. Si ejecuta Chrome con “–enable-blink-features = RTCUnifiedPlan”, tendrá acceso a la función “sdpSemantics” descrita anteriormente y podrá comenzar a realizar pruebas con Unified Plan.

Fase 2: hacer que la función API esté disponible de forma generalizada

Publicado en M69 (beta en agosto de 2018, estable en septiembre de 2018)

En esta fase, el valor predeterminado de la bandera sdpSemantics es "plan-b". En la Fase 2, esperamos que las personas que tienen implementaciones que dependen del formato SDP realicen pruebas para ver si sus aplicaciones funcionan cuando Unified Plan está en uso. Para las aplicaciones compatibles con Firefox, esperamos que este sea un ejercicio muy simple: haz lo mismo que harías con Firefox.

El valor predeterminado de la bandera sdpSemantics se puede cambiar en "chrome: // flags"; busque la función "WebRTC: Usar semántica SDP del plan unificado de forma predeterminada".

Fase 3: cambiar el predeterminado

La fecha del cambio se establecerá en consulta con los usuarios, después de pruebas exhaustivas. Nuestro plan actual es M72 (beta en diciembre de 2018, estable en enero de 2019).

En esta fase, cambiaremos el valor predeterminado de la bandera sdpSemantics a "plan unificado". Las aplicaciones que descubren que necesitan más tiempo para realizar la conversión pueden establecer el indicador sdpSemantics explícitamente en "plan-b" para recuperar el comportamiento anterior.

Como parte de las pruebas, esperamos intentar cambiar el valor predeterminado de la bandera en Canary varias veces durante el ciclo de desarrollo de M71 y M72.

Estaremos monitoreando el uso de la bandera y la cantidad de SDP que se recibe con la semántica del “Plan B”, para establecer la fecha para la fase 4.

Fase 4: eliminar el "plan B"

En esta fase, la marca sdpSemantics y todo el código para admitir el Plan B se eliminarán de Chrome. Establecer el indicador sdpSemantics no será un error, pero no tendrá ningún efecto.

Preparación de su solicitud para el plan unificado

Para obtener información detallada sobre las diferencias entre el Plan B y el Plan Unificado y cómo es posible que deba actualizar su solicitud para prepararse para el Plan Unificado, consulte la Guía de transición del “Plan Unificado” (JavaScript)

Para aplicaciones nativas (C ++), consulte el documento "Migración de su aplicación nativa / móvil a Unified Plan"