Condividi tramite


MediaCas Classe

Definizione

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

[Android.Runtime.Register("android/media/MediaCas", ApiSince=26, DoNotGenerateAcw=true)]
public sealed class MediaCas : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IAutoCloseable
[<Android.Runtime.Register("android/media/MediaCas", ApiSince=26, DoNotGenerateAcw=true)>]
type MediaCas = class
    inherit Object
    interface IAutoCloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Ereditarietà
MediaCas
Attributi
Implementazioni

Commenti

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler. Le API MediaCas sono progettate per supportare l'accesso condizionale, ad esempio quelli in ISO/IEC13818-1. Il sistema CA è identificato da un intero a 16 bit CA_system_id. Gli algoritmi di sramrambling sono in genere proprietari e implementati dai plug-in ca specifici del fornitore installati nel dispositivo.

L'app è responsabile della costruzione di un oggetto MediaCas per il sistema CA che intende usare. L'app può eseguire query se un determinato sistema CA è supportato usando il metodo #isSystemIdSupportedstatico . Può anche ottenere l'intero elenco di sistemi CA supportati usando il metodo #enumeratePluginsstatico .

Dopo aver costruito l'oggetto MediaCas, l'app deve eseguirne correttamente il provisioning usando il metodo #provision e/o #processEmm. Gli EMM (messaggi di gestione entitlement) possono essere distribuiti fuori banda o in banda con il flusso.

Per descramble dei flussi elementari, l'app prima chiama #openSession per generare un Session oggetto che identificherà in modo univoco una sessione. Una sessione fornisce un contesto per gli aggiornamenti chiave successivi e le attività di descrambling. Gli ECM (messaggi di controllo entitlement) vengono inviati alla sessione tramite il metodo Session#processEcm.

L'app crea quindi un oggetto MediaDescrambler e lo inizializza con la sessione usando MediaDescrambler#setMediaCasSession. Questo collega il descrambler alla sessione e il descrambler può quindi essere usato per descramble il contenuto protetto con la chiave della sessione, durante l'estrazione o durante la decodifica con android.media.MediaCodec.

Se l'app gestisce l'estrazione di campioni usando il proprio estrattore, può usare MediaDescrambler per descrambleare i campioni in buffer non crittografati (se la licenza della sessione non richiede decodificatori sicuri) o rimuovere una piccola quantità di dati per recuperare le informazioni necessarie per la pipeline downstream per elaborare l'esempio (se la licenza della sessione richiede decodificatori sicuri).

Se la sessione richiede un decodificatore sicuro, è necessario fornire un MediaDescrambler a MediaCodec per descramble degli esempi accodati da MediaCodec#queueSecureInputBuffer in buffer protetti. L'app deve usare MediaCodec#configure(MediaFormat, android.view.Surface, int, MediaDescrambler) invece del metodo normale MediaCodec#configure(MediaFormat, android.view.Surface, MediaCrypto, int) per configurare MediaCodec.

<h3>Uso di MediaExtractor</h3 di Android>

Se l'app usa MediaExtractor, può delegare la gestione della sessione CAS a MediaExtractor chiamando MediaExtractor#setMediaCas. MediaExtractor assumerà il controllo e chiamerà #openSession, #processEmm e/o Session#processEcme così via. se necessario.

Quando si usa MediaExtractor, l'app avrebbe comunque bisogno di un MediaDescrambler da usare con MediaCodec se la licenza richiede un decodificatore sicuro. La sessione associata al descrambler di una traccia può essere recuperata chiamando MediaExtractor#getCasInfoe usata per inizializzare un oggetto MediaDescrambler per MediaCodec.

<h3>Listener</h3>

L'app può registrare un listener per ricevere eventi dal sistema ca usando il metodo #setEventListener. Il formato esatto dell'evento è specifico dello schema e non è specificato da questa API.

Documentazione java per android.media.MediaCas.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Costruttori

MediaCas(Context, Int32, String, Int32)

Creare un'istanza di un sistema CA dell'ID di sistema specificato.

MediaCas(Context, Int32, String, Int32, Handler, MediaCas+IEventListener)

Creare un'istanza di un sistema CA dell'ID di sistema specificato.

MediaCas(Int32)

Creare un'istanza di un sistema CA dell'ID di sistema specificato.

Campi

PluginStatusPhysicalModuleChanged
Obsoleti.

Evento per indicare che lo stato del sistema CAS viene modificato dalla rimozione o dall'inserimento di moduli CAS fisici.

PluginStatusSessionNumberChanged
Obsoleti.

