Loading api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -20444,6 +20444,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo { api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -21934,6 +21934,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo { api/test-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -20453,6 +20453,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo { media/java/android/media/MediaCodec.java +11 −0 Original line number Diff line number Diff line Loading @@ -2074,6 +2074,16 @@ final public class MediaCodec { */ public static final int ERROR_SESSION_NOT_OPENED = 5; /** * 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. */ public static final int ERROR_UNSUPPORTED_OPERATION = 6; /** @hide */ @IntDef({ ERROR_NO_KEY, Loading @@ -2081,6 +2091,7 @@ final public class MediaCodec { ERROR_RESOURCE_BUSY, ERROR_INSUFFICIENT_OUTPUT_PROTECTION, ERROR_SESSION_NOT_OPENED, ERROR_UNSUPPORTED_OPERATION }) @Retention(RetentionPolicy.SOURCE) public @interface CryptoErrorCode {} Loading media/jni/android_media_MediaCodec.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ static struct CryptoErrorCodes { jint cryptoErrorResourceBusy; jint cryptoErrorInsufficientOutputProtection; jint cryptoErrorSessionNotOpened; jint cryptoErrorUnsupportedOperation; } gCryptoErrorCodes; static struct CodecActionCodes { Loading Loading @@ -869,6 +870,10 @@ static void throwCryptoException(JNIEnv *env, status_t err, const char *msg) { err = gCryptoErrorCodes.cryptoErrorSessionNotOpened; defaultMsg = "Attempted to use a closed session"; break; case ERROR_DRM_CANNOT_HANDLE: err = gCryptoErrorCodes.cryptoErrorUnsupportedOperation; defaultMsg = "Operation not supported in this configuration"; break; default: /* Other negative DRM error codes go out as is. */ break; } Loading Loading @@ -1773,6 +1778,11 @@ static void android_media_MediaCodec_native_init(JNIEnv *env) { gCryptoErrorCodes.cryptoErrorSessionNotOpened = env->GetStaticIntField(clazz.get(), field); field = env->GetStaticFieldID(clazz.get(), "ERROR_UNSUPPORTED_OPERATION", "I"); CHECK(field != NULL); gCryptoErrorCodes.cryptoErrorUnsupportedOperation = env->GetStaticIntField(clazz.get(), field); clazz.reset(env->FindClass("android/media/MediaCodec$CodecException")); CHECK(clazz.get() != NULL); field = env->GetStaticFieldID(clazz.get(), "ACTION_TRANSIENT", "I"); Loading Loading
api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -20444,6 +20444,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo {
api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -21934,6 +21934,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo {
api/test-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -20453,6 +20453,7 @@ package android.media { field public static final int ERROR_NO_KEY = 1; // 0x1 field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 } public static final class MediaCodec.CryptoInfo {
media/java/android/media/MediaCodec.java +11 −0 Original line number Diff line number Diff line Loading @@ -2074,6 +2074,16 @@ final public class MediaCodec { */ public static final int ERROR_SESSION_NOT_OPENED = 5; /** * 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. */ public static final int ERROR_UNSUPPORTED_OPERATION = 6; /** @hide */ @IntDef({ ERROR_NO_KEY, Loading @@ -2081,6 +2091,7 @@ final public class MediaCodec { ERROR_RESOURCE_BUSY, ERROR_INSUFFICIENT_OUTPUT_PROTECTION, ERROR_SESSION_NOT_OPENED, ERROR_UNSUPPORTED_OPERATION }) @Retention(RetentionPolicy.SOURCE) public @interface CryptoErrorCode {} Loading
media/jni/android_media_MediaCodec.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ static struct CryptoErrorCodes { jint cryptoErrorResourceBusy; jint cryptoErrorInsufficientOutputProtection; jint cryptoErrorSessionNotOpened; jint cryptoErrorUnsupportedOperation; } gCryptoErrorCodes; static struct CodecActionCodes { Loading Loading @@ -869,6 +870,10 @@ static void throwCryptoException(JNIEnv *env, status_t err, const char *msg) { err = gCryptoErrorCodes.cryptoErrorSessionNotOpened; defaultMsg = "Attempted to use a closed session"; break; case ERROR_DRM_CANNOT_HANDLE: err = gCryptoErrorCodes.cryptoErrorUnsupportedOperation; defaultMsg = "Operation not supported in this configuration"; break; default: /* Other negative DRM error codes go out as is. */ break; } Loading Loading @@ -1773,6 +1778,11 @@ static void android_media_MediaCodec_native_init(JNIEnv *env) { gCryptoErrorCodes.cryptoErrorSessionNotOpened = env->GetStaticIntField(clazz.get(), field); field = env->GetStaticFieldID(clazz.get(), "ERROR_UNSUPPORTED_OPERATION", "I"); CHECK(field != NULL); gCryptoErrorCodes.cryptoErrorUnsupportedOperation = env->GetStaticIntField(clazz.get(), field); clazz.reset(env->FindClass("android/media/MediaCodec$CodecException")); CHECK(clazz.get() != NULL); field = env->GetStaticFieldID(clazz.get(), "ACTION_TRANSIENT", "I"); Loading