summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/camera')
-rw-r--r--src/com/android/camera/VideoMenu.java2
-rw-r--r--src/com/android/camera/VideoModule.java22
-rw-r--r--src/com/android/camera/VideoUI.java2
3 files changed, 26 insertions, 0 deletions
diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java
index d4c33209a..d10c81759 100644
--- a/src/com/android/camera/VideoMenu.java
+++ b/src/com/android/camera/VideoMenu.java
@@ -111,6 +111,7 @@ public class VideoMenu extends MenuController
CameraSettings.KEY_VIDEO_QUALITY,
CameraSettings.KEY_RECORD_LOCATION,
CameraSettings.KEY_CAMERA_SAVEPATH,
+ CameraSettings.KEY_EXPOSURE,
CameraSettings.KEY_WHITE_BALANCE,
CameraSettings.KEY_VIDEO_HIGH_FRAME_RATE
};
@@ -119,6 +120,7 @@ public class VideoMenu extends MenuController
CameraSettings.KEY_VIDEO_QUALITY,
CameraSettings.KEY_RECORD_LOCATION,
CameraSettings.KEY_CAMERA_SAVEPATH,
+ CameraSettings.KEY_EXPOSURE,
CameraSettings.KEY_WHITE_BALANCE,
CameraSettings.KEY_VIDEO_HIGH_FRAME_RATE,
CameraSettings.KEY_SEE_MORE,
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index e50954935..61e00921d 100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -434,6 +434,8 @@ public class VideoModule implements CameraModule,
mPreferences.setLocalId(mActivity, mCameraId);
CameraSettings.upgradeLocalPreferences(mPreferences.getLocal());
+ // we need to reset exposure for the preview
+ resetExposureCompensation();
mOrientationManager = new OrientationManager(mActivity);
@@ -927,6 +929,16 @@ public class VideoModule implements CameraModule,
". mDesiredPreviewHeight=" + mDesiredPreviewHeight);
}
+ private void resetExposureCompensation() {
+ String value = mPreferences.getString(CameraSettings.KEY_EXPOSURE,
+ CameraSettings.EXPOSURE_DEFAULT_VALUE);
+ if (!CameraSettings.EXPOSURE_DEFAULT_VALUE.equals(value)) {
+ Editor editor = mPreferences.edit();
+ editor.putString(CameraSettings.KEY_EXPOSURE, "0");
+ editor.apply();
+ }
+ }
+
void setPreviewFrameLayoutCameraOrientation(){
CameraInfo info = CameraHolder.instance().getCameraInfo()[mCameraId];
@@ -971,6 +983,7 @@ public class VideoModule implements CameraModule,
public void onResumeAfterSuper() {
mUI.enableShutter(false);
mZoomValue = 0;
+ resetExposureCompensation();
showVideoSnapshotUI(false);
@@ -2324,6 +2337,15 @@ public class VideoModule implements CameraModule,
if (CameraUtil.isSupported(mParameters, "video-size")) {
mParameters.set("video-size", recordSize);
}
+ // Set exposure compensation
+ int value = CameraSettings.readExposure(mPreferences);
+ int max = mParameters.getMaxExposureCompensation();
+ int min = mParameters.getMinExposureCompensation();
+ if (value >= min && value <= max) {
+ mParameters.setExposureCompensation(value);
+ } else {
+ Log.w(TAG, "invalid exposure range: " + value);
+ }
// Set white balance parameter.
String whiteBalance = mPreferences.getString(
CameraSettings.KEY_WHITE_BALANCE,
diff --git a/src/com/android/camera/VideoUI.java b/src/com/android/camera/VideoUI.java
index 2db71335c..321f6d506 100644
--- a/src/com/android/camera/VideoUI.java
+++ b/src/com/android/camera/VideoUI.java
@@ -617,6 +617,8 @@ public class VideoUI implements PieRenderer.PieListener,
}
public void updateOnScreenIndicators(Parameters param, ComboPreferences prefs) {
+ mOnScreenIndicators.updateExposureOnScreenIndicator(param,
+ CameraSettings.readExposure(prefs));
mOnScreenIndicators.updateFlashOnScreenIndicator(param.getFlashMode());
boolean location = RecordLocationPreference.get(
prefs, mActivity.getContentResolver());