Descripción general
Widevine DRM es el sistema de protección de contenido de Google para medios premium. Lo usan socios importantes de todo el mundo, como Google Play, YouTube, Netflix, Disney+, Amazon Prime Video, HBO Max, Hulu, Peacock, Discovery+, Paramount+ y muchos más. El objetivo de Widevine es proporcionar la mejor experiencia para ver contenido premium a través de la distribución digital.
Widevine DRM adopta los siguientes estándares:
- Encrypted Media Extensions: Una especificación del W3C.
- Encriptación común
- ISO/IEC 23001-7: Encriptación común en archivos de formato de archivo multimedia base ISO
- ISO/IEC 23001-9: Encriptación común de las transmisiones de transporte MPEG-2
Plataformas compatibles
El cliente de Widevine se incorpora de forma nativa en una plataforma de dispositivo, a menos que se indique lo contrario.
Dispositivo o plataforma | ¿Se admite? |
Android (dispositivos móviles, TV y Automotive) | Sí |
Código abierto de Android (AOSP) | Sí |
Apple iOS | Sí [1] |
Apple TV (tvOS) | - |
Chromecast (Cast) | Sí |
Dispositivos Google Home y Nest | Sí |
ChromeOS (Chromebook) | Sí |
Navegador Chrome (Windows, Mac OS X y Linux) | Sí |
Navegador Chromium | Sí |
Framework integrado de Chromium (CEF) / Electrón | Sí |
Navegador Firefox | Sí |
Navegador Edge | Sí |
Opera (navegador y dispositivos incorporados) | Sí |
Navegador Safari (computadoras) | - |
Dispositivos Roku | Sí |
Dispositivos Amazon Echo | Sí |
Dispositivos con Amazon Fire OS | Sí |
Dispositivos Amazon Fire TV | Sí |
Dispositivos Facebook Portal | Sí |
Nintendo Switch | - |
Sony PlayStation | Sí |
Microsoft Xbox | - |
Smart TVs y reproductores Blu-ray (Tizen, WebOS) | Sí |
Esquemas de encriptación admitidos
En la siguiente tabla, se proporciona una asignación de los esquemas de encriptación en las plataformas integradas de Widevine.
Plataforma | cenc | cens | cbc1 | cbcs |
Android 4.4 a 6.x (incluida Android TV) | Sí | - | - | - |
Android 7.x y versiones posteriores (incluidos Android TV) | Sí | - | - | Sí |
Chromecast (Cast) | Sí | - | Sí | Sí |
Google Home | Sí | - | - | - |
Smart TVs y reproductores Blu-ray | Sí | - | - | Sí |
Widevine para iOS | Sí | - | - | Sí |
Navegador Chrome (computadoras de escritorio) y ChromeOS | Sí | - | - | Sí |
Navegador Chrome (para dispositivos móviles) | Sí | - | - | Sí |
Mozilla Firefox | Sí | - | - | Sí |
Opera | Sí | - | - | Sí |
SDK de NexPlayer | Sí | - | - | Sí |
Ecosistema
El diagrama anterior ilustra los componentes de Widevine disponibles dentro del ecosistema de DRM.
Los componentes de Provisioning, Keybox y OEMCrypto son específicos del proceso de integración de dispositivos. Si te interesa integrar Widevine en un dispositivo, comunícate con nosotros.
Un mecanismo de proxy operado por un socio (a través de HTTPS) recibirá una solicitud de licencia del dispositivo cliente de origen. Este mecanismo de proxy validará la solicitud y agregará las reglas comerciales antes de enviar la carga útil que se completará con el servicio de licencias de Widevine.
El dispositivo cliente de Widevine no se comunica directamente con el servicio de licencias de Widevine bajo ninguna circunstancia.
Cómo emitir licencias de Widevine
Widevine proporciona 2 métodos para emitir licencias a los clientes:
- Cloud License Service
- Servicio de acceso global sin tarifas de acceso ni transacción.
- El acceso se proporciona a los licenciatarios de Widevine con credenciales por organización.
- SDK del servidor de licencias
- Diseñado para alojar tu propio servicio de licencias.
Usa el servicio de licencias en la nube de Widevine
Los servicios de licencias de Cloud tienen 2 entornos: prueba y producción. El acceso se proporciona con credenciales únicas por organización a los licenciatarios de Widevine.
El servicio de licencias de Cloud proporciona 2 extremos para lo siguiente:
- Recuperar claves de contenido para encriptarlo
- El servicio de licencia en la nube de Widevine almacena las claves de contenido solicitadas de esta manera.
- Emisión de una licencia
- Completa la solicitud de licencia que genera un dispositivo cliente de Widevine.
Todas las solicitudes de licencia de un dispositivo cliente deben procesarse mediante un mecanismo de proxy de licencia.
- Widevine proporciona un SDK de proxy para comunicarse con el servicio de licencias de Cloud.
- El proxy de licencias valida y verifica la solicitud entrante del cliente y determina qué reglas empresariales se deben aplicar.
- Las reglas empresariales se agregan a la solicitud de licencia de origen desde el dispositivo y se envían al servicio de licencias para su entrega.
- Una vez que se genera una licencia, su contenido ya no se puede modificar y se individualiza para el dispositivo solicitante.
Empaquetador de Shaka
El empaquetador de Shaka (antes conocido como empaquetador de eDASH) de Widevine es una implementación de referencia de código abierto sobre cómo generar formatos MP4 compatibles con DASH, realizar encriptación con un PSSH de Widevine y crear un manifiesto DASH. Visita la página de GitHub para informar errores y solicitar funciones.
Reproductor: Android
El proyecto de ExoPlayer de código abierto que mantiene Google es la biblioteca de reproductor de referencia recomendada que demuestra la reproducción de contenido multimedia CENC de Widevine. Cuando se compila ExoPlayer, de forma predeterminada, se genera una app de demostración que contiene una lista predeterminada de contenido CENC de buena calidad proveniente del equipo de Widevine.
Reproductor: Navegador
El proyecto de código abierto de Shaka Player es una iniciativa de Widevine para proporcionar un framework de biblioteca de JavaScript multinavegador integral que admita la reproducción de HTML5 CENC con un CDM (preferentemente Widevine). Fuera de GitHub, hay un grupo de debate para usuarios de Shaka Player disponible que supervisa el equipo de desarrolladores de Shaka Player de Widevine.
Shaka Player ofrece:
- Framework de reproductor de código abierto con todas las funciones
- IU configurable y personalizable
- Compatibilidad multiplataforma y multinavegador
- Compatibilidad con HTML5, MSE, EME y DASH
- Opciones de DRM múltiple