Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(856)

Unified Diff: media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java

Issue 2827253004: Image Capture: set SENSOR_EXPOSURE_TIME when CONTROL_AE_MODE_OFF (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java
diff --git a/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java b/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java
index 3d30f1dad16135ec0d0936048748e26c65a1d23c..c2ab234fbb7c9bb7c5e50bf64125ac68501c2c7c 100644
--- a/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java
+++ b/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera2.java
@@ -379,6 +379,16 @@ public class VideoCaptureCamera2 extends VideoCapture {
if (mExposureMode == AndroidMeteringMode.NONE
|| mExposureMode == AndroidMeteringMode.FIXED) {
requestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_OFF);
+
+ // We need to configure by hand the exposure time when AE mode is off. Set it to the
+ // middle of the allowed range. Further tuning will be done via |mIso|.
+ final CameraCharacteristics cameraCharacteristics =
+ getCameraCharacteristics(mContext, mId);
+ Range<Long> range = cameraCharacteristics.get(
+ CameraCharacteristics.SENSOR_INFO_EXPOSURE_TIME_RANGE);
+ requestBuilder.set(CaptureRequest.SENSOR_EXPOSURE_TIME,
+ range.getLower() + (range.getUpper() + range.getLower()) / 2 /* nanoseconds*/);
+
} else {
requestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON);
requestBuilder.set(CaptureRequest.CONTROL_AE_TARGET_FPS_RANGE, mAeFpsRange);
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698