diff --git a/api/current.txt b/api/current.txt index 07137f15052ea..cea5507b1e683 100644 --- a/api/current.txt +++ b/api/current.txt @@ -15415,11 +15415,11 @@ package android.media { public static final class MediaCodec.CodecException extends java.lang.IllegalStateException { method public java.lang.String getDiagnosticInfo(); - method public int getReason(); + method public int getErrorCode(); method public boolean isRecoverable(); method public boolean isTransient(); - field public static final int REASON_HARDWARE = 0; // 0x0 - field public static final int REASON_RECLAIMED = 1; // 0x1 + field public static final int ERROR_INSUFFICIENT_RESOURCE = 1100; // 0x44c + field public static final int ERROR_RECLAIMED = 1101; // 0x44d } public static final class MediaCodec.CryptoException extends java.lang.RuntimeException { diff --git a/api/system-current.txt b/api/system-current.txt index 00da3d334c67f..93e944610aba8 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -16637,11 +16637,11 @@ package android.media { public static final class MediaCodec.CodecException extends java.lang.IllegalStateException { method public java.lang.String getDiagnosticInfo(); - method public int getReason(); + method public int getErrorCode(); method public boolean isRecoverable(); method public boolean isTransient(); - field public static final int REASON_HARDWARE = 0; // 0x0 - field public static final int REASON_RECLAIMED = 1; // 0x1 + field public static final int ERROR_INSUFFICIENT_RESOURCE = 1100; // 0x44c + field public static final int ERROR_RECLAIMED = 1101; // 0x44d } public static final class MediaCodec.CryptoException extends java.lang.RuntimeException { diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java index 6f7b58348758b..72198b66be914 100644 --- a/media/java/android/media/MediaCodec.java +++ b/media/java/android/media/MediaCodec.java @@ -816,10 +816,9 @@ final public class MediaCodec { * Thrown when an internal codec error occurs. */ public final static class CodecException extends IllegalStateException { - CodecException(int errorCode, int actionCode, @Nullable String detailMessage, int reason) { + CodecException(int errorCode, int actionCode, @Nullable String detailMessage) { super(detailMessage); mErrorCode = errorCode; - mReason = reason; mActionCode = actionCode; // TODO get this from codec @@ -847,21 +846,7 @@ final public class MediaCodec { } /** - * Retrieve the reason associated with a CodecException. - * The reason could be one of {@link #REASON_HARDWARE} or {@link #REASON_RECLAIMED}. - * - */ - @ReasonCode - public int getReason() { - return mReason; - } - - /** - * Retrieve the error code associated with a CodecException. - * This is opaque diagnostic information and may depend on - * hardware or API level. - * - * @hide + * Retrieve the error code associated with a CodecException */ public int getErrorCode() { return mErrorCode; @@ -878,22 +863,21 @@ final public class MediaCodec { } /** - * This indicates the exception is caused by the hardware. + * This indicates required resource was not able to be allocated. */ - public static final int REASON_HARDWARE = 0; + public static final int ERROR_INSUFFICIENT_RESOURCE = 1100; /** - * This indicates the exception is because the resource manager reclaimed - * the media resource used by the codec. + * This indicates the resource manager reclaimed the media resource used by the codec. *
* With this exception, the codec must be released, as it has moved to terminal state.
*/
- public static final int REASON_RECLAIMED = 1;
+ public static final int ERROR_RECLAIMED = 1101;
/** @hide */
@IntDef({
- REASON_HARDWARE,
- REASON_RECLAIMED,
+ ERROR_INSUFFICIENT_RESOURCE,
+ ERROR_RECLAIMED,
})
@Retention(RetentionPolicy.SOURCE)
public @interface ReasonCode {}
@@ -904,7 +888,6 @@ final public class MediaCodec {
private final String mDiagnosticInfo;
private final int mErrorCode;
- private final int mReason;
private final int mActionCode;
}
diff --git a/media/jni/android_media_MediaCodec.cpp b/media/jni/android_media_MediaCodec.cpp
index f808c0d1cf54a..31fb37cf0a68a 100644
--- a/media/jni/android_media_MediaCodec.cpp
+++ b/media/jni/android_media_MediaCodec.cpp
@@ -70,10 +70,10 @@ static struct CodecActionCodes {
jint codecActionRecoverable;
} gCodecActionCodes;
-static struct ExceptionReason {
- jint reasonHardware;
- jint reasonReclaimed;
-} gExceptionReason;
+static struct CodecErrorCodes {
+ jint errorInsufficientResource;
+ jint errorReclaimed;
+} gCodecErrorCodes;
static struct {
jclass clazz;
@@ -600,7 +600,7 @@ static jthrowable createCodecException(
env, env->FindClass("android/media/MediaCodec$CodecException"));
CHECK(clazz.get() != NULL);
- const jmethodID ctor = env->GetMethodID(clazz.get(), "