summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAngus Kong <shkong@google.com>2013-04-03 16:56:18 -0700
committerAngus Kong <shkong@google.com>2013-04-09 13:57:37 -0700
commit104e0012f33dfac317a23511dd8b2e832da5af4d (patch)
treeff64b0841e88090525473f0b80e98272147d800e
parent5101490b4a54a26620856f1154c31a01ed6cd062 (diff)
downloadandroid_packages_apps_Snap-104e0012f33dfac317a23511dd8b2e832da5af4d.tar.gz
android_packages_apps_Snap-104e0012f33dfac317a23511dd8b2e832da5af4d.tar.bz2
android_packages_apps_Snap-104e0012f33dfac317a23511dd8b2e832da5af4d.zip
Refresh parameters during recording.
bug:8504803 Change-Id: I1a1838a8415ed4eccad8c76c37cd61d667d92d66
-rw-r--r--src/com/android/camera/CameraManager.java9
-rw-r--r--src/com/android/camera/NewVideoModule.java3
-rw-r--r--src/com/android/camera/VideoModule.java3
3 files changed, 15 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraManager.java b/src/com/android/camera/CameraManager.java
index b354654b6..af4b13f29 100644
--- a/src/com/android/camera/CameraManager.java
+++ b/src/com/android/camera/CameraManager.java
@@ -72,6 +72,7 @@ public class CameraManager {
private static final int SET_PREVIEW_DISPLAY_ASYNC = 22;
private static final int SET_PREVIEW_CALLBACK = 23;
private static final int ENABLE_SHUTTER_SOUND = 24;
+ private static final int REFRESH_PARAMETERS = 25;
private Handler mCameraHandler;
private android.hardware.Camera mCamera;
@@ -247,6 +248,10 @@ public class CameraManager {
enableShutterSound((msg.arg1 == 1) ? true : false);
return;
+ case REFRESH_PARAMETERS:
+ mParametersIsDirty = true;
+ return;
+
default:
throw new RuntimeException("Invalid CameraProxy message=" + msg.what);
}
@@ -446,6 +451,10 @@ public class CameraManager {
return mParameters;
}
+ public void refreshParameters() {
+ mCameraHandler.sendEmptyMessage(REFRESH_PARAMETERS);
+ }
+
public void enableShutterSound(boolean enable) {
mCameraHandler.obtainMessage(
ENABLE_SHUTTER_SOUND, (enable ? 1 : 0), 0).sendToTarget();
diff --git a/src/com/android/camera/NewVideoModule.java b/src/com/android/camera/NewVideoModule.java
index 3fc748593..f8c36c526 100644
--- a/src/com/android/camera/NewVideoModule.java
+++ b/src/com/android/camera/NewVideoModule.java
@@ -1507,6 +1507,9 @@ public class NewVideoModule implements NewCameraModule,
AccessibilityUtils.makeAnnouncement(mUI.getShutterButton(),
mActivity.getString(R.string.video_recording_started));
+ // The parameters might have been altered by MediaRecorder already.
+ // We need to force mCameraDevice to refresh before getting it.
+ mCameraDevice.refreshParameters();
// The parameters may have been changed by MediaRecorder upon starting
// recording. We need to alter the parameters if we support camcorder
// zoom. To reduce latency when setting the parameters during zoom, we
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index 09a406ce5..2b30ba48f 100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -1532,6 +1532,9 @@ public class VideoModule implements CameraModule,
AccessibilityUtils.makeAnnouncement(mActivity.getShutterButton(),
mActivity.getString(R.string.video_recording_started));
+ // The parameters might have been altered by MediaRecorder already.
+ // We need to force mCameraDevice to refresh before getting it.
+ mActivity.mCameraDevice.refreshParameters();
// The parameters may have been changed by MediaRecorder upon starting
// recording. We need to alter the parameters if we support camcorder
// zoom. To reduce latency when setting the parameters during zoom, we