OSDN Git Service

Camera: Update autofocus- and triggering-related metadata fields
authorEino-Ville Talvala <etalvala@google.com>
Fri, 3 Aug 2012 20:56:01 +0000 (13:56 -0700)
committerEino-Ville Talvala <etalvala@google.com>
Fri, 3 Aug 2012 20:56:01 +0000 (13:56 -0700)
- Add trigger IDs for precapture and autofocus to dynamic control
  metadata
- Add enums for AE, AWB, AF algorithm state

Bug: 6243944
Change-Id: I04ce7709a4f1bdbfa39540059dbaf11fadc68f9c

camera/include/system/camera_metadata_tags.h
camera/src/camera_metadata_tag_info.c

index 4aa9776..c048c20 100644 (file)
@@ -280,12 +280,15 @@ enum {
     ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
     ANDROID_CONTROL_AE_ANTIBANDING_MODE,
     ANDROID_CONTROL_AE_STATE,
+    ANDROID_CONTROL_AE_PRECAPTURE_ID,
     ANDROID_CONTROL_AWB_MODE,
     ANDROID_CONTROL_AWB_REGIONS,
     ANDROID_CONTROL_AWB_STATE,
     ANDROID_CONTROL_AF_MODE,
     ANDROID_CONTROL_AF_REGIONS,
     ANDROID_CONTROL_AF_STATE,
+    ANDROID_CONTROL_AF_TRIGGER_ID,
+
     ANDROID_CONTROL_END,
 
     ANDROID_CONTROL_AVAILABLE_SCENE_MODES = ANDROID_CONTROL_INFO_START,
@@ -452,6 +455,16 @@ enum {
     ANDROID_CONTROL_AE_ANTIBANDING_AUTO
 };
 
+// ANDROID_CONTROL_AE_STATE
+enum {
+    ANDROID_CONTROL_AE_STATE_INACTIVE = 0,
+    ANDROID_CONTROL_AE_STATE_SEARCHING,
+    ANDROID_CONTROL_AE_STATE_CONVERGED,
+    ANDROID_CONTROL_AE_STATE_LOCKED,
+    ANDROID_CONTROL_AE_STATE_FLASH_REQUIRED,
+    ANDROID_CONTROL_AE_STATE_PRECAPTURE
+};
+
 // ANDROID_CONTROL_AWB_MODE
 enum {
     ANDROID_CONTROL_AWB_OFF = 0,
@@ -466,6 +479,14 @@ enum {
     ANDROID_CONTROL_AWB_SHADE
 };
 
+// ANDROID_CONTROL_AWB_STATE
+enum {
+    ANDROID_CONTROL_AWB_STATE_INACTIVE = 0,
+    ANDROID_CONTROL_AWB_STATE_SEARCHING,
+    ANDROID_CONTROL_AWB_STATE_CONVERGED,
+    ANDROID_CONTROL_AWB_STATE_LOCKED,
+};
+
 // ANDROID_CONTROL_AF_MODE
 enum {
     ANDROID_CONTROL_AF_OFF = 0,
@@ -476,6 +497,16 @@ enum {
     ANDROID_CONTROL_AF_EDOF
 };
 
+// ANDROID_CONTROL_AF_STATE
+enum {
+    ANDROID_CONTROL_AF_STATE_INACTIVE = 0,
+    ANDROID_CONTROL_AF_STATE_PASSIVE_SCAN,
+    ANDROID_CONTROL_AF_STATE_PASSIVE_FOCUSED,
+    ANDROID_CONTROL_AF_STATE_ACTIVE_SCAN,
+    ANDROID_CONTROL_AF_STATE_FOCUSED_LOCKED,
+    ANDROID_CONTROL_AF_STATE_NOT_FOCUSED_LOCKED
+};
+
 // ANDROID_CONTROL_VIDEO_STABILIZATION
 enum {
     ANDROID_CONTROL_VIDEO_STABILIZATION_OFF = 0,
index fff72e3..37eec2a 100644 (file)
@@ -464,6 +464,8 @@ tag_info_t android_control[ANDROID_CONTROL_END -
     { "aeAntibandingMode",           TYPE_BYTE },
     TIDX(CONTROL, AE_STATE) =
     { "aeState",                     TYPE_BYTE },
+    TIDX(CONTROL, AE_PRECAPTURE_ID) =
+    { "aePrecaptureId",              TYPE_INT32},
     TIDX(CONTROL, AWB_MODE) =
     { "awbMode",                     TYPE_BYTE },
     TIDX(CONTROL, AWB_REGIONS) =
@@ -475,7 +477,9 @@ tag_info_t android_control[ANDROID_CONTROL_END -
     TIDX(CONTROL, AF_REGIONS) =
     { "afRegions",                   TYPE_INT32 },
     TIDX(CONTROL, AF_STATE) =
-    { "afState",                     TYPE_BYTE }
+    { "afState",                     TYPE_BYTE },
+    TIDX(CONTROL, AF_TRIGGER_ID) =
+    { "afTriggerId",                 TYPE_INT32 }
 };
 
 tag_info_t android_control_info[ANDROID_CONTROL_INFO_END -