Il lettore Primetime supporta l’integrazione di Primetime DRM come flussi di lavoro DRM personalizzati. Ciò significa che l'applicazione deve implementare i flussi di lavoro di autenticazione DRM prima di riprodurre il flusso.
Per abilitare questa funzione, TVSDK fornisce il gestore DRM per l'autenticazione. L’implementazione di riferimento fornisce un esempio dei seguenti flussi di lavoro:
Tutti i contenuti protetti da DRM vengono gestiti automaticamente dalle librerie DRM integrate in TVSDK. Tuttavia, puoi esporre la gestione degli errori, l’ottimizzazione della personalizzazione del dispositivo e l’acquisizione delle licenze utilizzando i callback API TVSDK.
Puoi aggiungere la protezione dei contenuti al lettore creando un gestore della riproduzione o utilizzando il programma di fabbrica del gestore.
Per creare un gestore della protezione dei contenuti:
Inizializzare il sistema DRM.
Esempio Nell'esempio di codice riportato di seguito viene illustrato come chiamare loadDRMServices
nell’applicazione onCreate()
per garantire che qualsiasi inizializzazione necessaria per il sistema DRM venga avviata prima dell'avvio della riproduzione.
@Override
public void onCreate() {
super.onCreate();
DrmManager.loadDRMServices(getApplicationContext());
}
Precaricare le licenze DRM.
Nell'esempio di codice riportato di seguito viene illustrato come caricare VideoItems
al termine del caricamento dell’elenco dei contenuti. In questo modo, le licenze DRM vengono acquisite dal server licenze e memorizzate nella cache locale, in modo che all’avvio della riproduzione il contenuto venga caricato con il minimo ritardo.
DrmManager.preLoadDrmLicenses(item.getUrl(),
new MediaPlayerItemLoader.LoaderListener() {
@Override
public void onLoadComplete(MediaPlayerItem item) {
Player.logger.w(LOG_TAG + "::DRMPreload#onLoadComplete", item.getResource().getUrl());
}
@Override
public void onError(MediaErrorCode errorCode, String s) {
Player.logger.e(LOG_TAG + "::DRMPreload#onError", s);
}
}
È possibile impostare Precache DRM license (Licenze DRM precedenti) su ON (Attivate) nell'interfaccia utente Settings (Impostazioni) per prememorizzare le licenze DRM nella cache durante il caricamento del contenuto. Tuttavia, si consiglia di precaricare un elemento specifico invece di prememorizzare nella cache tutte le licenze nel catalogo.
Da utilizzare ManagerFactory
per implementare la gestione degli errori DRM, assicurarsi che la seguente riga di codice sia nel PlayerFragment.java file:
drmManager = ManagerFactory.getDrmManager(config, mediaPlayer);
Documentazione API correlata