DRM errors signaled by the CryptoPlugin are now visible to MediaCodec clients

through a custom exception "MediaCodec.CryptoException".

Change-Id: I30215e9e13bab68abad23e27dcead7c1accd07f1
related-to-bug: 6365261
diff --git a/media/jni/android_media_MediaCodec.h b/media/jni/android_media_MediaCodec.h
index 570c33b..e2688be 100644
--- a/media/jni/android_media_MediaCodec.h
+++ b/media/jni/android_media_MediaCodec.h
@@ -28,6 +28,7 @@
 
 struct ALooper;
 struct AMessage;
+struct AString;
 struct ICrypto;
 struct ISurfaceTexture;
 struct MediaCodec;
@@ -52,7 +53,8 @@
 
     status_t queueInputBuffer(
             size_t index,
-            size_t offset, size_t size, int64_t timeUs, uint32_t flags);
+            size_t offset, size_t size, int64_t timeUs, uint32_t flags,
+            AString *errorDetailMsg);
 
     status_t queueSecureInputBuffer(
             size_t index,
@@ -63,7 +65,8 @@
             const uint8_t iv[16],
             CryptoPlugin::Mode mode,
             int64_t presentationTimeUs,
-            uint32_t flags);
+            uint32_t flags,
+            AString *errorDetailMsg);
 
     status_t dequeueInputBuffer(size_t *index, int64_t timeoutUs);