In diesem Thema erfahren Sie, wie Brightcove Player die Verwaltung digitaler Rechte (DRM) implementiert. Das Dokument zeigt zuerst, wie das DRM-Plugin implementiert wird, dann folgen Details des Plugins und wie es implementiert wird.
Einleitung
Brightcove nutzt die folgenden Technologien, um DRM-geschützte Inhalte für eine möglichst große Vielfalt an Browsern und Geräten bereitzustellen:
- MPEG-DASH mit Native/EME unterstützten CENC DRMs
- HLS mit FairPlay
Um DRM mit Brightcove Player verwenden zu können, müssen Sie:
- Produzieren von DRM-fähigen Inhalten
- Aktivieren Sie Brightcove Player, um das DRM-Plugin zu verwenden
- Konfigurieren Sie in einigen Fällen das DRM-Plugin für die Verwendung Ihres Lizenzservers
Terminologie
Mit dem Player-Modul implementieren
Gehen Sie folgendermaßen vor, um das DRM-Plugin in Studio zu implementieren und DRM basierend auf Ihrer Kontoeinrichtung zu aktivieren:
- Öffnen Sie das PLAYERS-Modul und erstellen Sie entweder einen neuen Player oder suchen Sie den Player, dem Sie die DRM-Funktionalität hinzufügen möchten.
- Klicken Sie auf den Link für den Spieler, um die Eigenschaften des Spielers zu öffnen.
- Klicken Wiedergabe im linken Navigationsmenü.
- Überprüfen Sie als Nächstes die Aktivieren Sie DRM Kontrollkästchen.
- Um den Player zu veröffentlichen, klicken Sie auf Veröffentlichen & Einbetten > Änderungen veröffentlichen.
- Um das Dialogfeld „Öffnen“ zu schließen, klicken Sie auf Schließen.
DRM-Plugin-Architektur
Das DRM-Plugin (videojs-drm) ist ein Wrapper um zwei Plugins:
- videojs-silberlicht
- videojs-contrib-eme
Das videojs-drm-Plugin Version 5 nutzt die integrierten DASH-Wiedergabefunktionen des Players. Dies verwendet VHS, das ist die nächste und umbenannte Version des integrierten videojs-contrib-hls Plugins.
Ab Spieler 6.26.0 unterstützt der Player DASH Multi-Perioden. Für frühere Versionen des Players ist der Shaka-Spieler für DASH Multi-Periode erforderlich.
Wenn Sie den Shaka Player wie in Version 4 für die DASH-Wiedergabe verwenden möchten, können Sie das folgende Skript zusammen mit dem Skript videojs-drm Version 5 einschließen:
https://players.brightcove.net/videojs-shaka/1/videojs-shaka.js
Das videojs-silverlight-Plugin ermöglicht die Wiedergabe von DASH-Inhalten auf bestimmten Internet Explorer-Browsern.
Das videojs-contrib-eme-Plugin ermöglicht die Wiedergabe von FairPlay HLS-Inhalten.
Verwendete Wiedergabetechnologien
Brightcove Player verwendet verschiedene DRM-Wiedergabetechnologien mit verschiedenen Browsern. Im Folgenden werden die mit Brightcove Player verwendeten DRM-Technologien beschrieben:
- FairPlay: Apples DRM-System
- PlayReady: Microsofts DRM-System
- Widevine: Googles DRM-System
Die folgende Tabelle beschreibt die Beziehung zwischen dem Browser (neueste Version), Format und Wiedergabetechnologie, die im Brightcove Player verwendet wird:
Browser | Formatieren | DRM-Wiedergabetechnologie | Wiedergabetyp verwendet DRM-Inhalte zu liefern |
---|---|---|---|
Chrome-Desktop | HLS oder DASH mit Widevine | EME | HLS oder MPEG-DASH |
Chrome Mobile1 | HLS oder DASH mit Widevine | EME | HLS oder MPEG-DASH |
Internet Explorer2 | HLS oder DASH mit PlayReady | EME | HLS oder MPEG-DASH |
Kante | HLS oder DASH mit Widevine | EME | HLS oder MPEG-DASH |
Safari | HLS mit FairPlay | Einheimische | HLS |
Firefox | HLS oder DASH mit Widevine | EME | HLS oder MPEG-DASH |
1Die DRM-Wiedergabe mit Chrome Mobile unter iOS wird nicht unterstützt.
Produzieren Sie DRM-Inhalte
Es gibt zwei Schritte, die Sie ausführen müssen, um DRM-aktivierte Inhalte zu erstellen:
- Wenden Sie sich an Ihren Kundenbetreuer, um Ihre Konten DRM-aktiviert zu haben. Anschließend können Sie Ihr Konto mit den richtigen Lizenzschlüsseln und Profilen aufnehmen, um die Erstellung von DRM-geschützten Inhalten zu ermöglichen.
-
Produzieren Sie DRM-geschützte Inhalte. Sie können entweder neue Inhalte hochladen oder vorhandene Inhalte erneut als DRM codieren. Dies geschieht durch Auswahl des Ingest-Profils, das Ihre gewünschte Verschlüsselungstechnologie erzeugt.
Sie müssen DRM-geschützte Inhalte erstellen, die entweder MPEG-DASH-Manifeste mit segmentierten und verschlüsselten Videos oder HLS FairPlay-Inhalte verwenden.
Implementierung der FairPlay-Wiedergabe im Code
Implementierung der Widevine-Wiedergabe im Code
Unterstützung anderer DRM-Anbieter
Das Plugin hat einen Pfad implementiert, der es Kunden ermöglicht, Unterstützung für andere DRM-Anbieter zu implementieren. Dies ist hauptsächlich für Fairplay nützlich, da Fairplay eine benutzerdefinierte Logik benötigt, die erforderlich ist, um Lizenzinformationen zu erhalten. Durch das Hinzufügen eines vendor.name
keySystems
zu einer bestimmten Quelle wird versucht, diese Logik zu nutzen und die erforderlichen Zertifikat- und Lizenzinformationen einzuschließen. Ein Beispiel für Azure folgt:
player.ready(function(){
player.eme();
player.src({
src: 'http://example.com/src-url.m3u8'
type: '',
keySystems: {
'com.apple.fps.1_0': {
vendor: {
name: 'azure'
},
certificateUri: 'https://example.com/your-certificate-uri.cer',
licenseUri: 'https://example.com/your-license-uri'
}
}
});
});
Hier ist ein Beispiel für CastLabs:
var player = videojs.getPlayer('myPlayerID');
player.ready(function(){
player.eme();
player.src({
src: 'http://example.com/src-url.m3u8'
type: '',
keySystems: {
'com.apple.fps.1_0': {
vendor: {
name: 'castlabs',
options: {
authToken: 'your-auth-token',
customData: 'your-custom-data'
}
}
certificateUri: 'https://example.com/your-certificate-uri.cer',
licenseUri: 'https://example.com/your-license-uri'
}
}
});
});
In diesem Beispiel werden Widevine- und PlayReady-Quellen geladen:
player.src({
type: 'application/dash+xml',
src: '<some src>',
keySystems: {
'com.widevine.alpha': '<license url>',
'com.microsoft.playready': '<license url>'
}
});
Debuggen aktivieren
Um das Debuggen für Ihren DRM DASH-Inhalt zu aktivieren, fügen Sie Ihrem Brightcove Player die folgenden Shaka-Skripte hinzu:
<!-- Script for the drm plugin -->
<script src="https://players.brightcove.net/videojs-drm/5/videojs-drm.min.js"></script>
<!-- Script for the shaka plugin -->
<script src="https://players.brightcove.net/videojs-shaka/1/videojs-shaka.js"></script>
<!-- Script for shaka debug plugin -->
<script src="https://players.brightcove.net/videojs-shaka/1/videojs-shaka.debug.js"></script>
Das Folgende ist ein Beispiel für das Debuggen beim Laden des Spielers:

