È possibile utilizzare le funzioni del Digital Rights Management Primetime (DRM) per fornire un accesso sicuro ai contenuti video. In alternativa, è possibile utilizzare soluzioni DRM di terze parti come alternativa alla soluzione integrata di Adobe.
Contatta il tuo rappresentante di Adobe per informazioni aggiornate sulla disponibilità di soluzioni DRM di terze parti.
È possibile utilizzare il DRM nativo Widevine Android con flussi CMAF HLS.
Lo schema CTR di Widevine CENC richiede la versione minima di Android 4.4 (API Level 19).
Lo schema CBCS di Widevine richiede la versione minima di Android 7.1 (API Level 25).
Chiama la seguente com.adobe.mediacore.drm.DRMManager
API prima di caricare la risorsa MediaPlayer:
public static void setProtectionData(
String drm,
String licenseServerURL,
Map<String, String> requestProperties)
drm
- "com.widevine.alpha"
per Widevine.
licenseServerURL
- L'URL del server licenze Widevine che riceve richieste di licenza.
requestProperties
- Contiene intestazioni aggiuntive da includere nella richiesta di licenza in uscita.
Ad esempio, quando utilizzi il contenuto incluso nel pacchetto per Expressplay DRM, utilizza il codice seguente prima di riprodurre:
DRMManager.setProtectionData(
"com.widevine.alpha",
"https://wv.service.expressplay.com/hms/wv/rights/?ExpressPlayToken=
<i>token</i>",
null);
Chiama la seguente com.adobe.mediacore.drm.DRMManager
API prima di caricare la risorsa MediaPlayer.
public static void setMediaDrmCallback(
MediaDrmCallback callback)
callback
- implementazione personalizzata di MediaDrmCallback da utilizzare invece del valore predefinito com.adobe.mediacore.drm.WidevineMediaDrmCallback
.Per informazioni dettagliate, consulta la documentazione API TVSDK 3.11 per Android.
Chiama la seguente com.adobe.mediacore.drm.DRMManager
API, preferibilmente nell’implementazione di callback personalizzata.
public static byte[] getPSSH()
API restituisce la casella di intestazione specifica del sistema di protezione associata alla risorsa multimediale Widevine caricata.
È disponibile una casella valida per un breve periodo di tempo (tra la creazione dell’istanza DRM e il caricamento delle chiavi). MediaDrmCallback callback executeKeyRequest()
può essere utilizzato per personalizzare il recupero delle chiavi di licenza.
getPSSH()
L’API è supportata solo con l’istanza di un singolo lettore. Per ricevere la casella corretta, è necessario che più lettori o la funzione di attivazione immediata inizializzino in modo seriale.