MediaCodec.CryptoException
public
static
final
class
MediaCodec.CryptoException
extends RuntimeException
| java.lang.Object | ||||
| ↳ | java.lang.Throwable | |||
| ↳ | java.lang.Exception | |||
| ↳ | java.lang.RuntimeException | |||
| ↳ | android.media.MediaCodec.CryptoException | |||
Thrown when a crypto error occurs while queueing a secure input buffer.
Summary
Constants | |
|---|---|
int |
ERROR_FRAME_TOO_LARGE
This indicates that the video frame being decrypted exceeds the size of the device's protected output buffers. |
int |
ERROR_INSUFFICIENT_OUTPUT_PROTECTION
This indicates that the output protection levels supported by the device are not sufficient to meet the requirements set by the content owner in the license policy. |
int |
ERROR_INSUFFICIENT_SECURITY
This indicates that the security level of the device is not sufficient to meet the requirements set by the content owner in the license policy. |
int |
ERROR_KEY_EXPIRED
This indicates that the key used for decryption is no longer valid due to license term expiration. |
int |
ERROR_LOST_STATE
This error indicates that session state has been invalidated. |
int |
ERROR_NO_KEY
This indicates that the requested key was not found when trying to perform a decrypt operation. |
int |
ERROR_RESOURCE_BUSY
This indicates that a required crypto resource was not able to be allocated while attempting the requested operation. |
int |
ERROR_SESSION_NOT_OPENED
This indicates that decryption was attempted on a session that is not opened, which could be due to a failure to open the session, closing the session prematurely, or the session being reclaimed by the resource manager. |
int |
ERROR_UNSUPPORTED_OPERATION
This indicates that an operation was attempted that could not be supported by the crypto system of the device in its current configuration. |
Public constructors | |
|---|---|
CryptoException(int errorCode, String detailMessage)
|
|
Public methods | |
|---|---|
int
|
getErrorCode()
Retrieve the error code associated with a CryptoException |
Inherited methods | |
|---|---|
Constants
ERROR_FRAME_TOO_LARGE
public static final int ERROR_FRAME_TOO_LARGE
This indicates that the video frame being decrypted exceeds the size of the device's protected output buffers. When encountering this error the app should try playing content of a lower resolution.
Constant Value: 8 (0x00000008)
ERROR_INSUFFICIENT_OUTPUT_PROTECTION
public static final int ERROR_INSUFFICIENT_OUTPUT_PROTECTION
This indicates that the output protection levels supported by the device are not sufficient to meet the requirements set by the content owner in the license policy.
Constant Value: 4 (0x00000004)
ERROR_INSUFFICIENT_SECURITY
public static final int ERROR_INSUFFICIENT_SECURITY
This indicates that the security level of the device is not sufficient to meet the requirements set by the content owner in the license policy.
Constant Value: 7 (0x00000007)
ERROR_KEY_EXPIRED
public static final int ERROR_KEY_EXPIRED
This indicates that the key used for decryption is no longer valid due to license term expiration. The operation can be retried after updating the expired keys.
Constant Value: 2 (0x00000002)
ERROR_LOST_STATE
public static final int ERROR_LOST_STATE
This error indicates that session state has been invalidated. It can occur on devices that are not capable of retaining crypto session state across device suspend/resume. The session must be closed and a new session opened to resume operation.
Constant Value: 9 (0x00000009)
ERROR_NO_KEY
public static final int ERROR_NO_KEY
This indicates that the requested key was not found when trying to perform a decrypt operation. The operation can be retried after adding the correct decryption key.
Constant Value: 1 (0x00000001)
ERROR_RESOURCE_BUSY
public static final int ERROR_RESOURCE_BUSY
This indicates that a required crypto resource was not able to be allocated while attempting the requested operation. The operation can be retried if the app is able to release resources.
Constant Value: 3 (0x00000003)
ERROR_SESSION_NOT_OPENED
public static final int ERROR_SESSION_NOT_OPENED
This indicates that decryption was attempted on a session that is not opened, which could be due to a failure to open the session, closing the session prematurely, or the session being reclaimed by the resource manager.
Constant Value: 5 (0x00000005)
ERROR_UNSUPPORTED_OPERATION
public static final int ERROR_UNSUPPORTED_OPERATION
This indicates that an operation was attempted that could not be supported by the crypto system of the device in its current configuration. It may occur when the license policy requires device security features that aren't supported by the device, or due to an internal error in the crypto system that prevents the specified security policy from being met.
Constant Value: 6 (0x00000006)
Public constructors
CryptoException
public CryptoException (int errorCode,
String detailMessage)
| Parameters | |
|---|---|
errorCode |
int |
detailMessage |
String: This value may be null. |
Public methods
getErrorCode
public int getErrorCode ()
Retrieve the error code associated with a CryptoException