summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2012-05-14 14:56:04 -0700
committerEino-Ville Talvala <etalvala@google.com>2012-05-15 15:00:03 -0700
commit9835a5d2698e657691ba17e1e2bb865c2022fbde (patch)
treeca202cc7809af3580297d16a6e478835a657f64e
parentf5fb8a5516876c5a48cc44b4f1c99504e0b9f245 (diff)
downloadandroid_system_media-9835a5d2698e657691ba17e1e2bb865c2022fbde.tar.gz
android_system_media-9835a5d2698e657691ba17e1e2bb865c2022fbde.tar.bz2
android_system_media-9835a5d2698e657691ba17e1e2bb865c2022fbde.zip
Camera: Minor revision to metadata tags, many more enum definitions.
- Remove some tags, adding a few others - Add enums for all current tags that need them for their values. Bug: 6243944 Change-Id: I69085eaad68ef39f7047e93570b4591165cca308
-rw-r--r--camera/include/system/camera_metadata_tags.h166
-rw-r--r--camera/src/camera_metadata_tag_info.c26
2 files changed, 173 insertions, 19 deletions
diff --git a/camera/include/system/camera_metadata_tags.h b/camera/include/system/camera_metadata_tags.h
index bfb4fe32..e9edca9f 100644
--- a/camera/include/system/camera_metadata_tags.h
+++ b/camera/include/system/camera_metadata_tags.h
@@ -20,6 +20,8 @@
* Include camera_metadata.h instead.
*/
+/** TODO: Nearly every enum in this file needs a description */
+
/**
* Top level hierarchy definitions for camera metadata. *_INFO sections are for
* the static metadata that can be retrived without opening the camera device.
@@ -219,10 +221,7 @@ enum {
ANDROID_EDGE_INFO_END = ANDROID_EDGE_INFO_START,
- ANDROID_SCALER_SIZE = ANDROID_SCALER_START,
- ANDROID_SCALER_FORMAT,
- ANDROID_SCALER_CROP_REGION,
- ANDROID_SCALER_ROTATION,
+ ANDROID_SCALER_CROP_REGION = ANDROID_SCALER_START,
ANDROID_SCALER_END,
ANDROID_SCALER_AVAILABLE_FORMATS = ANDROID_SCALER_INFO_START,
@@ -263,19 +262,23 @@ enum {
ANDROID_STATS_MAX_SHARPNESS_MAP_VALUE,
ANDROID_STATS_INFO_END,
- ANDROID_CONTROL_MODE = ANDROID_CONTROL_START,
+ ANDROID_CONTROL_CAPTURE_INTENT = ANDROID_CONTROL_START,
+ ANDROID_CONTROL_MODE,
+ ANDROID_CONTROL_EFFECT_MODE,
+ ANDROID_CONTROL_SCENE_MODE,
+ ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AE_EXP_COMPENSATION,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
+ ANDROID_CONTROL_AE_STATE,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_AWB_REGIONS,
+ ANDROID_CONTROL_AWB_STATE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_REGIONS,
- ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AF_STATE,
- ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_CONTROL_END,
ANDROID_CONTROL_AVAILABLE_MODES = ANDROID_CONTROL_INFO_START,
@@ -300,6 +303,12 @@ enum {
ANDROID_REQUEST_METADATA_FULL
};
+// ANDROID_LENS_OPTICAL_STABILIZATION_MODE
+enum {
+ ANDROID_LENS_OPTICAL_STABILIZATION_OFF = 0,
+ ANDROID_LENS_OPTICAL_STABILIZATION_ON
+};
+
// ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
enum {
ANDROID_SENSOR_RGGB = 0,
@@ -309,5 +318,148 @@ enum {
ANDROID_SENSOR_RGB
};
+// ANDROID_FLASH_MODE
+enum {
+ ANDROID_FLASH_OFF = 0,
+ ANDROID_FLASH_SINGLE,
+ ANDROID_FLASH_AUTO_SINGLE,
+ ANDROID_FLASH_TORCH
+};
+
+// General processing block modes
+enum {
+ ANDROID_PROCESSING_OFF = 0,
+ ANDROID_PROCESSING_FAST,
+ ANDROID_PROCESSING_HIGH_QUALITY
+};
+
+// ANDROID_DEMOSAIC_MODE
+enum {
+ ANDROID_DEMOSAIC_FAST = 1,
+ ANDROID_DEMOSAIC_HIGH_QUALITY
+};
+
+// ANDROID_COLOR_MODE
+enum {
+ ANDROID_COLOR_FAST = 1,
+ ANDROID_COLOR_HIGH_QUALITY,
+ ANDROID_COLOR_TRANSFORM_MATRIX
+};
+
+// ANDROID_TONEMAP_MODE
+enum {
+ ANDROID_TONEMAP_FAST = 1,
+ ANDROID_TONEMAP_HIGH_QUALITY,
+ ANDROID_TONEMAP_CONTRAST_CURVE
+};
+
// ANDROID_SCALER_AVAILABLE_FORMATS uses HAL_PIXEL_FORMAT_* from
// system/graphics.h
+
+// ANDROID_STATS_FACE_DETECTION_MODE
+enum {
+ ANDROID_STATS_FACE_DETECTION_OFF = 0,
+ ANDROID_STATS_FACE_DETECTION_SIMPLE,
+ ANDROID_STATS_FACE_DETECTION_FULL
+};
+
+// ANDROID_STATS_HISTOGRAM/SHARPNESS_MAP_MODE
+enum {
+ ANDROID_STATS_OFF = 0,
+ ANDROID_STATS_ON
+};
+
+// ANDROID_CONTROL_CAPTURE_INTENT
+enum {
+ ANDROID_CONTROL_INTENT_CUSTOM = 0,
+ ANDROID_CONTROL_INTENT_PREVIEW,
+ ANDROID_CONTROL_INTENT_STILL_CAPTURE,
+ ANDROID_CONTROL_INTENT_VIDEO_RECORD,
+ ANDROID_CONTROL_INTENT_VIDEO_SNAPSHOT,
+ ANDROID_CONTROL_INTENT_ZERO_SHUTTER_LAG
+};
+
+// ANDROID_CONTROL_MODE
+enum {
+ ANDROID_CONTROL_OFF = 0,
+ ANDROID_CONTROL_AUTO,
+ ANDROID_CONTROL_USE_SCENE_MODE
+};
+
+// ANDROID_CONTROL_SCENE_MODE
+enum {
+ ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY = 0,
+ ANDROID_CONTROL_SCENE_MODE_ACTION,
+ ANDROID_CONTROL_SCENE_MODE_PORTRAIT,
+ ANDROID_CONTROL_SCENE_MODE_LANDSCAPE,
+ ANDROID_CONTROL_SCENE_MODE_NIGHT,
+ ANDROID_CONTROL_SCENE_MODE_NIGHT_PORTRAIT,
+ ANDROID_CONTROL_SCENE_MODE_THEATRE,
+ ANDROID_CONTROL_SCENE_MODE_BEACH,
+ ANDROID_CONTROL_SCENE_MODE_SNOW,
+ ANDROID_CONTROL_SCENE_MODE_SUNSET,
+ ANDROID_CONTROL_SCENE_MODE_STEADYPHOTO,
+ ANDROID_CONTROL_SCENE_MODE_FIREWORKS,
+ ANDROID_CONTROL_SCENE_MODE_SPORTS,
+ ANDROID_CONTROL_SCENE_MODE_PARTY,
+ ANDROID_CONTROL_SCENE_MODE_CANDLELIGHT,
+ ANDROID_CONTROL_SCENE_MODE_BARCODE
+};
+
+// ANDROID_CONTROL_EFFECT_MODE
+enum {
+ ANDROID_CONTROL_EFFECT_OFF = 0,
+ ANDROID_CONTROL_EFFECT_MONO,
+ ANDROID_CONTROL_EFFECT_NEGATIVE,
+ ANDROID_CONTROL_EFFECT_SOLARIZE,
+ ANDROID_CONTROL_EFFECT_SEPIA,
+ ANDROID_CONTROL_EFFECT_POSTERIZE,
+ ANDROID_CONTROL_EFFECT_WHITEBOARD,
+ ANDROID_CONTROL_EFFECT_BLACKBOARD,
+ ANDROID_CONTROL_EFFECT_AQUA
+};
+
+// ANDROID_CONTROL_AE_MODE
+enum {
+ ANDROID_CONTROL_AE_OFF = 0,
+ ANDROID_CONTROL_AE_ON,
+ ANDROID_CONTROL_AE_ON_AUTO_FLASH,
+ ANDROID_CONTROL_AE_ON_ALWAYS_FLASH,
+ ANDROID_CONTROL_AE_ON_AUTO_FLASH_REDEYE
+};
+
+// ANDROID_CONTROL_AE_ANTIBANDING_MODE
+enum {
+ ANDROID_CONTROL_AE_ANTIBANDING_OFF = 0,
+ ANDROID_CONTROL_AE_ANTIBANDING_50HZ,
+ ANDROID_CONTROL_AE_ANTIBANDING_60HZ,
+ ANDROID_CONTROL_AE_ANTIBANDING_AUTO
+};
+
+// ANDROID_CONTROL_AWB_MODE
+enum {
+ ANDROID_CONTROL_AWB_OFF = 0,
+ ANDROID_CONTROL_AWB_AUTO,
+ ANDROID_CONTROL_AWB_INCANDESCENT,
+ ANDROID_CONTROL_AWB_FLUORESCENT,
+ ANDROID_CONTROL_AWB_WARM_FLUORESCENT,
+ ANDROID_CONTROL_AWB_DAYLIGHT,
+ ANDROID_CONTROL_AWB_CLOUDY_DAYLIGHT,
+ ANDROID_CONTROL_AWB_TWILIGHT,
+ ANDROID_CONTROL_AWB_SHADE
+};
+
+// ANDROID_CONTROL_AF_MODE
+enum {
+ ANDROID_CONTROL_AF_OFF = 0,
+ ANDROID_CONTROL_AF_AUTO,
+ ANDROID_CONTROL_AF_MACRO,
+ ANDROID_CONTROL_AF_CONTINUOUS_VIDEO,
+ ANDROID_CONTROL_AF_CONTINUOUS_PICTURE
+};
+
+// ANDROID_CONTROL_VIDEO_STABILIZATION
+enum {
+ ANDROID_CONTROL_VIDEO_STABILIZATION_OFF = 0,
+ ANDROID_CONTROL_VIDEO_STABILIZATION_ON
+};
diff --git a/camera/src/camera_metadata_tag_info.c b/camera/src/camera_metadata_tag_info.c
index 0481eb58..7a49175d 100644
--- a/camera/src/camera_metadata_tag_info.c
+++ b/camera/src/camera_metadata_tag_info.c
@@ -346,14 +346,8 @@ tag_info_t android_edge_info[ANDROID_EDGE_INFO_END -
tag_info_t android_scaler[ANDROID_SCALER_END -
ANDROID_SCALER_START] = {
- TIDX(SCALER, SIZE) =
- { "size", TYPE_INT32 },
- TIDX(SCALER, FORMAT) =
- { "format", TYPE_BYTE },
TIDX(SCALER, CROP_REGION) =
- { "cropRegion", TYPE_INT32 },
- TIDX(SCALER, ROTATION) =
- { "rotation", TYPE_INT32 },
+ { "cropRegion", TYPE_INT32 }
};
tag_info_t android_scaler_info[ANDROID_SCALER_INFO_END -
@@ -435,8 +429,16 @@ tag_info_t android_stats_info[ANDROID_STATS_INFO_END -
tag_info_t android_control[ANDROID_CONTROL_END -
ANDROID_CONTROL_START] = {
+ TIDX(CONTROL, CAPTURE_INTENT) =
+ { "captureIntent", TYPE_BYTE },
TIDX(CONTROL, MODE) =
{ "mode", TYPE_BYTE },
+ TIDX(CONTROL, EFFECT_MODE) =
+ { "effectMode", TYPE_BYTE },
+ TIDX(CONTROL, SCENE_MODE) =
+ { "sceneMode", TYPE_BYTE },
+ TIDX(CONTROL, VIDEO_STABILIZATION_MODE) =
+ { "videoStabilizationMode", TYPE_BYTE },
TIDX(CONTROL, AE_MODE) =
{ "aeMode", TYPE_BYTE },
TIDX(CONTROL, AE_REGIONS) =
@@ -447,20 +449,20 @@ tag_info_t android_control[ANDROID_CONTROL_END -
{ "aeTargetFpsRange", TYPE_INT32 },
TIDX(CONTROL, AE_ANTIBANDING_MODE) =
{ "aeAntibandingMode", TYPE_BYTE },
+ TIDX(CONTROL, AE_STATE) =
+ { "aeState", TYPE_BYTE },
TIDX(CONTROL, AWB_MODE) =
{ "awbMode", TYPE_BYTE },
TIDX(CONTROL, AWB_REGIONS) =
{ "awbRegions", TYPE_INT32 },
+ TIDX(CONTROL, AWB_STATE) =
+ { "awbState", TYPE_BYTE },
TIDX(CONTROL, AF_MODE) =
{ "afMode", TYPE_BYTE },
TIDX(CONTROL, AF_REGIONS) =
{ "afRegions", TYPE_INT32 },
- TIDX(CONTROL, AF_TRIGGER) =
- { "afTrigger", TYPE_BYTE },
TIDX(CONTROL, AF_STATE) =
- { "afState", TYPE_BYTE },
- TIDX(CONTROL, VIDEO_STABILIZATION_MODE) =
- { "videoStabilizationMode", TYPE_BYTE }
+ { "afState", TYPE_BYTE }
};
tag_info_t android_control_info[ANDROID_CONTROL_INFO_END -