From 5037f945cd25686d092ba88714ed5edde9143a4d Mon Sep 17 00:00:00 2001 From: Lajos Molnar Date: Mon, 24 Nov 2014 21:52:14 -0800 Subject: media: add support for 160-byte image info in MediaCodec Some 64-bit compilers now create 160-byte image structures. Bug: 18513091 Change-Id: I355714affaac0fde0b03578d13ab8f373dd5aa81 --- media/java/android/media/MediaCodec.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java index bdd62f2..8985b52 100644 --- a/media/java/android/media/MediaCodec.java +++ b/media/java/android/media/MediaCodec.java @@ -1784,11 +1784,11 @@ final public class MediaCodec { mYOffset = yOffset; mInfo = info; - // read media-info. the size of media info can be 80 or 156 depending on + // read media-info. the size of media info can be 80 or 156/160 depending on // whether it was created on a 32- or 64-bit process. See MediaImage - if (info.remaining() == 80 || info.remaining() == 156) { - boolean sizeIsLong = info.remaining() == 156; - int type = info.getInt(); + if (info.remaining() == 80 || info.remaining() == 156 || info.remaining() == 160) { + boolean sizeIsLong = info.remaining() != 80; + int type = readInt(info, info.remaining() == 160); if (type != TYPE_YUV) { throw new UnsupportedOperationException("unsupported type: " + type); } -- cgit v1.1