Das Folgende ist ein Beispiel für das Debuggen, nachdem das Video abgespielt wurde:

STRICH-WENN
Der Brightcove Player unterstützt Assets des DASH Industry Forum (DASH-IF) und gibt Brightcove-Daten an Native/EME weiter. Sehen http://dashif.org Weitere Informationen zu DASH-IF. Die folgenden DASH-IF-Links sind auch hilfreich bei der Verwendung von DASH:
Einschränkungen bei der Wiedergabe
Informationen zum Konfigurieren von Brightcove Player für die Verwendung von Wiedergabeeinschränkungen finden Sie hier.
Bekannte Probleme
- Der Standard (Automatische Anzeige) Untertiteleinstellung in der Medien Moduls TEXTSPUR Der Abschnitt wird nicht unterstützt, wenn er in Verbindung mit DRM und In-Manifest-Untertiteln verwendet wird. In-Manifest-Untertitel werden beispielsweise mit den Brightcove-Produkten Dynamic Delivery und SSAI verwendet. Eine Problemumgehung für dieses Problem besteht darin, das
<track>
Tag mit der Advanced Brightcove Player-Implementierung zu verwenden. Dies ist ausführlich in der Programmgesteuertes Hinzufügen von Untertiteln zu Videos dokumentieren. Beachten Sie, dass Sie dasdefault
Attribut mit dem<track>
Tag verwenden müssen. - DRM-Assets und Chrome: Wenn Sie die Standard- (Iframe) -Player-Implementierung mit dem DRM-Plugin verwenden,
allow="encrypted-media"
ist es erforderlich, DRM-Assets in Chrome abspielen zu können.<iframe src="https://players.brightcove.net/123456789/BydO6uuuu_default/index.html?videoId=5783262319001" allowfullscreen width="640" height="360" allow="encrypted-media"></iframe>
- Sonderveranstaltung für Silverlight/IE11: In den meisten Fällen würden Sie, wenn Sie programmgesteuert mit dem Player interagieren möchten, entweder auf das warten
ready
oderloadedmetadata
zu versendendes Ereignis. Wenn Sie jedoch programmgesteuert mit dem Player interagieren möchten, wenn Sie die Silverlight-Technologie in IE11 verwenden UND DRM-Inhalte abspielen, sollten Sie auf dascanplay
Event warten. - Unter iOS stellt nur Safari die erforderlichen DRM-Browser-APIs (EME) zur Verfügung, WebViews haben derzeit keine EME-Unterstützung. Daher wird Fairplay DRM nur an Safari arbeiten.
Änderungsliste
Siehe die Versionshinweise zum DRM Plugin.
Historische Versionshinweise finden Sie im Changelog hier.