Android APIs
public static final class

MediaCodec.CryptoInfo

extends Object
java.lang.Object
   ↳ android.media.MediaCodec.CryptoInfo

Class Overview

Metadata describing the structure of a (at least partially) encrypted input sample. A buffer's data is considered to be partitioned into "subSamples", each subSample starts with a (potentially empty) run of plain, unencrypted bytes followed by a (also potentially empty) run of encrypted bytes. numBytesOfClearData can be null to indicate that all data is encrypted. This information encapsulates per-sample metadata as outlined in ISO/IEC FDIS 23001-7:2011 "Common encryption in ISO base media file format files".

Summary

Fields
public byte[] iv A 16-byte initialization vector
public byte[] key A 16-byte opaque key
public int mode The type of encryption that has been applied, see CRYPTO_MODE_UNENCRYPTED and CRYPTO_MODE_AES_CTR.
public int[] numBytesOfClearData The number of leading unencrypted bytes in each subSample.
public int[] numBytesOfEncryptedData The number of trailing encrypted bytes in each subSample.
public int numSubSamples The number of subSamples that make up the buffer's contents.
Public Constructors
MediaCodec.CryptoInfo()
Public Methods
void set(int newNumSubSamples, int[] newNumBytesOfClearData, int[] newNumBytesOfEncryptedData, byte[] newKey, byte[] newIV, int newMode)
String toString()
Returns a string containing a concise, human-readable description of this object.
[Expand]
Inherited Methods
From class java.lang.Object

Fields

public byte[] iv

Added in API level 16

A 16-byte initialization vector

public byte[] key

Added in API level 16

A 16-byte opaque key

public int mode

Added in API level 16

The type of encryption that has been applied, see CRYPTO_MODE_UNENCRYPTED and CRYPTO_MODE_AES_CTR.

public int[] numBytesOfClearData

Added in API level 16

The number of leading unencrypted bytes in each subSample.

public int[] numBytesOfEncryptedData

Added in API level 16

The number of trailing encrypted bytes in each subSample.

public int numSubSamples

Added in API level 16

The number of subSamples that make up the buffer's contents.

Public Constructors

public MediaCodec.CryptoInfo ()

Added in API level 16

Public Methods

public void set (int newNumSubSamples, int[] newNumBytesOfClearData, int[] newNumBytesOfEncryptedData, byte[] newKey, byte[] newIV, int newMode)

Added in API level 16

public String toString ()

Added in API level 16

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.