summaryrefslogtreecommitdiff
path: root/libs/camera/CameraParameters.cpp
diff options
context:
space:
mode:
author James Dong <jdong@google.com> 2010-09-30 10:50:51 -0700
committer James Dong <jdong@google.com> 2010-10-03 21:24:49 -0700
commit4fd446f7b7e55dec61f15bcba8f9984af49b9c31 (patch)
tree2d6ea2ee430a92a146d55c63960726cbf9618f88 /libs/camera/CameraParameters.cpp
parent2b282d312dfc359258934cb60e2c6bc833bb19a7 (diff)
Video size retrieval/configuration support in camera hal
This is the first part of the camera hal change required for 0-memcpy of input video frames for video recording. o removed check in setVideoSize()/getVideoSize() for impl consistency Change-Id: I01274a62b9f9eaf32154d98f8d0bfedacf645698
Diffstat (limited to 'libs/camera/CameraParameters.cpp')
-rw-r--r--libs/camera/CameraParameters.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/libs/camera/CameraParameters.cpp b/libs/camera/CameraParameters.cpp
index af58f776b21a..45b1b9a7db27 100644
--- a/libs/camera/CameraParameters.cpp
+++ b/libs/camera/CameraParameters.cpp
@@ -73,6 +73,8 @@ const char CameraParameters::KEY_ZOOM_SUPPORTED[] = "zoom-supported";
const char CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED[] = "smooth-zoom-supported";
const char CameraParameters::KEY_FOCUS_DISTANCES[] = "focus-distances";
const char CameraParameters::KEY_VIDEO_FRAME_FORMAT[] = "video-frame-format";
+const char CameraParameters::KEY_VIDEO_SIZE[] = "video-size";
+const char CameraParameters::KEY_SUPPORTED_VIDEO_SIZES[] = "video-size-values";
const char CameraParameters::TRUE[] = "true";
const char CameraParameters::FOCUS_DISTANCE_INFINITY[] = "Infinity";
@@ -337,6 +339,27 @@ void CameraParameters::getSupportedPreviewSizes(Vector<Size> &sizes) const
parseSizesList(previewSizesStr, sizes);
}
+void CameraParameters::setVideoSize(int width, int height)
+{
+ char str[32];
+ sprintf(str, "%dx%d", width, height);
+ set(KEY_VIDEO_SIZE, str);
+}
+
+void CameraParameters::getVideoSize(int *width, int *height) const
+{
+ *width = *height = -1;
+ const char *p = get(KEY_VIDEO_SIZE);
+ if (p == 0) return;
+ parse_pair(p, width, height, 'x');
+}
+
+void CameraParameters::getSupportedVideoSizes(Vector<Size> &sizes) const
+{
+ const char *videoSizesStr = get(KEY_SUPPORTED_VIDEO_SIZES);
+ parseSizesList(videoSizesStr, sizes);
+}
+
void CameraParameters::setPreviewFrameRate(int fps)
{
set(KEY_PREVIEW_FRAME_RATE, fps);