Il lettore Primetime supporta l'integrazione DRM di Primetime 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 ti fornisce la gestione 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 nel TVSDK. Tuttavia, puoi esporre la gestione degli errori, l’ottimizzazione dell’individualizzazione del dispositivo e l’acquisizione della licenza utilizzando i callback API TVSDK.
È possibile aggiungere la protezione del contenuto al lettore creando un gestore di riproduzione o utilizzando il manager factory.
Per creare un gestore della protezione dei contenuti:
Inizializzare il sistema DRM.
L'esempio di codice seguente mostra la chiamata di loadDRMServices
nella funzione dell'applicazione onCreate()
per garantire che l'inizializzazione necessaria per il sistema DRM venga avviata prima dell'avvio della riproduzione.
@Override
public void onCreate() {
super.onCreate();
DrmManager.loadDRMServices(getApplicationContext());
}
Caricare le licenze DRM.
L'esempio di codice seguente mostra il caricamento di VideoItems
al termine del caricamento dell'elenco di contenuti. In questo modo le licenze DRM verranno acquisite dal server licenze e memorizzate nella cache locale, in modo che, all'avvio della riproduzione, il contenuto venga caricato con un ritardo minimo.
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 le licenze DRM Precache su ON nell'interfaccia utente Impostazioni per prenotare le licenze DRM durante il caricamento del contenuto. Tuttavia, è consigliabile precaricare un elemento specifico invece di prememorizzare tutte le licenze nel catalogo.
Per utilizzare ManagerFactory
per implementare la gestione degli errori DRM, assicurati che la seguente riga di codice sia nel file PlayerFragment.java:
drmManager = ManagerFactory.getDrmManager(config, mediaPlayer);
Documentazione API correlata