Evento per indicare che il numero di sessione del sistema CAS viene modificato.

ScramblingModeAes128
Obsoleti.

Modalità crittografia avanzata AES (Advanced Encryption System) a 128 bit.

ScramblingModeAesCbc
Obsoleti.

Modalità CBC (Advanced Encryption System) Cipher Block Chaining (AES).

ScramblingModeAesEcb
Obsoleti.

Modalità AES (Advanced Encryption System) Electronic Code Book (BCE).

ScramblingModeAesScte52
Obsoleti.

Advanced Encryption System (AES) Society of Cable Telecommunications Engineers (SCTE) modalità 52.

ScramblingModeDvbCissaV1
Obsoleti.

COMMON IPTV Software-oriented Scrambling Algorithm (CISSA) versione 1.

ScramblingModeDvbCsa1
Obsoleti.

CSV (Digital Video Broadcasting) Common Scrambling Algorithm (CSA) 1.

ScramblingModeDvbCsa2
Obsoleti.

CSV CSA 2.

ScramblingModeDvbCsa3Enhance
Obsoleti.

CSV CSA 3 in modalità completamente migliorata.

ScramblingModeDvbCsa3Minimal
Obsoleti.

CSV CSA 3 in modalità minima avanzata.

ScramblingModeDvbCsa3Standard
Obsoleti.

CSV CSA 3 in modalità standard.

ScramblingModeDvbIdsa
Obsoleti.

ATIS-0800006 IIF Default Scrambling Algorithm (IDSA).

ScramblingModeMulti2
Obsoleti.

Algoritmo di chiave simmetrica.

ScramblingModeReserved
Obsoleti.

MODALITÀ riservata DI DIGITAL Video Broadcasting.

ScramblingModeTdesEcb
Obsoleti.

Modalità Triple Data Encryption Algorithm (TDES) Electronic Code Book (BCE).

ScramblingModeTdesScte52
Obsoleti.

Triple Data Encryption Algorithm (TDES) Society of Cable Telecommunications Engineers (SCTE) modalità 52.

SessionUsageLive
Obsoleti.

La sessione Cas viene usata per descramble live streams.Cas session is used to descramble live streams.

SessionUsagePlayback
Obsoleti.

La sessione Cas viene usata per descramble recored streams.Cas session is used to descramble recored streams.

SessionUsageRecord
Obsoleti.

La sessione Cas viene usata per descramble live streams e crittografare il contenuto registrato locale

SessionUsageTimeshift
Obsoleti.

La sessione Cas viene usata per descramble live streams , crittografare il contenuto registrato locale e riprodurre contenuto crittografato locale.

Proprietà

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
JniPeerMembers

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

PeerReference

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)

Metodi

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Close()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

Dispose()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
Dispose(Boolean)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
EnumeratePlugins()

Elencare tutti i plug-in ca disponibili nel dispositivo.

Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetHashCode()

Restituisce un valore del codice hash per l'oggetto.

(Ereditato da Object)
IsSystemIdSupported(Int32)

Eseguire una query se un determinato sistema CA è supportato in questo dispositivo.

JavaFinalize()

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
OpenSession()

Aprire una sessione per descramble di uno o più flussi distribuiti dal sistema di accesso condizionale.

OpenSession(Int32, Int32)

Aprire una sessione per descramble di uno o più flussi distribuiti dal sistema di accesso condizionale.

ProcessEmm(Byte[])

Inviare un pacchetto EMM ricevuto al sistema CA.

ProcessEmm(Byte[], Int32, Int32)

Inviare un pacchetto EMM ricevuto al sistema CA.

Provision(String)

Avviare un'operazione di provisioning per un sistema ca.

RefreshEntitlements(Int32, Byte[])

Notificare al sistema della CA di aggiornare le chiavi entitlement.

SendEvent(Int32, Int32, Byte[])

Inviare un evento a un sistema ca.

SetEventListener(MediaCas+IEventListener, Handler)

Impostare un listener di eventi per ricevere notifiche dall'istanza di MediaCas.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
SetPrivateData(Byte[])

Inviare i dati privati per il sistema ca.

ToArray<T>()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto.

(Ereditato da Object)
UnregisterFromRuntime()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IJavaPeerable.Disposed()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.Finalized()

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

(Ereditato da Object)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

GetJniTypeName(IJavaPeerable)

È possibile usare MediaCas per ottenere chiavi per descramtare i flussi multimediali protetti, insieme a android.media.MediaDescrambler.

Si applica a