• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /*
2   * Copyright (C) 2012 The Android Open Source Project
3   *
4   * Licensed under the Apache License, Version 2.0 (the "License");
5   * you may not use this file except in compliance with the License.
6   * You may obtain a copy of the License at
7   *
8   *      http://www.apache.org/licenses/LICENSE-2.0
9   *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  /**
18   * !! Do not include this file directly !!
19   *
20   * Include camera_metadata.h instead.
21   */
22  
23  /**
24   * ! Do not edit this file directly !
25   *
26   * Generated automatically from camera_metadata_tags.mako
27   */
28  
29  /** TODO: Nearly every enum in this file needs a description */
30  
31  /**
32   * Top level hierarchy definitions for camera metadata. *_INFO sections are for
33   * the static metadata that can be retrived without opening the camera device.
34   * New sections must be added right before ANDROID_SECTION_COUNT to maintain
35   * existing enumerations.
36   */
37  typedef enum camera_metadata_section {
38      ANDROID_COLOR_CORRECTION,
39      ANDROID_CONTROL,
40      ANDROID_DEMOSAIC,
41      ANDROID_EDGE,
42      ANDROID_FLASH,
43      ANDROID_FLASH_INFO,
44      ANDROID_HOT_PIXEL,
45      ANDROID_JPEG,
46      ANDROID_LENS,
47      ANDROID_LENS_INFO,
48      ANDROID_NOISE_REDUCTION,
49      ANDROID_QUIRKS,
50      ANDROID_REQUEST,
51      ANDROID_SCALER,
52      ANDROID_SENSOR,
53      ANDROID_SENSOR_INFO,
54      ANDROID_SHADING,
55      ANDROID_STATISTICS,
56      ANDROID_STATISTICS_INFO,
57      ANDROID_TONEMAP,
58      ANDROID_LED,
59      ANDROID_INFO,
60      ANDROID_BLACK_LEVEL,
61      ANDROID_SYNC,
62      ANDROID_REPROCESS,
63      ANDROID_DEPTH,
64      ANDROID_SECTION_COUNT,
65  
66      VENDOR_SECTION = 0x8000
67  } camera_metadata_section_t;
68  
69  /**
70   * Hierarchy positions in enum space. All vendor extension tags must be
71   * defined with tag >= VENDOR_SECTION_START
72   */
73  typedef enum camera_metadata_section_start {
74      ANDROID_COLOR_CORRECTION_START = ANDROID_COLOR_CORRECTION  << 16,
75      ANDROID_CONTROL_START          = ANDROID_CONTROL           << 16,
76      ANDROID_DEMOSAIC_START         = ANDROID_DEMOSAIC          << 16,
77      ANDROID_EDGE_START             = ANDROID_EDGE              << 16,
78      ANDROID_FLASH_START            = ANDROID_FLASH             << 16,
79      ANDROID_FLASH_INFO_START       = ANDROID_FLASH_INFO        << 16,
80      ANDROID_HOT_PIXEL_START        = ANDROID_HOT_PIXEL         << 16,
81      ANDROID_JPEG_START             = ANDROID_JPEG              << 16,
82      ANDROID_LENS_START             = ANDROID_LENS              << 16,
83      ANDROID_LENS_INFO_START        = ANDROID_LENS_INFO         << 16,
84      ANDROID_NOISE_REDUCTION_START  = ANDROID_NOISE_REDUCTION   << 16,
85      ANDROID_QUIRKS_START           = ANDROID_QUIRKS            << 16,
86      ANDROID_REQUEST_START          = ANDROID_REQUEST           << 16,
87      ANDROID_SCALER_START           = ANDROID_SCALER            << 16,
88      ANDROID_SENSOR_START           = ANDROID_SENSOR            << 16,
89      ANDROID_SENSOR_INFO_START      = ANDROID_SENSOR_INFO       << 16,
90      ANDROID_SHADING_START          = ANDROID_SHADING           << 16,
91      ANDROID_STATISTICS_START       = ANDROID_STATISTICS        << 16,
92      ANDROID_STATISTICS_INFO_START  = ANDROID_STATISTICS_INFO   << 16,
93      ANDROID_TONEMAP_START          = ANDROID_TONEMAP           << 16,
94      ANDROID_LED_START              = ANDROID_LED               << 16,
95      ANDROID_INFO_START             = ANDROID_INFO              << 16,
96      ANDROID_BLACK_LEVEL_START      = ANDROID_BLACK_LEVEL       << 16,
97      ANDROID_SYNC_START             = ANDROID_SYNC              << 16,
98      ANDROID_REPROCESS_START        = ANDROID_REPROCESS         << 16,
99      ANDROID_DEPTH_START            = ANDROID_DEPTH             << 16,
100      VENDOR_SECTION_START           = VENDOR_SECTION            << 16
101  } camera_metadata_section_start_t;
102  
103  /**
104   * Main enum for defining camera metadata tags.  New entries must always go
105   * before the section _END tag to preserve existing enumeration values.  In
106   * addition, the name and type of the tag needs to be added to
107   * system/media/camera/src/camera_metadata_tag_info.c
108   */
109  typedef enum camera_metadata_tag {
110      ANDROID_COLOR_CORRECTION_MODE =                   // enum         | public
111              ANDROID_COLOR_CORRECTION_START,
112      ANDROID_COLOR_CORRECTION_TRANSFORM,               // rational[]   | public
113      ANDROID_COLOR_CORRECTION_GAINS,                   // float[]      | public
114      ANDROID_COLOR_CORRECTION_ABERRATION_MODE,         // enum         | public
115      ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
116                                                        // byte[]       | public
117      ANDROID_COLOR_CORRECTION_END,
118  
119      ANDROID_CONTROL_AE_ANTIBANDING_MODE =             // enum         | public
120              ANDROID_CONTROL_START,
121      ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,         // int32        | public
122      ANDROID_CONTROL_AE_LOCK,                          // enum         | public
123      ANDROID_CONTROL_AE_MODE,                          // enum         | public
124      ANDROID_CONTROL_AE_REGIONS,                       // int32[]      | public
125      ANDROID_CONTROL_AE_TARGET_FPS_RANGE,              // int32[]      | public
126      ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,            // enum         | public
127      ANDROID_CONTROL_AF_MODE,                          // enum         | public
128      ANDROID_CONTROL_AF_REGIONS,                       // int32[]      | public
129      ANDROID_CONTROL_AF_TRIGGER,                       // enum         | public
130      ANDROID_CONTROL_AWB_LOCK,                         // enum         | public
131      ANDROID_CONTROL_AWB_MODE,                         // enum         | public
132      ANDROID_CONTROL_AWB_REGIONS,                      // int32[]      | public
133      ANDROID_CONTROL_CAPTURE_INTENT,                   // enum         | public
134      ANDROID_CONTROL_EFFECT_MODE,                      // enum         | public
135      ANDROID_CONTROL_MODE,                             // enum         | public
136      ANDROID_CONTROL_SCENE_MODE,                       // enum         | public
137      ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,         // enum         | public
138      ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,   // byte[]       | public
139      ANDROID_CONTROL_AE_AVAILABLE_MODES,               // byte[]       | public
140      ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,   // int32[]      | public
141      ANDROID_CONTROL_AE_COMPENSATION_RANGE,            // int32[]      | public
142      ANDROID_CONTROL_AE_COMPENSATION_STEP,             // rational     | public
143      ANDROID_CONTROL_AF_AVAILABLE_MODES,               // byte[]       | public
144      ANDROID_CONTROL_AVAILABLE_EFFECTS,                // byte[]       | public
145      ANDROID_CONTROL_AVAILABLE_SCENE_MODES,            // byte[]       | public
146      ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
147                                                        // byte[]       | public
148      ANDROID_CONTROL_AWB_AVAILABLE_MODES,              // byte[]       | public
149      ANDROID_CONTROL_MAX_REGIONS,                      // int32[]      | ndk_public
150      ANDROID_CONTROL_SCENE_MODE_OVERRIDES,             // byte[]       | system
151      ANDROID_CONTROL_AE_PRECAPTURE_ID,                 // int32        | system
152      ANDROID_CONTROL_AE_STATE,                         // enum         | public
153      ANDROID_CONTROL_AF_STATE,                         // enum         | public
154      ANDROID_CONTROL_AF_TRIGGER_ID,                    // int32        | system
155      ANDROID_CONTROL_AWB_STATE,                        // enum         | public
156      ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS,
157                                                        // int32[]      | hidden
158      ANDROID_CONTROL_AE_LOCK_AVAILABLE,                // enum         | public
159      ANDROID_CONTROL_AWB_LOCK_AVAILABLE,               // enum         | public
160      ANDROID_CONTROL_AVAILABLE_MODES,                  // byte[]       | public
161      ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE, // int32[]      | public
162      ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST,       // int32        | public
163      ANDROID_CONTROL_ENABLE_ZSL,                       // enum         | public
164      ANDROID_CONTROL_END,
165  
166      ANDROID_DEMOSAIC_MODE =                           // enum         | system
167              ANDROID_DEMOSAIC_START,
168      ANDROID_DEMOSAIC_END,
169  
170      ANDROID_EDGE_MODE =                               // enum         | public
171              ANDROID_EDGE_START,
172      ANDROID_EDGE_STRENGTH,                            // byte         | system
173      ANDROID_EDGE_AVAILABLE_EDGE_MODES,                // byte[]       | public
174      ANDROID_EDGE_END,
175  
176      ANDROID_FLASH_FIRING_POWER =                      // byte         | system
177              ANDROID_FLASH_START,
178      ANDROID_FLASH_FIRING_TIME,                        // int64        | system
179      ANDROID_FLASH_MODE,                               // enum         | public
180      ANDROID_FLASH_COLOR_TEMPERATURE,                  // byte         | system
181      ANDROID_FLASH_MAX_ENERGY,                         // byte         | system
182      ANDROID_FLASH_STATE,                              // enum         | public
183      ANDROID_FLASH_END,
184  
185      ANDROID_FLASH_INFO_AVAILABLE =                    // enum         | public
186              ANDROID_FLASH_INFO_START,
187      ANDROID_FLASH_INFO_CHARGE_DURATION,               // int64        | system
188      ANDROID_FLASH_INFO_END,
189  
190      ANDROID_HOT_PIXEL_MODE =                          // enum         | public
191              ANDROID_HOT_PIXEL_START,
192      ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,      // byte[]       | public
193      ANDROID_HOT_PIXEL_END,
194  
195      ANDROID_JPEG_GPS_COORDINATES =                    // double[]     | ndk_public
196              ANDROID_JPEG_START,
197      ANDROID_JPEG_GPS_PROCESSING_METHOD,               // byte         | ndk_public
198      ANDROID_JPEG_GPS_TIMESTAMP,                       // int64        | ndk_public
199      ANDROID_JPEG_ORIENTATION,                         // int32        | public
200      ANDROID_JPEG_QUALITY,                             // byte         | public
201      ANDROID_JPEG_THUMBNAIL_QUALITY,                   // byte         | public
202      ANDROID_JPEG_THUMBNAIL_SIZE,                      // int32[]      | public
203      ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,           // int32[]      | public
204      ANDROID_JPEG_MAX_SIZE,                            // int32        | system
205      ANDROID_JPEG_SIZE,                                // int32        | system
206      ANDROID_JPEG_END,
207  
208      ANDROID_LENS_APERTURE =                           // float        | public
209              ANDROID_LENS_START,
210      ANDROID_LENS_FILTER_DENSITY,                      // float        | public
211      ANDROID_LENS_FOCAL_LENGTH,                        // float        | public
212      ANDROID_LENS_FOCUS_DISTANCE,                      // float        | public
213      ANDROID_LENS_OPTICAL_STABILIZATION_MODE,          // enum         | public
214      ANDROID_LENS_FACING,                              // enum         | public
215      ANDROID_LENS_POSE_ROTATION,                       // float[]      | public
216      ANDROID_LENS_POSE_TRANSLATION,                    // float[]      | public
217      ANDROID_LENS_FOCUS_RANGE,                         // float[]      | public
218      ANDROID_LENS_STATE,                               // enum         | public
219      ANDROID_LENS_INTRINSIC_CALIBRATION,               // float[]      | public
220      ANDROID_LENS_RADIAL_DISTORTION,                   // float[]      | public
221      ANDROID_LENS_END,
222  
223      ANDROID_LENS_INFO_AVAILABLE_APERTURES =           // float[]      | public
224              ANDROID_LENS_INFO_START,
225      ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,     // float[]      | public
226      ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,        // float[]      | public
227      ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,// byte[]       | public
228      ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,            // float        | public
229      ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,         // float        | public
230      ANDROID_LENS_INFO_SHADING_MAP_SIZE,               // int32[]      | ndk_public
231      ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,     // enum         | public
232      ANDROID_LENS_INFO_END,
233  
234      ANDROID_NOISE_REDUCTION_MODE =                    // enum         | public
235              ANDROID_NOISE_REDUCTION_START,
236      ANDROID_NOISE_REDUCTION_STRENGTH,                 // byte         | system
237      ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
238                                                        // byte[]       | public
239      ANDROID_NOISE_REDUCTION_END,
240  
241      ANDROID_QUIRKS_METERING_CROP_REGION =             // byte         | system
242              ANDROID_QUIRKS_START,
243      ANDROID_QUIRKS_TRIGGER_AF_WITH_AUTO,              // byte         | system
244      ANDROID_QUIRKS_USE_ZSL_FORMAT,                    // byte         | system
245      ANDROID_QUIRKS_USE_PARTIAL_RESULT,                // byte         | hidden
246      ANDROID_QUIRKS_PARTIAL_RESULT,                    // enum         | hidden
247      ANDROID_QUIRKS_END,
248  
249      ANDROID_REQUEST_FRAME_COUNT =                     // int32        | hidden
250              ANDROID_REQUEST_START,
251      ANDROID_REQUEST_ID,                               // int32        | hidden
252      ANDROID_REQUEST_INPUT_STREAMS,                    // int32[]      | system
253      ANDROID_REQUEST_METADATA_MODE,                    // enum         | system
254      ANDROID_REQUEST_OUTPUT_STREAMS,                   // int32[]      | system
255      ANDROID_REQUEST_TYPE,                             // enum         | system
256      ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,           // int32[]      | ndk_public
257      ANDROID_REQUEST_MAX_NUM_REPROCESS_STREAMS,        // int32[]      | system
258      ANDROID_REQUEST_MAX_NUM_INPUT_STREAMS,            // int32        | public
259      ANDROID_REQUEST_PIPELINE_DEPTH,                   // byte         | public
260      ANDROID_REQUEST_PIPELINE_MAX_DEPTH,               // byte         | public
261      ANDROID_REQUEST_PARTIAL_RESULT_COUNT,             // int32        | public
262      ANDROID_REQUEST_AVAILABLE_CAPABILITIES,           // enum[]       | public
263      ANDROID_REQUEST_AVAILABLE_REQUEST_KEYS,           // int32[]      | ndk_public
264      ANDROID_REQUEST_AVAILABLE_RESULT_KEYS,            // int32[]      | ndk_public
265      ANDROID_REQUEST_AVAILABLE_CHARACTERISTICS_KEYS,   // int32[]      | ndk_public
266      ANDROID_REQUEST_END,
267  
268      ANDROID_SCALER_CROP_REGION =                      // int32[]      | public
269              ANDROID_SCALER_START,
270      ANDROID_SCALER_AVAILABLE_FORMATS,                 // enum[]       | hidden
271      ANDROID_SCALER_AVAILABLE_JPEG_MIN_DURATIONS,      // int64[]      | hidden
272      ANDROID_SCALER_AVAILABLE_JPEG_SIZES,              // int32[]      | hidden
273      ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,        // float        | public
274      ANDROID_SCALER_AVAILABLE_PROCESSED_MIN_DURATIONS, // int64[]      | hidden
275      ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES,         // int32[]      | hidden
276      ANDROID_SCALER_AVAILABLE_RAW_MIN_DURATIONS,       // int64[]      | system
277      ANDROID_SCALER_AVAILABLE_RAW_SIZES,               // int32[]      | system
278      ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP,// int32        | hidden
279      ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,   // enum[]       | ndk_public
280      ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS,     // int64[]      | ndk_public
281      ANDROID_SCALER_AVAILABLE_STALL_DURATIONS,         // int64[]      | ndk_public
282      ANDROID_SCALER_CROPPING_TYPE,                     // enum         | public
283      ANDROID_SCALER_END,
284  
285      ANDROID_SENSOR_EXPOSURE_TIME =                    // int64        | public
286              ANDROID_SENSOR_START,
287      ANDROID_SENSOR_FRAME_DURATION,                    // int64        | public
288      ANDROID_SENSOR_SENSITIVITY,                       // int32        | public
289      ANDROID_SENSOR_REFERENCE_ILLUMINANT1,             // enum         | public
290      ANDROID_SENSOR_REFERENCE_ILLUMINANT2,             // byte         | public
291      ANDROID_SENSOR_CALIBRATION_TRANSFORM1,            // rational[]   | public
292      ANDROID_SENSOR_CALIBRATION_TRANSFORM2,            // rational[]   | public
293      ANDROID_SENSOR_COLOR_TRANSFORM1,                  // rational[]   | public
294      ANDROID_SENSOR_COLOR_TRANSFORM2,                  // rational[]   | public
295      ANDROID_SENSOR_FORWARD_MATRIX1,                   // rational[]   | public
296      ANDROID_SENSOR_FORWARD_MATRIX2,                   // rational[]   | public
297      ANDROID_SENSOR_BASE_GAIN_FACTOR,                  // rational     | system
298      ANDROID_SENSOR_BLACK_LEVEL_PATTERN,               // int32[]      | public
299      ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,            // int32        | public
300      ANDROID_SENSOR_ORIENTATION,                       // int32        | public
301      ANDROID_SENSOR_PROFILE_HUE_SAT_MAP_DIMENSIONS,    // int32[]      | system
302      ANDROID_SENSOR_TIMESTAMP,                         // int64        | public
303      ANDROID_SENSOR_TEMPERATURE,                       // float        | system
304      ANDROID_SENSOR_NEUTRAL_COLOR_POINT,               // rational[]   | public
305      ANDROID_SENSOR_NOISE_PROFILE,                     // double[]     | public
306      ANDROID_SENSOR_PROFILE_HUE_SAT_MAP,               // float[]      | system
307      ANDROID_SENSOR_PROFILE_TONE_CURVE,                // float[]      | system
308      ANDROID_SENSOR_GREEN_SPLIT,                       // float        | public
309      ANDROID_SENSOR_TEST_PATTERN_DATA,                 // int32[]      | public
310      ANDROID_SENSOR_TEST_PATTERN_MODE,                 // enum         | public
311      ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,      // int32[]      | public
312      ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,              // int64        | public
313      ANDROID_SENSOR_OPTICAL_BLACK_REGIONS,             // int32[]      | public
314      ANDROID_SENSOR_DYNAMIC_BLACK_LEVEL,               // float[]      | public
315      ANDROID_SENSOR_DYNAMIC_WHITE_LEVEL,               // int32        | public
316      ANDROID_SENSOR_OPAQUE_RAW_SIZE,                   // int32[]      | system
317      ANDROID_SENSOR_END,
318  
319      ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE =           // int32[]      | public
320              ANDROID_SENSOR_INFO_START,
321      ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,            // int32[]      | public
322      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,     // enum         | public
323      ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,          // int64[]      | public
324      ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,           // int64        | public
325      ANDROID_SENSOR_INFO_PHYSICAL_SIZE,                // float[]      | public
326      ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,             // int32[]      | public
327      ANDROID_SENSOR_INFO_WHITE_LEVEL,                  // int32        | public
328      ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,             // enum         | public
329      ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED,         // enum         | public
330      ANDROID_SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE,
331                                                        // int32[]      | public
332      ANDROID_SENSOR_INFO_END,
333  
334      ANDROID_SHADING_MODE =                            // enum         | public
335              ANDROID_SHADING_START,
336      ANDROID_SHADING_STRENGTH,                         // byte         | system
337      ANDROID_SHADING_AVAILABLE_MODES,                  // byte[]       | public
338      ANDROID_SHADING_END,
339  
340      ANDROID_STATISTICS_FACE_DETECT_MODE =             // enum         | public
341              ANDROID_STATISTICS_START,
342      ANDROID_STATISTICS_HISTOGRAM_MODE,                // enum         | system
343      ANDROID_STATISTICS_SHARPNESS_MAP_MODE,            // enum         | system
344      ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,            // enum         | public
345      ANDROID_STATISTICS_FACE_IDS,                      // int32[]      | ndk_public
346      ANDROID_STATISTICS_FACE_LANDMARKS,                // int32[]      | ndk_public
347      ANDROID_STATISTICS_FACE_RECTANGLES,               // int32[]      | ndk_public
348      ANDROID_STATISTICS_FACE_SCORES,                   // byte[]       | ndk_public
349      ANDROID_STATISTICS_HISTOGRAM,                     // int32[]      | system
350      ANDROID_STATISTICS_SHARPNESS_MAP,                 // int32[]      | system
351      ANDROID_STATISTICS_LENS_SHADING_CORRECTION_MAP,   // byte         | java_public
352      ANDROID_STATISTICS_LENS_SHADING_MAP,              // float[]      | ndk_public
353      ANDROID_STATISTICS_PREDICTED_COLOR_GAINS,         // float[]      | hidden
354      ANDROID_STATISTICS_PREDICTED_COLOR_TRANSFORM,     // rational[]   | hidden
355      ANDROID_STATISTICS_SCENE_FLICKER,                 // enum         | public
356      ANDROID_STATISTICS_HOT_PIXEL_MAP,                 // int32[]      | public
357      ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,         // enum         | public
358      ANDROID_STATISTICS_END,
359  
360      ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES =
361                                                        // byte[]       | public
362              ANDROID_STATISTICS_INFO_START,
363      ANDROID_STATISTICS_INFO_HISTOGRAM_BUCKET_COUNT,   // int32        | system
364      ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,           // int32        | public
365      ANDROID_STATISTICS_INFO_MAX_HISTOGRAM_COUNT,      // int32        | system
366      ANDROID_STATISTICS_INFO_MAX_SHARPNESS_MAP_VALUE,  // int32        | system
367      ANDROID_STATISTICS_INFO_SHARPNESS_MAP_SIZE,       // int32[]      | system
368      ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
369                                                        // byte[]       | public
370      ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
371                                                        // byte[]       | public
372      ANDROID_STATISTICS_INFO_END,
373  
374      ANDROID_TONEMAP_CURVE_BLUE =                      // float[]      | ndk_public
375              ANDROID_TONEMAP_START,
376      ANDROID_TONEMAP_CURVE_GREEN,                      // float[]      | ndk_public
377      ANDROID_TONEMAP_CURVE_RED,                        // float[]      | ndk_public
378      ANDROID_TONEMAP_MODE,                             // enum         | public
379      ANDROID_TONEMAP_MAX_CURVE_POINTS,                 // int32        | public
380      ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,         // byte[]       | public
381      ANDROID_TONEMAP_GAMMA,                            // float        | public
382      ANDROID_TONEMAP_PRESET_CURVE,                     // enum         | public
383      ANDROID_TONEMAP_END,
384  
385      ANDROID_LED_TRANSMIT =                            // enum         | hidden
386              ANDROID_LED_START,
387      ANDROID_LED_AVAILABLE_LEDS,                       // enum[]       | hidden
388      ANDROID_LED_END,
389  
390      ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL =           // enum         | public
391              ANDROID_INFO_START,
392      ANDROID_INFO_END,
393  
394      ANDROID_BLACK_LEVEL_LOCK =                        // enum         | public
395              ANDROID_BLACK_LEVEL_START,
396      ANDROID_BLACK_LEVEL_END,
397  
398      ANDROID_SYNC_FRAME_NUMBER =                       // enum         | ndk_public
399              ANDROID_SYNC_START,
400      ANDROID_SYNC_MAX_LATENCY,                         // enum         | public
401      ANDROID_SYNC_END,
402  
403      ANDROID_REPROCESS_EFFECTIVE_EXPOSURE_FACTOR =     // float        | java_public
404              ANDROID_REPROCESS_START,
405      ANDROID_REPROCESS_MAX_CAPTURE_STALL,              // int32        | java_public
406      ANDROID_REPROCESS_END,
407  
408      ANDROID_DEPTH_MAX_DEPTH_SAMPLES =                 // int32        | system
409              ANDROID_DEPTH_START,
410      ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS,
411                                                        // enum[]       | ndk_public
412      ANDROID_DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS,// int64[]      | ndk_public
413      ANDROID_DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS,    // int64[]      | ndk_public
414      ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE,                 // enum         | public
415      ANDROID_DEPTH_END,
416  
417  } camera_metadata_tag_t;
418  
419  /**
420   * Enumeration definitions for the various entries that need them
421   */
422  
423  // ANDROID_COLOR_CORRECTION_MODE
424  typedef enum camera_metadata_enum_android_color_correction_mode {
425      ANDROID_COLOR_CORRECTION_MODE_TRANSFORM_MATRIX,
426      ANDROID_COLOR_CORRECTION_MODE_FAST,
427      ANDROID_COLOR_CORRECTION_MODE_HIGH_QUALITY,
428  } camera_metadata_enum_android_color_correction_mode_t;
429  
430  // ANDROID_COLOR_CORRECTION_ABERRATION_MODE
431  typedef enum camera_metadata_enum_android_color_correction_aberration_mode {
432      ANDROID_COLOR_CORRECTION_ABERRATION_MODE_OFF,
433      ANDROID_COLOR_CORRECTION_ABERRATION_MODE_FAST,
434      ANDROID_COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY,
435  } camera_metadata_enum_android_color_correction_aberration_mode_t;
436  
437  
438  // ANDROID_CONTROL_AE_ANTIBANDING_MODE
439  typedef enum camera_metadata_enum_android_control_ae_antibanding_mode {
440      ANDROID_CONTROL_AE_ANTIBANDING_MODE_OFF,
441      ANDROID_CONTROL_AE_ANTIBANDING_MODE_50HZ,
442      ANDROID_CONTROL_AE_ANTIBANDING_MODE_60HZ,
443      ANDROID_CONTROL_AE_ANTIBANDING_MODE_AUTO,
444  } camera_metadata_enum_android_control_ae_antibanding_mode_t;
445  
446  // ANDROID_CONTROL_AE_LOCK
447  typedef enum camera_metadata_enum_android_control_ae_lock {
448      ANDROID_CONTROL_AE_LOCK_OFF,
449      ANDROID_CONTROL_AE_LOCK_ON,
450  } camera_metadata_enum_android_control_ae_lock_t;
451  
452  // ANDROID_CONTROL_AE_MODE
453  typedef enum camera_metadata_enum_android_control_ae_mode {
454      ANDROID_CONTROL_AE_MODE_OFF,
455      ANDROID_CONTROL_AE_MODE_ON,
456      ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH,
457      ANDROID_CONTROL_AE_MODE_ON_ALWAYS_FLASH,
458      ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE,
459  } camera_metadata_enum_android_control_ae_mode_t;
460  
461  // ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER
462  typedef enum camera_metadata_enum_android_control_ae_precapture_trigger {
463      ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_IDLE,
464      ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_START,
465      ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_CANCEL,
466  } camera_metadata_enum_android_control_ae_precapture_trigger_t;
467  
468  // ANDROID_CONTROL_AF_MODE
469  typedef enum camera_metadata_enum_android_control_af_mode {
470      ANDROID_CONTROL_AF_MODE_OFF,
471      ANDROID_CONTROL_AF_MODE_AUTO,
472      ANDROID_CONTROL_AF_MODE_MACRO,
473      ANDROID_CONTROL_AF_MODE_CONTINUOUS_VIDEO,
474      ANDROID_CONTROL_AF_MODE_CONTINUOUS_PICTURE,
475      ANDROID_CONTROL_AF_MODE_EDOF,
476  } camera_metadata_enum_android_control_af_mode_t;
477  
478  // ANDROID_CONTROL_AF_TRIGGER
479  typedef enum camera_metadata_enum_android_control_af_trigger {
480      ANDROID_CONTROL_AF_TRIGGER_IDLE,
481      ANDROID_CONTROL_AF_TRIGGER_START,
482      ANDROID_CONTROL_AF_TRIGGER_CANCEL,
483  } camera_metadata_enum_android_control_af_trigger_t;
484  
485  // ANDROID_CONTROL_AWB_LOCK
486  typedef enum camera_metadata_enum_android_control_awb_lock {
487      ANDROID_CONTROL_AWB_LOCK_OFF,
488      ANDROID_CONTROL_AWB_LOCK_ON,
489  } camera_metadata_enum_android_control_awb_lock_t;
490  
491  // ANDROID_CONTROL_AWB_MODE
492  typedef enum camera_metadata_enum_android_control_awb_mode {
493      ANDROID_CONTROL_AWB_MODE_OFF,
494      ANDROID_CONTROL_AWB_MODE_AUTO,
495      ANDROID_CONTROL_AWB_MODE_INCANDESCENT,
496      ANDROID_CONTROL_AWB_MODE_FLUORESCENT,
497      ANDROID_CONTROL_AWB_MODE_WARM_FLUORESCENT,
498      ANDROID_CONTROL_AWB_MODE_DAYLIGHT,
499      ANDROID_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT,
500      ANDROID_CONTROL_AWB_MODE_TWILIGHT,
501      ANDROID_CONTROL_AWB_MODE_SHADE,
502  } camera_metadata_enum_android_control_awb_mode_t;
503  
504  // ANDROID_CONTROL_CAPTURE_INTENT
505  typedef enum camera_metadata_enum_android_control_capture_intent {
506      ANDROID_CONTROL_CAPTURE_INTENT_CUSTOM,
507      ANDROID_CONTROL_CAPTURE_INTENT_PREVIEW,
508      ANDROID_CONTROL_CAPTURE_INTENT_STILL_CAPTURE,
509      ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_RECORD,
510      ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_SNAPSHOT,
511      ANDROID_CONTROL_CAPTURE_INTENT_ZERO_SHUTTER_LAG,
512      ANDROID_CONTROL_CAPTURE_INTENT_MANUAL,
513  } camera_metadata_enum_android_control_capture_intent_t;
514  
515  // ANDROID_CONTROL_EFFECT_MODE
516  typedef enum camera_metadata_enum_android_control_effect_mode {
517      ANDROID_CONTROL_EFFECT_MODE_OFF,
518      ANDROID_CONTROL_EFFECT_MODE_MONO,
519      ANDROID_CONTROL_EFFECT_MODE_NEGATIVE,
520      ANDROID_CONTROL_EFFECT_MODE_SOLARIZE,
521      ANDROID_CONTROL_EFFECT_MODE_SEPIA,
522      ANDROID_CONTROL_EFFECT_MODE_POSTERIZE,
523      ANDROID_CONTROL_EFFECT_MODE_WHITEBOARD,
524      ANDROID_CONTROL_EFFECT_MODE_BLACKBOARD,
525      ANDROID_CONTROL_EFFECT_MODE_AQUA,
526  } camera_metadata_enum_android_control_effect_mode_t;
527  
528  // ANDROID_CONTROL_MODE
529  typedef enum camera_metadata_enum_android_control_mode {
530      ANDROID_CONTROL_MODE_OFF,
531      ANDROID_CONTROL_MODE_AUTO,
532      ANDROID_CONTROL_MODE_USE_SCENE_MODE,
533      ANDROID_CONTROL_MODE_OFF_KEEP_STATE,
534  } camera_metadata_enum_android_control_mode_t;
535  
536  // ANDROID_CONTROL_SCENE_MODE
537  typedef enum camera_metadata_enum_android_control_scene_mode {
538      ANDROID_CONTROL_SCENE_MODE_DISABLED                         = 0,
539      ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY,
540      ANDROID_CONTROL_SCENE_MODE_ACTION,
541      ANDROID_CONTROL_SCENE_MODE_PORTRAIT,
542      ANDROID_CONTROL_SCENE_MODE_LANDSCAPE,
543      ANDROID_CONTROL_SCENE_MODE_NIGHT,
544      ANDROID_CONTROL_SCENE_MODE_NIGHT_PORTRAIT,
545      ANDROID_CONTROL_SCENE_MODE_THEATRE,
546      ANDROID_CONTROL_SCENE_MODE_BEACH,
547      ANDROID_CONTROL_SCENE_MODE_SNOW,
548      ANDROID_CONTROL_SCENE_MODE_SUNSET,
549      ANDROID_CONTROL_SCENE_MODE_STEADYPHOTO,
550      ANDROID_CONTROL_SCENE_MODE_FIREWORKS,
551      ANDROID_CONTROL_SCENE_MODE_SPORTS,
552      ANDROID_CONTROL_SCENE_MODE_PARTY,
553      ANDROID_CONTROL_SCENE_MODE_CANDLELIGHT,
554      ANDROID_CONTROL_SCENE_MODE_BARCODE,
555      ANDROID_CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO,
556      ANDROID_CONTROL_SCENE_MODE_HDR,
557      ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY_LOW_LIGHT,
558      ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_START              = 100,
559      ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_END                = 127,
560  } camera_metadata_enum_android_control_scene_mode_t;
561  
562  // ANDROID_CONTROL_VIDEO_STABILIZATION_MODE
563  typedef enum camera_metadata_enum_android_control_video_stabilization_mode {
564      ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_OFF,
565      ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_ON,
566  } camera_metadata_enum_android_control_video_stabilization_mode_t;
567  
568  // ANDROID_CONTROL_AE_STATE
569  typedef enum camera_metadata_enum_android_control_ae_state {
570      ANDROID_CONTROL_AE_STATE_INACTIVE,
571      ANDROID_CONTROL_AE_STATE_SEARCHING,
572      ANDROID_CONTROL_AE_STATE_CONVERGED,
573      ANDROID_CONTROL_AE_STATE_LOCKED,
574      ANDROID_CONTROL_AE_STATE_FLASH_REQUIRED,
575      ANDROID_CONTROL_AE_STATE_PRECAPTURE,
576  } camera_metadata_enum_android_control_ae_state_t;
577  
578  // ANDROID_CONTROL_AF_STATE
579  typedef enum camera_metadata_enum_android_control_af_state {
580      ANDROID_CONTROL_AF_STATE_INACTIVE,
581      ANDROID_CONTROL_AF_STATE_PASSIVE_SCAN,
582      ANDROID_CONTROL_AF_STATE_PASSIVE_FOCUSED,
583      ANDROID_CONTROL_AF_STATE_ACTIVE_SCAN,
584      ANDROID_CONTROL_AF_STATE_FOCUSED_LOCKED,
585      ANDROID_CONTROL_AF_STATE_NOT_FOCUSED_LOCKED,
586      ANDROID_CONTROL_AF_STATE_PASSIVE_UNFOCUSED,
587  } camera_metadata_enum_android_control_af_state_t;
588  
589  // ANDROID_CONTROL_AWB_STATE
590  typedef enum camera_metadata_enum_android_control_awb_state {
591      ANDROID_CONTROL_AWB_STATE_INACTIVE,
592      ANDROID_CONTROL_AWB_STATE_SEARCHING,
593      ANDROID_CONTROL_AWB_STATE_CONVERGED,
594      ANDROID_CONTROL_AWB_STATE_LOCKED,
595  } camera_metadata_enum_android_control_awb_state_t;
596  
597  // ANDROID_CONTROL_AE_LOCK_AVAILABLE
598  typedef enum camera_metadata_enum_android_control_ae_lock_available {
599      ANDROID_CONTROL_AE_LOCK_AVAILABLE_FALSE,
600      ANDROID_CONTROL_AE_LOCK_AVAILABLE_TRUE,
601  } camera_metadata_enum_android_control_ae_lock_available_t;
602  
603  // ANDROID_CONTROL_AWB_LOCK_AVAILABLE
604  typedef enum camera_metadata_enum_android_control_awb_lock_available {
605      ANDROID_CONTROL_AWB_LOCK_AVAILABLE_FALSE,
606      ANDROID_CONTROL_AWB_LOCK_AVAILABLE_TRUE,
607  } camera_metadata_enum_android_control_awb_lock_available_t;
608  
609  // ANDROID_CONTROL_ENABLE_ZSL
610  typedef enum camera_metadata_enum_android_control_enable_zsl {
611      ANDROID_CONTROL_ENABLE_ZSL_FALSE,
612      ANDROID_CONTROL_ENABLE_ZSL_TRUE,
613  } camera_metadata_enum_android_control_enable_zsl_t;
614  
615  
616  // ANDROID_DEMOSAIC_MODE
617  typedef enum camera_metadata_enum_android_demosaic_mode {
618      ANDROID_DEMOSAIC_MODE_FAST,
619      ANDROID_DEMOSAIC_MODE_HIGH_QUALITY,
620  } camera_metadata_enum_android_demosaic_mode_t;
621  
622  
623  // ANDROID_EDGE_MODE
624  typedef enum camera_metadata_enum_android_edge_mode {
625      ANDROID_EDGE_MODE_OFF,
626      ANDROID_EDGE_MODE_FAST,
627      ANDROID_EDGE_MODE_HIGH_QUALITY,
628      ANDROID_EDGE_MODE_ZERO_SHUTTER_LAG,
629  } camera_metadata_enum_android_edge_mode_t;
630  
631  
632  // ANDROID_FLASH_MODE
633  typedef enum camera_metadata_enum_android_flash_mode {
634      ANDROID_FLASH_MODE_OFF,
635      ANDROID_FLASH_MODE_SINGLE,
636      ANDROID_FLASH_MODE_TORCH,
637  } camera_metadata_enum_android_flash_mode_t;
638  
639  // ANDROID_FLASH_STATE
640  typedef enum camera_metadata_enum_android_flash_state {
641      ANDROID_FLASH_STATE_UNAVAILABLE,
642      ANDROID_FLASH_STATE_CHARGING,
643      ANDROID_FLASH_STATE_READY,
644      ANDROID_FLASH_STATE_FIRED,
645      ANDROID_FLASH_STATE_PARTIAL,
646  } camera_metadata_enum_android_flash_state_t;
647  
648  
649  // ANDROID_FLASH_INFO_AVAILABLE
650  typedef enum camera_metadata_enum_android_flash_info_available {
651      ANDROID_FLASH_INFO_AVAILABLE_FALSE,
652      ANDROID_FLASH_INFO_AVAILABLE_TRUE,
653  } camera_metadata_enum_android_flash_info_available_t;
654  
655  
656  // ANDROID_HOT_PIXEL_MODE
657  typedef enum camera_metadata_enum_android_hot_pixel_mode {
658      ANDROID_HOT_PIXEL_MODE_OFF,
659      ANDROID_HOT_PIXEL_MODE_FAST,
660      ANDROID_HOT_PIXEL_MODE_HIGH_QUALITY,
661  } camera_metadata_enum_android_hot_pixel_mode_t;
662  
663  
664  
665  // ANDROID_LENS_OPTICAL_STABILIZATION_MODE
666  typedef enum camera_metadata_enum_android_lens_optical_stabilization_mode {
667      ANDROID_LENS_OPTICAL_STABILIZATION_MODE_OFF,
668      ANDROID_LENS_OPTICAL_STABILIZATION_MODE_ON,
669  } camera_metadata_enum_android_lens_optical_stabilization_mode_t;
670  
671  // ANDROID_LENS_FACING
672  typedef enum camera_metadata_enum_android_lens_facing {
673      ANDROID_LENS_FACING_FRONT,
674      ANDROID_LENS_FACING_BACK,
675      ANDROID_LENS_FACING_EXTERNAL,
676  } camera_metadata_enum_android_lens_facing_t;
677  
678  // ANDROID_LENS_STATE
679  typedef enum camera_metadata_enum_android_lens_state {
680      ANDROID_LENS_STATE_STATIONARY,
681      ANDROID_LENS_STATE_MOVING,
682  } camera_metadata_enum_android_lens_state_t;
683  
684  
685  // ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION
686  typedef enum camera_metadata_enum_android_lens_info_focus_distance_calibration {
687      ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_UNCALIBRATED,
688      ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_APPROXIMATE,
689      ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_CALIBRATED,
690  } camera_metadata_enum_android_lens_info_focus_distance_calibration_t;
691  
692  
693  // ANDROID_NOISE_REDUCTION_MODE
694  typedef enum camera_metadata_enum_android_noise_reduction_mode {
695      ANDROID_NOISE_REDUCTION_MODE_OFF,
696      ANDROID_NOISE_REDUCTION_MODE_FAST,
697      ANDROID_NOISE_REDUCTION_MODE_HIGH_QUALITY,
698      ANDROID_NOISE_REDUCTION_MODE_MINIMAL,
699      ANDROID_NOISE_REDUCTION_MODE_ZERO_SHUTTER_LAG,
700  } camera_metadata_enum_android_noise_reduction_mode_t;
701  
702  
703  // ANDROID_QUIRKS_PARTIAL_RESULT
704  typedef enum camera_metadata_enum_android_quirks_partial_result {
705      ANDROID_QUIRKS_PARTIAL_RESULT_FINAL,
706      ANDROID_QUIRKS_PARTIAL_RESULT_PARTIAL,
707  } camera_metadata_enum_android_quirks_partial_result_t;
708  
709  
710  // ANDROID_REQUEST_METADATA_MODE
711  typedef enum camera_metadata_enum_android_request_metadata_mode {
712      ANDROID_REQUEST_METADATA_MODE_NONE,
713      ANDROID_REQUEST_METADATA_MODE_FULL,
714  } camera_metadata_enum_android_request_metadata_mode_t;
715  
716  // ANDROID_REQUEST_TYPE
717  typedef enum camera_metadata_enum_android_request_type {
718      ANDROID_REQUEST_TYPE_CAPTURE,
719      ANDROID_REQUEST_TYPE_REPROCESS,
720  } camera_metadata_enum_android_request_type_t;
721  
722  // ANDROID_REQUEST_AVAILABLE_CAPABILITIES
723  typedef enum camera_metadata_enum_android_request_available_capabilities {
724      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE,
725      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR,
726      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING,
727      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW,
728      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING,
729      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS,
730      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE,
731      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING,
732      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT,
733      ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO,
734  } camera_metadata_enum_android_request_available_capabilities_t;
735  
736  
737  // ANDROID_SCALER_AVAILABLE_FORMATS
738  typedef enum camera_metadata_enum_android_scaler_available_formats {
739      ANDROID_SCALER_AVAILABLE_FORMATS_RAW16                      = 0x20,
740      ANDROID_SCALER_AVAILABLE_FORMATS_RAW_OPAQUE                 = 0x24,
741      ANDROID_SCALER_AVAILABLE_FORMATS_YV12                       = 0x32315659,
742      ANDROID_SCALER_AVAILABLE_FORMATS_YCrCb_420_SP               = 0x11,
743      ANDROID_SCALER_AVAILABLE_FORMATS_IMPLEMENTATION_DEFINED     = 0x22,
744      ANDROID_SCALER_AVAILABLE_FORMATS_YCbCr_420_888              = 0x23,
745      ANDROID_SCALER_AVAILABLE_FORMATS_BLOB                       = 0x21,
746  } camera_metadata_enum_android_scaler_available_formats_t;
747  
748  // ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS
749  typedef enum camera_metadata_enum_android_scaler_available_stream_configurations {
750      ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT,
751      ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_INPUT,
752  } camera_metadata_enum_android_scaler_available_stream_configurations_t;
753  
754  // ANDROID_SCALER_CROPPING_TYPE
755  typedef enum camera_metadata_enum_android_scaler_cropping_type {
756      ANDROID_SCALER_CROPPING_TYPE_CENTER_ONLY,
757      ANDROID_SCALER_CROPPING_TYPE_FREEFORM,
758  } camera_metadata_enum_android_scaler_cropping_type_t;
759  
760  
761  // ANDROID_SENSOR_REFERENCE_ILLUMINANT1
762  typedef enum camera_metadata_enum_android_sensor_reference_illuminant1 {
763      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT               = 1,
764      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLUORESCENT            = 2,
765      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_TUNGSTEN               = 3,
766      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLASH                  = 4,
767      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FINE_WEATHER           = 9,
768      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_CLOUDY_WEATHER         = 10,
769      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_SHADE                  = 11,
770      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT_FLUORESCENT   = 12,
771      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAY_WHITE_FLUORESCENT  = 13,
772      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_COOL_WHITE_FLUORESCENT = 14,
773      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_WHITE_FLUORESCENT      = 15,
774      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_A             = 17,
775      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_B             = 18,
776      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_C             = 19,
777      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D55                    = 20,
778      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D65                    = 21,
779      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D75                    = 22,
780      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D50                    = 23,
781      ANDROID_SENSOR_REFERENCE_ILLUMINANT1_ISO_STUDIO_TUNGSTEN    = 24,
782  } camera_metadata_enum_android_sensor_reference_illuminant1_t;
783  
784  // ANDROID_SENSOR_TEST_PATTERN_MODE
785  typedef enum camera_metadata_enum_android_sensor_test_pattern_mode {
786      ANDROID_SENSOR_TEST_PATTERN_MODE_OFF,
787      ANDROID_SENSOR_TEST_PATTERN_MODE_SOLID_COLOR,
788      ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS,
789      ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY,
790      ANDROID_SENSOR_TEST_PATTERN_MODE_PN9,
791      ANDROID_SENSOR_TEST_PATTERN_MODE_CUSTOM1                    = 256,
792  } camera_metadata_enum_android_sensor_test_pattern_mode_t;
793  
794  
795  // ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
796  typedef enum camera_metadata_enum_android_sensor_info_color_filter_arrangement {
797      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGGB,
798      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GRBG,
799      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GBRG,
800      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_BGGR,
801      ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGB,
802  } camera_metadata_enum_android_sensor_info_color_filter_arrangement_t;
803  
804  // ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE
805  typedef enum camera_metadata_enum_android_sensor_info_timestamp_source {
806      ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_UNKNOWN,
807      ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME,
808  } camera_metadata_enum_android_sensor_info_timestamp_source_t;
809  
810  // ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED
811  typedef enum camera_metadata_enum_android_sensor_info_lens_shading_applied {
812      ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_FALSE,
813      ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_TRUE,
814  } camera_metadata_enum_android_sensor_info_lens_shading_applied_t;
815  
816  
817  // ANDROID_SHADING_MODE
818  typedef enum camera_metadata_enum_android_shading_mode {
819      ANDROID_SHADING_MODE_OFF,
820      ANDROID_SHADING_MODE_FAST,
821      ANDROID_SHADING_MODE_HIGH_QUALITY,
822  } camera_metadata_enum_android_shading_mode_t;
823  
824  
825  // ANDROID_STATISTICS_FACE_DETECT_MODE
826  typedef enum camera_metadata_enum_android_statistics_face_detect_mode {
827      ANDROID_STATISTICS_FACE_DETECT_MODE_OFF,
828      ANDROID_STATISTICS_FACE_DETECT_MODE_SIMPLE,
829      ANDROID_STATISTICS_FACE_DETECT_MODE_FULL,
830  } camera_metadata_enum_android_statistics_face_detect_mode_t;
831  
832  // ANDROID_STATISTICS_HISTOGRAM_MODE
833  typedef enum camera_metadata_enum_android_statistics_histogram_mode {
834      ANDROID_STATISTICS_HISTOGRAM_MODE_OFF,
835      ANDROID_STATISTICS_HISTOGRAM_MODE_ON,
836  } camera_metadata_enum_android_statistics_histogram_mode_t;
837  
838  // ANDROID_STATISTICS_SHARPNESS_MAP_MODE
839  typedef enum camera_metadata_enum_android_statistics_sharpness_map_mode {
840      ANDROID_STATISTICS_SHARPNESS_MAP_MODE_OFF,
841      ANDROID_STATISTICS_SHARPNESS_MAP_MODE_ON,
842  } camera_metadata_enum_android_statistics_sharpness_map_mode_t;
843  
844  // ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE
845  typedef enum camera_metadata_enum_android_statistics_hot_pixel_map_mode {
846      ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_OFF,
847      ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_ON,
848  } camera_metadata_enum_android_statistics_hot_pixel_map_mode_t;
849  
850  // ANDROID_STATISTICS_SCENE_FLICKER
851  typedef enum camera_metadata_enum_android_statistics_scene_flicker {
852      ANDROID_STATISTICS_SCENE_FLICKER_NONE,
853      ANDROID_STATISTICS_SCENE_FLICKER_50HZ,
854      ANDROID_STATISTICS_SCENE_FLICKER_60HZ,
855  } camera_metadata_enum_android_statistics_scene_flicker_t;
856  
857  // ANDROID_STATISTICS_LENS_SHADING_MAP_MODE
858  typedef enum camera_metadata_enum_android_statistics_lens_shading_map_mode {
859      ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_OFF,
860      ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_ON,
861  } camera_metadata_enum_android_statistics_lens_shading_map_mode_t;
862  
863  
864  
865  // ANDROID_TONEMAP_MODE
866  typedef enum camera_metadata_enum_android_tonemap_mode {
867      ANDROID_TONEMAP_MODE_CONTRAST_CURVE,
868      ANDROID_TONEMAP_MODE_FAST,
869      ANDROID_TONEMAP_MODE_HIGH_QUALITY,
870      ANDROID_TONEMAP_MODE_GAMMA_VALUE,
871      ANDROID_TONEMAP_MODE_PRESET_CURVE,
872  } camera_metadata_enum_android_tonemap_mode_t;
873  
874  // ANDROID_TONEMAP_PRESET_CURVE
875  typedef enum camera_metadata_enum_android_tonemap_preset_curve {
876      ANDROID_TONEMAP_PRESET_CURVE_SRGB,
877      ANDROID_TONEMAP_PRESET_CURVE_REC709,
878  } camera_metadata_enum_android_tonemap_preset_curve_t;
879  
880  
881  // ANDROID_LED_TRANSMIT
882  typedef enum camera_metadata_enum_android_led_transmit {
883      ANDROID_LED_TRANSMIT_OFF,
884      ANDROID_LED_TRANSMIT_ON,
885  } camera_metadata_enum_android_led_transmit_t;
886  
887  // ANDROID_LED_AVAILABLE_LEDS
888  typedef enum camera_metadata_enum_android_led_available_leds {
889      ANDROID_LED_AVAILABLE_LEDS_TRANSMIT,
890  } camera_metadata_enum_android_led_available_leds_t;
891  
892  
893  // ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL
894  typedef enum camera_metadata_enum_android_info_supported_hardware_level {
895      ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED,
896      ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL,
897      ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY,
898      ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_3,
899  } camera_metadata_enum_android_info_supported_hardware_level_t;
900  
901  
902  // ANDROID_BLACK_LEVEL_LOCK
903  typedef enum camera_metadata_enum_android_black_level_lock {
904      ANDROID_BLACK_LEVEL_LOCK_OFF,
905      ANDROID_BLACK_LEVEL_LOCK_ON,
906  } camera_metadata_enum_android_black_level_lock_t;
907  
908  
909  // ANDROID_SYNC_FRAME_NUMBER
910  typedef enum camera_metadata_enum_android_sync_frame_number {
911      ANDROID_SYNC_FRAME_NUMBER_CONVERGING                        = -1,
912      ANDROID_SYNC_FRAME_NUMBER_UNKNOWN                           = -2,
913  } camera_metadata_enum_android_sync_frame_number_t;
914  
915  // ANDROID_SYNC_MAX_LATENCY
916  typedef enum camera_metadata_enum_android_sync_max_latency {
917      ANDROID_SYNC_MAX_LATENCY_PER_FRAME_CONTROL                  = 0,
918      ANDROID_SYNC_MAX_LATENCY_UNKNOWN                            = -1,
919  } camera_metadata_enum_android_sync_max_latency_t;
920  
921  
922  
923  // ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS
924  typedef enum camera_metadata_enum_android_depth_available_depth_stream_configurations {
925      ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_OUTPUT,
926      ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_INPUT,
927  } camera_metadata_enum_android_depth_available_depth_stream_configurations_t;
928  
929  // ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE
930  typedef enum camera_metadata_enum_android_depth_depth_is_exclusive {
931      ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_FALSE,
932      ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_TRUE,
933  } camera_metadata_enum_android_depth_depth_is_exclusive_t;
934  
935  
936