summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Newberger <alann@google.com>2014-09-25 11:21:01 -0700
committerThe Android Automerger <android-build@google.com>2014-09-25 13:45:33 -0700
commit882402f8722407703a69b4a132ebd78f733cce2f (patch)
tree92a3548c55aea70938b16d2707e14e0a18892557
parent891dc7f06a8ef67e266bbc37c9e3be32583fc2c7 (diff)
downloadandroid_packages_apps_Camera2-882402f8722407703a69b4a132ebd78f733cce2f.tar.gz
android_packages_apps_Camera2-882402f8722407703a69b4a132ebd78f733cce2f.tar.bz2
android_packages_apps_Camera2-882402f8722407703a69b4a132ebd78f733cce2f.zip
Force filmstrip images to generate in JPEG compression format
Due to https://github.com/bumptech/glide/issues/156, we sometimes were getting PNG cache image generation which greatly increased latency and introduced jank. As workaround, explicitly forcing images to utilize JPEG format. Bug: 17597861 Change-Id: I49d7266d4ff0173d253877612b3076489a6b385a
-rw-r--r--src/com/android/camera/data/LocalMediaData.java11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/com/android/camera/data/LocalMediaData.java b/src/com/android/camera/data/LocalMediaData.java
index 708bf53e9..cb5ba41ae 100644
--- a/src/com/android/camera/data/LocalMediaData.java
+++ b/src/com/android/camera/data/LocalMediaData.java
@@ -73,6 +73,10 @@ public abstract class LocalMediaData implements LocalData {
protected final double mLongitude;
protected final Bundle mMetaData;
+ private static final int JPEG_COMPRESS_QUALITY = 90;
+ private static final BitmapEncoder JPEG_ENCODER =
+ new BitmapEncoder(Bitmap.CompressFormat.JPEG, JPEG_COMPRESS_QUALITY);
+
/**
* Used for thumbnail loading optimization. True if this data has a
* corresponding visible view.
@@ -354,9 +358,6 @@ public abstract class LocalMediaData implements LocalData {
private static final int mSupportedDataActions =
DATA_ACTION_DELETE | DATA_ACTION_EDIT | DATA_ACTION_SHARE;
- private static final int JPEG_COMPRESS_QUALITY = 90;
- private static final BitmapEncoder JPEG_ENCODER = new BitmapEncoder(null, JPEG_COMPRESS_QUALITY);
-
/** from MediaStore, can only be 0, 90, 180, 270 */
private final int mOrientation;
/** @see #getSignature() */
@@ -802,8 +803,12 @@ public abstract class LocalMediaData implements LocalData {
Glide.with(context)
.loadFromMediaStore(getUri(), mMimeType, mDateModifiedInSeconds, 0)
+ .asBitmap()
+ .encoder(JPEG_ENCODER)
.thumbnail(Glide.with(context)
.loadFromMediaStore(getUri(), mMimeType, mDateModifiedInSeconds, 0)
+ .asBitmap()
+ .encoder(JPEG_ENCODER)
.override(MEDIASTORE_THUMB_WIDTH, MEDIASTORE_THUMB_HEIGHT))
.placeholder(placeHolderResourceId)
.fitCenter()