summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoah Woo <namyoon@google.com>2022-10-20 22:03:04 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-10-20 22:03:04 +0000
commitb98fa2e5ac1b94c47d214076ea7cca86ef19326c (patch)
tree3fe1eee884101103e594cfc882268e04569c62c8
parent3635637de6d445bced3a96ea1f1367509d433cee (diff)
parentb6e116b6597d7a1e64e8bff028c03fadc5530bc0 (diff)
downloadCamera2-b98fa2e5ac1b94c47d214076ea7cca86ef19326c.tar.gz
Merge "Camera2: get jpeg compression quality for front camera" am: ff0890358d am: eb7c22e645 am: b6e116b659
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Camera2/+/2263681 Change-Id: Icc81527e4c5ed859ca691da80cb0e4e6b16fe2bc Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/com/android/camera/processing/imagebackend/TaskCompressImageToJpeg.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/com/android/camera/processing/imagebackend/TaskCompressImageToJpeg.java b/src/com/android/camera/processing/imagebackend/TaskCompressImageToJpeg.java
index 7a2caf9fb..50fae1d58 100644
--- a/src/com/android/camera/processing/imagebackend/TaskCompressImageToJpeg.java
+++ b/src/com/android/camera/processing/imagebackend/TaskCompressImageToJpeg.java
@@ -18,6 +18,7 @@ package com.android.camera.processing.imagebackend;
import android.graphics.ImageFormat;
import android.graphics.Rect;
+import android.hardware.Camera;
import android.location.Location;
import android.media.CameraProfile;
import android.net.Uri;
@@ -420,7 +421,21 @@ public class TaskCompressImageToJpeg extends TaskJpegEncode {
* @return Quality level to use for JPEG compression.
*/
protected int getJpegCompressionQuality () {
- return CameraProfile.getJpegEncodingQualityParameter(CameraProfile.QUALITY_HIGH);
+ final int quality = CameraProfile.QUALITY_HIGH;
+ int level = CameraProfile.getJpegEncodingQualityParameter(quality);
+
+ if (level > 0) {
+ return level;
+ }
+
+ // getJpegEncodingQualityParameter(int) could not find any back-facing
+ // cameras. Let's use the first (likely front-facing) camera ID, if any,
+ // to get the encoding quality.
+ if (Camera.getNumberOfCameras() > 0) {
+ return CameraProfile.getJpegEncodingQualityParameter(0, quality);
+ }
+
+ return 0;
}
/**