Übersicht

Widevine DRM ist das Inhaltsschutzsystem von Google für Premium-Medien. Sie wird von wichtigen Partnern auf der ganzen Welt verwendet, darunter Google Play, YouTube, Netflix, Disney+, Amazon Prime Video, HBO Max, Hulu, Peacock, Discovery+ und Paramount+. Widevine bietet eine Premiumlösung für die Wiedergabe von Premiuminhalten im Vergleich zur digitalen Verbreitung.

Widevine DRM verwendet die folgenden Standards:

Unterstützte Plattformen

Sofern nicht anders angegeben, ist der Widevine-Client nativ in eine Geräteplattform eingebettet.

Gerät oder Plattform Unterstützt?
Android (Mobilgeräte, TV, Automobil) Ja
Android Open Source (AOSP) Ja
Apple iOS Ja [1]
Apple TV (tvOS)
Chromecast (Streamen) Ja
Google Home- und Nest-Geräte Ja
ChromeOS (Chromebook) Ja
Chrome-Browser (Windows, Mac OS X, Linux) Ja
Chromium-Browser Ja
Chromium Embedded Framework (CEF) / Elektron Ja
Firefox-Browser Ja
Edge-Browser Ja
Opera (Browser und eingebettete Geräte) Ja
Safari-Browser (Computer)
Roku-Geräte Ja
Amazon Echo-Geräte Ja
Amazon Fire OS-Geräte Ja
Amazon Fire TV-Geräte Ja
Facebook-Portalgeräte Ja
Nintendo Switch
Sony PlayStation Ja
Xbox für Microsoft
Smart-TV und Blu-Ray-Player (Tizen, WebOS) Ja

Zeichnen

Unterstützte Verschlüsselungsschemas

In der folgenden Tabelle sind die Verschlüsselungsschemas für alle Widevine-Plattformen aufgeführt.

Plattform CCE zens cbc1 cbcs
Android 4.4–6.x (einschließlich Android TV) J -
Android 7.x oder höher (einschließlich Android TV) J J
Chromecast (Streamen) J J J
Google Home J -
Smart-TV und Blu-Ray-Player J J
Widevine-iOS J J
Chrome-Browser (Computer) und Chrome OS J J
Chrome-Browser (Mobilgerät) J J
Mozilla Firefox J J
Opera J J
NexPlayer-SDK J J

Umgebung

Zeichnen

Das obige Diagramm veranschaulicht die verfügbaren Widevine-Komponenten im DRM-System.

Die Provisioning-, Keybox- und OEMCrypto-Komponenten richten sich speziell nach der Geräteintegration. Wenn Sie Widevine in ein Gerät einbinden möchten, kontaktieren Sie uns.

Eine Lizenzanfrage vom ursprünglichen Clientgerät wird von einem Partnerpartner über HTTPS empfangen. Dieser Proxymechanismus validiert die Anfrage und fügt Geschäftsregeln an, bevor die Nutzlast gesendet wird, die vom Widevine License Service erfüllt werden muss.

Das Widevine-Clientgerät kommuniziert unter keinen Umständen direkt mit dem Widevine-Lizenzdienst.

Widevine-Lizenzen ausstellen

Widevine bietet zwei Methoden zum Ausstellen von Lizenzen an Kunden:

  • Cloud-Lizenzdienst
    • Global zugänglicher Dienst ohne Zugriffsgebühren oder Transaktionsgebühren.
    • Der Zugriff wird für Widevine-Lizenzen mit den Anmeldedaten der Organisation gewährt.
  • License Server SDK
    • Sie können Ihren eigenen Lizenzdienst hosten.

Widevine Cloud-Lizenzdienst verwenden

Die Cloud-Lizenzdienste haben zwei Umgebungen: Test und Produktion. Der Zugriff wird mit eindeutigen Anmeldedaten pro Organisation für Widevine-Lizenzen gewährt.

Der Cloud License Service bietet zwei Endpunkte für:

  • Inhaltsschlüssel zum Zweck der Verschlüsselung von Inhalten abrufen
    • Auf diese Weise angeforderte Inhaltsschlüssel werden vom Widevine Cloud License Service gespeichert.
  • Lizenz ausstellen
    • Erfüllt die Lizenzanforderung, die von einem Widevine-Clientgerät generiert wurde.

Alle Lizenzanfragen von einem Clientgerät müssen mit einem Lizenz-Proxy-Mechanismus verarbeitet werden.

  • Widevine bietet ein Proxy SDK für die Kommunikation mit dem Cloud-Lizenzdienst.
  • Der Lizenz-Proxy validiert und verifiziert die eingehende Clientanfrage und bestimmt, welche Geschäftsregeln angewendet werden sollen.
  • Geschäftsregeln werden an die ursprüngliche Lizenzanfrage vom Gerät angehängt und zur Ausführung an den Lizenzdienst gesendet.
  • Nachdem eine Lizenz generiert wurde, können die Inhalte der Lizenz nicht mehr geändert werden und sind für das anfordernde Gerät personalisiert.

Shaka-Paketer

Der Shaka Packager (früher eDASH-Packager) von Widevine ist eine Open-Source-Referenzimplementierung für die Generierung von DASH-kompatiblen MP4-Formaten, Verschlüsselung mit einem Widevine PSSH und Erstellen eines DASH-Manifests. Auf der GitHub-Seite können Sie Fehler melden und Funktionsanfragen einreichen.

Player – Android

Die von Google gepflegte Open-Source-Projekt ExoPlayer ist die empfohlene Referenzplayer-Bibliothek, die die Wiedergabe von Widevine CENC-Medien veranschaulicht. Beim Erstellen von ExoPlayer wird standardmäßig eine Demo-App generiert, die eine voreingestellte Liste bekannter CENC-Inhalte des Widevine-Teams enthält.

Player – Browser

Das Open-Source-Projekt Shaka Player ist die Initiative von Widevine, um ein umfassendes, browserübergreifendes JavaScript-Bibliotheks-Framework zur Unterstützung der CENC-HTML5-Wiedergabe mit einem CDM (vorzugsweise Widevine) bereitzustellen. Außerhalb von GitHub ist eine Shaka Player Users-Diskussionsgruppe verfügbar und wird vom Shaka Player-Entwicklerteam von Widevine überwacht.

Der Shaka Player bietet:

  • Open-Source-Player-Framework mit vollem Funktionsumfang
  • Konfigurierbare und anpassbare UI
  • Plattform- und browserübergreifend
  • Unterstützung für HTML5, MSE, EME und DASH
  • Optionen für Multi-DRM