summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2011-10-11 12:41:58 -0700
committerEino-Ville Talvala <etalvala@google.com>2011-10-12 10:34:10 -0700
commit7019d2247e644470a0e8eb99b02b8b2d656fd9fb (patch)
treeb84a2becf9f55cf194a111132e4733fed32d246c
parent49c59815369616b0fd5451ccabd377e8fe1dc3fa (diff)
downloadframeworks_av-7019d2247e644470a0e8eb99b02b8b2d656fd9fb.zip
frameworks_av-7019d2247e644470a0e8eb99b02b8b2d656fd9fb.tar.gz
frameworks_av-7019d2247e644470a0e8eb99b02b8b2d656fd9fb.tar.bz2
Add video stabilization control to Camera parameters.
Hardware video stabilization reduces camera shake in preview and in recorded videos. It has no effect on still image capture. Convenience accessor methods hidden for now. Change-Id: Ie18450bff662b2ef98b85d19719beefc180975fc
-rw-r--r--camera/CameraParameters.cpp2
-rw-r--r--include/camera/CameraParameters.h19
2 files changed, 21 insertions, 0 deletions
diff --git a/camera/CameraParameters.cpp b/camera/CameraParameters.cpp
index 0dcab6b..c6087b4 100644
--- a/camera/CameraParameters.cpp
+++ b/camera/CameraParameters.cpp
@@ -88,6 +88,8 @@ const char CameraParameters::KEY_MAX_NUM_DETECTED_FACES_HW[] = "max-num-detected
const char CameraParameters::KEY_MAX_NUM_DETECTED_FACES_SW[] = "max-num-detected-faces-sw";
const char CameraParameters::KEY_RECORDING_HINT[] = "recording-hint";
const char CameraParameters::KEY_VIDEO_SNAPSHOT_SUPPORTED[] = "video-snapshot-supported";
+const char CameraParameters::KEY_VIDEO_STABILIZATION[] = "video-stabilization";
+const char CameraParameters::KEY_VIDEO_STABILIZATION_SUPPORTED[] = "video-stabilization-supported";
const char CameraParameters::TRUE[] = "true";
const char CameraParameters::FALSE[] = "false";
diff --git a/include/camera/CameraParameters.h b/include/camera/CameraParameters.h
index a520a6a..cd2c0a3 100644
--- a/include/camera/CameraParameters.h
+++ b/include/camera/CameraParameters.h
@@ -504,6 +504,25 @@ public:
// Example value: "true" or "false". Read only.
static const char KEY_VIDEO_SNAPSHOT_SUPPORTED[];
+ // The state of the video stabilization. If set to true, both the
+ // preview stream and the recorded video stream are stabilized by
+ // the camera. Only valid to set if KEY_VIDEO_STABILIZATION_SUPPORTED is
+ // set to true.
+ //
+ // The value of this key can be changed any time the camera is
+ // open. If preview or recording is active, it is acceptable for
+ // there to be a slight video glitch when video stabilization is
+ // toggled on and off.
+ //
+ // This only stabilizes video streams (between-frames stabilization), and
+ // has no effect on still image capture.
+ static const char KEY_VIDEO_STABILIZATION[];
+
+ // Returns true if video stabilization is supported. That is, applications
+ // can set KEY_VIDEO_STABILIZATION to true and have a stabilized preview
+ // stream and record stabilized videos.
+ static const char KEY_VIDEO_STABILIZATION_SUPPORTED[];
+
// Value for KEY_ZOOM_SUPPORTED or KEY_SMOOTH_ZOOM_SUPPORTED.
static const char TRUE[];
static const char FALSE[];