| 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 c2ab234fbb7c9bb7c5e50bf64125ac68501c2c7c..ef9726146b158d29aaea2c11827ca6b42a81e54b 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
|
| @@ -43,7 +43,7 @@ import java.util.List;
|
| * and their capabilities, using android.hardware.camera2.CameraManager.
|
| **/
|
| @JNINamespace("media")
|
| -@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
| +@TargetApi(Build.VERSION_CODES.M)
|
| public class VideoCaptureCamera2 extends VideoCapture {
|
| // Inner class to extend a CameraDevice state change listener.
|
| private class CrStateListener extends CameraDevice.StateCallback {
|
| @@ -805,7 +805,9 @@ public class VideoCaptureCamera2 extends VideoCapture {
|
| break;
|
| }
|
| }
|
| - // TODO(mcasas): query |cameraCharacteristics| for CONTROL_AE_LOCK_AVAILABLE (API 23)
|
| + if (cameraCharacteristics.get(CameraCharacteristics.CONTROL_AE_LOCK_AVAILABLE)) {
|
| + exposureModes.add(Integer.valueOf(AndroidMeteringMode.FIXED));
|
| + }
|
| builder.setExposureModes(integerArrayListToArray(exposureModes));
|
|
|
| int jniExposureMode = AndroidMeteringMode.CONTINUOUS;
|
| @@ -838,7 +840,9 @@ public class VideoCaptureCamera2 extends VideoCapture {
|
| break;
|
| }
|
| }
|
| - // TODO(mcasas): query |cameraCharacteristics| for CONTROL_AWE_LOCK_AVAILABLE (API 23)
|
| + if (cameraCharacteristics.get(CameraCharacteristics.CONTROL_AWB_LOCK_AVAILABLE)) {
|
| + whiteBalanceModes.add(Integer.valueOf(AndroidMeteringMode.FIXED));
|
| + }
|
| builder.setWhiteBalanceModes(integerArrayListToArray(whiteBalanceModes));
|
|
|
| final int whiteBalanceMode = mPreviewRequest.get(CaptureRequest.CONTROL_AWB_MODE);
|
|
|