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_LOGICAL_MULTI_CAMERA,
65     ANDROID_DISTORTION_CORRECTION,
66     ANDROID_HEIC,
67     ANDROID_HEIC_INFO,
68     ANDROID_SECTION_COUNT,
69 
70     VENDOR_SECTION = 0x8000
71 } camera_metadata_section_t;
72 
73 /**
74  * Hierarchy positions in enum space. All vendor extension tags must be
75  * defined with tag >= VENDOR_SECTION_START
76  */
77 typedef enum camera_metadata_section_start {
78     ANDROID_COLOR_CORRECTION_START = ANDROID_COLOR_CORRECTION  << 16,
79     ANDROID_CONTROL_START          = ANDROID_CONTROL           << 16,
80     ANDROID_DEMOSAIC_START         = ANDROID_DEMOSAIC          << 16,
81     ANDROID_EDGE_START             = ANDROID_EDGE              << 16,
82     ANDROID_FLASH_START            = ANDROID_FLASH             << 16,
83     ANDROID_FLASH_INFO_START       = ANDROID_FLASH_INFO        << 16,
84     ANDROID_HOT_PIXEL_START        = ANDROID_HOT_PIXEL         << 16,
85     ANDROID_JPEG_START             = ANDROID_JPEG              << 16,
86     ANDROID_LENS_START             = ANDROID_LENS              << 16,
87     ANDROID_LENS_INFO_START        = ANDROID_LENS_INFO         << 16,
88     ANDROID_NOISE_REDUCTION_START  = ANDROID_NOISE_REDUCTION   << 16,
89     ANDROID_QUIRKS_START           = ANDROID_QUIRKS            << 16,
90     ANDROID_REQUEST_START          = ANDROID_REQUEST           << 16,
91     ANDROID_SCALER_START           = ANDROID_SCALER            << 16,
92     ANDROID_SENSOR_START           = ANDROID_SENSOR            << 16,
93     ANDROID_SENSOR_INFO_START      = ANDROID_SENSOR_INFO       << 16,
94     ANDROID_SHADING_START          = ANDROID_SHADING           << 16,
95     ANDROID_STATISTICS_START       = ANDROID_STATISTICS        << 16,
96     ANDROID_STATISTICS_INFO_START  = ANDROID_STATISTICS_INFO   << 16,
97     ANDROID_TONEMAP_START          = ANDROID_TONEMAP           << 16,
98     ANDROID_LED_START              = ANDROID_LED               << 16,
99     ANDROID_INFO_START             = ANDROID_INFO              << 16,
100     ANDROID_BLACK_LEVEL_START      = ANDROID_BLACK_LEVEL       << 16,
101     ANDROID_SYNC_START             = ANDROID_SYNC              << 16,
102     ANDROID_REPROCESS_START        = ANDROID_REPROCESS         << 16,
103     ANDROID_DEPTH_START            = ANDROID_DEPTH             << 16,
104     ANDROID_LOGICAL_MULTI_CAMERA_START
105                                    = ANDROID_LOGICAL_MULTI_CAMERA
106                                                                 << 16,
107     ANDROID_DISTORTION_CORRECTION_START
108                                    = ANDROID_DISTORTION_CORRECTION
109                                                                 << 16,
110     ANDROID_HEIC_START             = ANDROID_HEIC              << 16,
111     ANDROID_HEIC_INFO_START        = ANDROID_HEIC_INFO         << 16,
112     VENDOR_SECTION_START           = VENDOR_SECTION            << 16
113 } camera_metadata_section_start_t;
114 
115 /**
116  * Main enum for defining camera metadata tags.  New entries must always go
117  * before the section _END tag to preserve existing enumeration values.  In
118  * addition, the name and type of the tag needs to be added to
119  * system/media/camera/src/camera_metadata_tag_info.c
120  */
121 typedef enum camera_metadata_tag {
122     ANDROID_COLOR_CORRECTION_MODE =                   // enum         | public       | HIDL v3.2
123             ANDROID_COLOR_CORRECTION_START,
124     ANDROID_COLOR_CORRECTION_TRANSFORM,               // rational[]   | public       | HIDL v3.2
125     ANDROID_COLOR_CORRECTION_GAINS,                   // float[]      | public       | HIDL v3.2
126     ANDROID_COLOR_CORRECTION_ABERRATION_MODE,         // enum         | public       | HIDL v3.2
127     ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
128                                                       // byte[]       | public       | HIDL v3.2
129     ANDROID_COLOR_CORRECTION_END,
130 
131     ANDROID_CONTROL_AE_ANTIBANDING_MODE =             // enum         | public       | HIDL v3.2
132             ANDROID_CONTROL_START,
133     ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,         // int32        | public       | HIDL v3.2
134     ANDROID_CONTROL_AE_LOCK,                          // enum         | public       | HIDL v3.2
135     ANDROID_CONTROL_AE_MODE,                          // enum         | public       | HIDL v3.2
136     ANDROID_CONTROL_AE_REGIONS,                       // int32[]      | public       | HIDL v3.2
137     ANDROID_CONTROL_AE_TARGET_FPS_RANGE,              // int32[]      | public       | HIDL v3.2
138     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,            // enum         | public       | HIDL v3.2
139     ANDROID_CONTROL_AF_MODE,                          // enum         | public       | HIDL v3.2
140     ANDROID_CONTROL_AF_REGIONS,                       // int32[]      | public       | HIDL v3.2
141     ANDROID_CONTROL_AF_TRIGGER,                       // enum         | public       | HIDL v3.2
142     ANDROID_CONTROL_AWB_LOCK,                         // enum         | public       | HIDL v3.2
143     ANDROID_CONTROL_AWB_MODE,                         // enum         | public       | HIDL v3.2
144     ANDROID_CONTROL_AWB_REGIONS,                      // int32[]      | public       | HIDL v3.2
145     ANDROID_CONTROL_CAPTURE_INTENT,                   // enum         | public       | HIDL v3.2
146     ANDROID_CONTROL_EFFECT_MODE,                      // enum         | public       | HIDL v3.2
147     ANDROID_CONTROL_MODE,                             // enum         | public       | HIDL v3.2
148     ANDROID_CONTROL_SCENE_MODE,                       // enum         | public       | HIDL v3.2
149     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,         // enum         | public       | HIDL v3.2
150     ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,   // byte[]       | public       | HIDL v3.2
151     ANDROID_CONTROL_AE_AVAILABLE_MODES,               // byte[]       | public       | HIDL v3.2
152     ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,   // int32[]      | public       | HIDL v3.2
153     ANDROID_CONTROL_AE_COMPENSATION_RANGE,            // int32[]      | public       | HIDL v3.2
154     ANDROID_CONTROL_AE_COMPENSATION_STEP,             // rational     | public       | HIDL v3.2
155     ANDROID_CONTROL_AF_AVAILABLE_MODES,               // byte[]       | public       | HIDL v3.2
156     ANDROID_CONTROL_AVAILABLE_EFFECTS,                // byte[]       | public       | HIDL v3.2
157     ANDROID_CONTROL_AVAILABLE_SCENE_MODES,            // byte[]       | public       | HIDL v3.2
158     ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
159                                                       // byte[]       | public       | HIDL v3.2
160     ANDROID_CONTROL_AWB_AVAILABLE_MODES,              // byte[]       | public       | HIDL v3.2
161     ANDROID_CONTROL_MAX_REGIONS,                      // int32[]      | ndk_public   | HIDL v3.2
162     ANDROID_CONTROL_SCENE_MODE_OVERRIDES,             // byte[]       | system       | HIDL v3.2
163     ANDROID_CONTROL_AE_PRECAPTURE_ID,                 // int32        | system       | HIDL v3.2
164     ANDROID_CONTROL_AE_STATE,                         // enum         | public       | HIDL v3.2
165     ANDROID_CONTROL_AF_STATE,                         // enum         | public       | HIDL v3.2
166     ANDROID_CONTROL_AF_TRIGGER_ID,                    // int32        | system       | HIDL v3.2
167     ANDROID_CONTROL_AWB_STATE,                        // enum         | public       | HIDL v3.2
168     ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS,
169                                                       // int32[]      | hidden       | HIDL v3.2
170     ANDROID_CONTROL_AE_LOCK_AVAILABLE,                // enum         | public       | HIDL v3.2
171     ANDROID_CONTROL_AWB_LOCK_AVAILABLE,               // enum         | public       | HIDL v3.2
172     ANDROID_CONTROL_AVAILABLE_MODES,                  // byte[]       | public       | HIDL v3.2
173     ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE, // int32[]      | public       | HIDL v3.2
174     ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST,       // int32        | public       | HIDL v3.2
175     ANDROID_CONTROL_ENABLE_ZSL,                       // enum         | public       | HIDL v3.2
176     ANDROID_CONTROL_AF_SCENE_CHANGE,                  // enum         | public       | HIDL v3.3
177     ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES,
178                                                       // int32[]      | ndk_public   | HIDL v3.5
179     ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES,
180                                                       // float[]      | ndk_public   | HIDL v3.5
181     ANDROID_CONTROL_EXTENDED_SCENE_MODE,              // enum         | public       | HIDL v3.5
182     ANDROID_CONTROL_ZOOM_RATIO_RANGE,                 // float[]      | public       | HIDL v3.5
183     ANDROID_CONTROL_ZOOM_RATIO,                       // float        | public       | HIDL v3.5
184     ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS_MAXIMUM_RESOLUTION,
185                                                       // int32[]      | hidden       | HIDL v3.6
186     ANDROID_CONTROL_AF_REGIONS_SET,                   // enum         | fwk_only
187     ANDROID_CONTROL_AE_REGIONS_SET,                   // enum         | fwk_only
188     ANDROID_CONTROL_AWB_REGIONS_SET,                  // enum         | fwk_only
189     ANDROID_CONTROL_END,
190 
191     ANDROID_DEMOSAIC_MODE =                           // enum         | system       | HIDL v3.2
192             ANDROID_DEMOSAIC_START,
193     ANDROID_DEMOSAIC_END,
194 
195     ANDROID_EDGE_MODE =                               // enum         | public       | HIDL v3.2
196             ANDROID_EDGE_START,
197     ANDROID_EDGE_STRENGTH,                            // byte         | system       | HIDL v3.2
198     ANDROID_EDGE_AVAILABLE_EDGE_MODES,                // byte[]       | public       | HIDL v3.2
199     ANDROID_EDGE_END,
200 
201     ANDROID_FLASH_FIRING_POWER =                      // byte         | system       | HIDL v3.2
202             ANDROID_FLASH_START,
203     ANDROID_FLASH_FIRING_TIME,                        // int64        | system       | HIDL v3.2
204     ANDROID_FLASH_MODE,                               // enum         | public       | HIDL v3.2
205     ANDROID_FLASH_COLOR_TEMPERATURE,                  // byte         | system       | HIDL v3.2
206     ANDROID_FLASH_MAX_ENERGY,                         // byte         | system       | HIDL v3.2
207     ANDROID_FLASH_STATE,                              // enum         | public       | HIDL v3.2
208     ANDROID_FLASH_END,
209 
210     ANDROID_FLASH_INFO_AVAILABLE =                    // enum         | public       | HIDL v3.2
211             ANDROID_FLASH_INFO_START,
212     ANDROID_FLASH_INFO_CHARGE_DURATION,               // int64        | system       | HIDL v3.2
213     ANDROID_FLASH_INFO_END,
214 
215     ANDROID_HOT_PIXEL_MODE =                          // enum         | public       | HIDL v3.2
216             ANDROID_HOT_PIXEL_START,
217     ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,      // byte[]       | public       | HIDL v3.2
218     ANDROID_HOT_PIXEL_END,
219 
220     ANDROID_JPEG_GPS_COORDINATES =                    // double[]     | ndk_public   | HIDL v3.2
221             ANDROID_JPEG_START,
222     ANDROID_JPEG_GPS_PROCESSING_METHOD,               // byte         | ndk_public   | HIDL v3.2
223     ANDROID_JPEG_GPS_TIMESTAMP,                       // int64        | ndk_public   | HIDL v3.2
224     ANDROID_JPEG_ORIENTATION,                         // int32        | public       | HIDL v3.2
225     ANDROID_JPEG_QUALITY,                             // byte         | public       | HIDL v3.2
226     ANDROID_JPEG_THUMBNAIL_QUALITY,                   // byte         | public       | HIDL v3.2
227     ANDROID_JPEG_THUMBNAIL_SIZE,                      // int32[]      | public       | HIDL v3.2
228     ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,           // int32[]      | public       | HIDL v3.2
229     ANDROID_JPEG_MAX_SIZE,                            // int32        | system       | HIDL v3.2
230     ANDROID_JPEG_SIZE,                                // int32        | system       | HIDL v3.2
231     ANDROID_JPEG_END,
232 
233     ANDROID_LENS_APERTURE =                           // float        | public       | HIDL v3.2
234             ANDROID_LENS_START,
235     ANDROID_LENS_FILTER_DENSITY,                      // float        | public       | HIDL v3.2
236     ANDROID_LENS_FOCAL_LENGTH,                        // float        | public       | HIDL v3.2
237     ANDROID_LENS_FOCUS_DISTANCE,                      // float        | public       | HIDL v3.2
238     ANDROID_LENS_OPTICAL_STABILIZATION_MODE,          // enum         | public       | HIDL v3.2
239     ANDROID_LENS_FACING,                              // enum         | public       | HIDL v3.2
240     ANDROID_LENS_POSE_ROTATION,                       // float[]      | public       | HIDL v3.2
241     ANDROID_LENS_POSE_TRANSLATION,                    // float[]      | public       | HIDL v3.2
242     ANDROID_LENS_FOCUS_RANGE,                         // float[]      | public       | HIDL v3.2
243     ANDROID_LENS_STATE,                               // enum         | public       | HIDL v3.2
244     ANDROID_LENS_INTRINSIC_CALIBRATION,               // float[]      | public       | HIDL v3.2
245     ANDROID_LENS_RADIAL_DISTORTION,                   // float[]      | public       | HIDL v3.2
246     ANDROID_LENS_POSE_REFERENCE,                      // enum         | public       | HIDL v3.3
247     ANDROID_LENS_DISTORTION,                          // float[]      | public       | HIDL v3.3
248     ANDROID_LENS_DISTORTION_MAXIMUM_RESOLUTION,       // float[]      | public       | HIDL v3.6
249     ANDROID_LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION,
250                                                       // float[]      | public       | HIDL v3.6
251     ANDROID_LENS_END,
252 
253     ANDROID_LENS_INFO_AVAILABLE_APERTURES =           // float[]      | public       | HIDL v3.2
254             ANDROID_LENS_INFO_START,
255     ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,     // float[]      | public       | HIDL v3.2
256     ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,        // float[]      | public       | HIDL v3.2
257     ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,// byte[]       | public       | HIDL v3.2
258     ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,            // float        | public       | HIDL v3.2
259     ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,         // float        | public       | HIDL v3.2
260     ANDROID_LENS_INFO_SHADING_MAP_SIZE,               // int32[]      | ndk_public   | HIDL v3.2
261     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,     // enum         | public       | HIDL v3.2
262     ANDROID_LENS_INFO_END,
263 
264     ANDROID_NOISE_REDUCTION_MODE =                    // enum         | public       | HIDL v3.2
265             ANDROID_NOISE_REDUCTION_START,
266     ANDROID_NOISE_REDUCTION_STRENGTH,                 // byte         | system       | HIDL v3.2
267     ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
268                                                       // byte[]       | public       | HIDL v3.2
269     ANDROID_NOISE_REDUCTION_END,
270 
271     ANDROID_QUIRKS_METERING_CROP_REGION =             // byte         | system       | HIDL v3.2
272             ANDROID_QUIRKS_START,
273     ANDROID_QUIRKS_TRIGGER_AF_WITH_AUTO,              // byte         | system       | HIDL v3.2
274     ANDROID_QUIRKS_USE_ZSL_FORMAT,                    // byte         | system       | HIDL v3.2
275     ANDROID_QUIRKS_USE_PARTIAL_RESULT,                // byte         | hidden       | HIDL v3.2
276     ANDROID_QUIRKS_PARTIAL_RESULT,                    // enum         | hidden       | HIDL v3.2
277     ANDROID_QUIRKS_END,
278 
279     ANDROID_REQUEST_FRAME_COUNT =                     // int32        | hidden       | HIDL v3.2
280             ANDROID_REQUEST_START,
281     ANDROID_REQUEST_ID,                               // int32        | hidden       | HIDL v3.2
282     ANDROID_REQUEST_INPUT_STREAMS,                    // int32[]      | system       | HIDL v3.2
283     ANDROID_REQUEST_METADATA_MODE,                    // enum         | system       | HIDL v3.2
284     ANDROID_REQUEST_OUTPUT_STREAMS,                   // int32[]      | system       | HIDL v3.2
285     ANDROID_REQUEST_TYPE,                             // enum         | system       | HIDL v3.2
286     ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,           // int32[]      | ndk_public   | HIDL v3.2
287     ANDROID_REQUEST_MAX_NUM_REPROCESS_STREAMS,        // int32[]      | system       | HIDL v3.2
288     ANDROID_REQUEST_MAX_NUM_INPUT_STREAMS,            // int32        | java_public  | HIDL v3.2
289     ANDROID_REQUEST_PIPELINE_DEPTH,                   // byte         | public       | HIDL v3.2
290     ANDROID_REQUEST_PIPELINE_MAX_DEPTH,               // byte         | public       | HIDL v3.2
291     ANDROID_REQUEST_PARTIAL_RESULT_COUNT,             // int32        | public       | HIDL v3.2
292     ANDROID_REQUEST_AVAILABLE_CAPABILITIES,           // enum[]       | public       | HIDL v3.2
293     ANDROID_REQUEST_AVAILABLE_REQUEST_KEYS,           // int32[]      | ndk_public   | HIDL v3.2
294     ANDROID_REQUEST_AVAILABLE_RESULT_KEYS,            // int32[]      | ndk_public   | HIDL v3.2
295     ANDROID_REQUEST_AVAILABLE_CHARACTERISTICS_KEYS,   // int32[]      | ndk_public   | HIDL v3.2
296     ANDROID_REQUEST_AVAILABLE_SESSION_KEYS,           // int32[]      | ndk_public   | HIDL v3.3
297     ANDROID_REQUEST_AVAILABLE_PHYSICAL_CAMERA_REQUEST_KEYS,
298                                                       // int32[]      | ndk_public   | HIDL v3.3
299     ANDROID_REQUEST_CHARACTERISTIC_KEYS_NEEDING_PERMISSION,
300                                                       // int32[]      | hidden       | HIDL v3.4
301     ANDROID_REQUEST_END,
302 
303     ANDROID_SCALER_CROP_REGION =                      // int32[]      | public       | HIDL v3.2
304             ANDROID_SCALER_START,
305     ANDROID_SCALER_AVAILABLE_FORMATS,                 // enum[]       | hidden       | HIDL v3.2
306     ANDROID_SCALER_AVAILABLE_JPEG_MIN_DURATIONS,      // int64[]      | hidden       | HIDL v3.2
307     ANDROID_SCALER_AVAILABLE_JPEG_SIZES,              // int32[]      | hidden       | HIDL v3.2
308     ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,        // float        | public       | HIDL v3.2
309     ANDROID_SCALER_AVAILABLE_PROCESSED_MIN_DURATIONS, // int64[]      | hidden       | HIDL v3.2
310     ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES,         // int32[]      | hidden       | HIDL v3.2
311     ANDROID_SCALER_AVAILABLE_RAW_MIN_DURATIONS,       // int64[]      | system       | HIDL v3.2
312     ANDROID_SCALER_AVAILABLE_RAW_SIZES,               // int32[]      | system       | HIDL v3.2
313     ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP,// int32        | hidden       | HIDL v3.2
314     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,   // enum[]       | ndk_public   | HIDL v3.2
315     ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS,     // int64[]      | ndk_public   | HIDL v3.2
316     ANDROID_SCALER_AVAILABLE_STALL_DURATIONS,         // int64[]      | ndk_public   | HIDL v3.2
317     ANDROID_SCALER_CROPPING_TYPE,                     // enum         | public       | HIDL v3.2
318     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS,
319                                                       // enum[]       | ndk_public   | HIDL v3.4
320     ANDROID_SCALER_AVAILABLE_RECOMMENDED_INPUT_OUTPUT_FORMATS_MAP,
321                                                       // int32        | ndk_public   | HIDL v3.4
322     ANDROID_SCALER_AVAILABLE_ROTATE_AND_CROP_MODES,   // byte[]       | public       | HIDL v3.5
323     ANDROID_SCALER_ROTATE_AND_CROP,                   // enum         | public       | HIDL v3.5
324     ANDROID_SCALER_DEFAULT_SECURE_IMAGE_SIZE,         // int32[]      | public       | HIDL v3.6
325     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS,
326                                                       // enum[]       | ndk_public   | HIDL v3.6
327     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
328                                                       // enum[]       | ndk_public   | HIDL v3.6
329     ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
330                                                       // int64[]      | ndk_public   | HIDL v3.6
331     ANDROID_SCALER_AVAILABLE_STALL_DURATIONS_MAXIMUM_RESOLUTION,
332                                                       // int64[]      | ndk_public   | HIDL v3.6
333     ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP_MAXIMUM_RESOLUTION,
334                                                       // int32        | hidden       | HIDL v3.6
335     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED, // enum         | ndk_public   | HIDL v3.6
336     ANDROID_SCALER_CROP_REGION_SET,                   // enum         | fwk_only
337     ANDROID_SCALER_END,
338 
339     ANDROID_SENSOR_EXPOSURE_TIME =                    // int64        | public       | HIDL v3.2
340             ANDROID_SENSOR_START,
341     ANDROID_SENSOR_FRAME_DURATION,                    // int64        | public       | HIDL v3.2
342     ANDROID_SENSOR_SENSITIVITY,                       // int32        | public       | HIDL v3.2
343     ANDROID_SENSOR_REFERENCE_ILLUMINANT1,             // enum         | public       | HIDL v3.2
344     ANDROID_SENSOR_REFERENCE_ILLUMINANT2,             // byte         | public       | HIDL v3.2
345     ANDROID_SENSOR_CALIBRATION_TRANSFORM1,            // rational[]   | public       | HIDL v3.2
346     ANDROID_SENSOR_CALIBRATION_TRANSFORM2,            // rational[]   | public       | HIDL v3.2
347     ANDROID_SENSOR_COLOR_TRANSFORM1,                  // rational[]   | public       | HIDL v3.2
348     ANDROID_SENSOR_COLOR_TRANSFORM2,                  // rational[]   | public       | HIDL v3.2
349     ANDROID_SENSOR_FORWARD_MATRIX1,                   // rational[]   | public       | HIDL v3.2
350     ANDROID_SENSOR_FORWARD_MATRIX2,                   // rational[]   | public       | HIDL v3.2
351     ANDROID_SENSOR_BASE_GAIN_FACTOR,                  // rational     | system       | HIDL v3.2
352     ANDROID_SENSOR_BLACK_LEVEL_PATTERN,               // int32[]      | public       | HIDL v3.2
353     ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,            // int32        | public       | HIDL v3.2
354     ANDROID_SENSOR_ORIENTATION,                       // int32        | public       | HIDL v3.2
355     ANDROID_SENSOR_PROFILE_HUE_SAT_MAP_DIMENSIONS,    // int32[]      | system       | HIDL v3.2
356     ANDROID_SENSOR_TIMESTAMP,                         // int64        | public       | HIDL v3.2
357     ANDROID_SENSOR_TEMPERATURE,                       // float        | system       | HIDL v3.2
358     ANDROID_SENSOR_NEUTRAL_COLOR_POINT,               // rational[]   | public       | HIDL v3.2
359     ANDROID_SENSOR_NOISE_PROFILE,                     // double[]     | public       | HIDL v3.2
360     ANDROID_SENSOR_PROFILE_HUE_SAT_MAP,               // float[]      | system       | HIDL v3.2
361     ANDROID_SENSOR_PROFILE_TONE_CURVE,                // float[]      | system       | HIDL v3.2
362     ANDROID_SENSOR_GREEN_SPLIT,                       // float        | public       | HIDL v3.2
363     ANDROID_SENSOR_TEST_PATTERN_DATA,                 // int32[]      | public       | HIDL v3.2
364     ANDROID_SENSOR_TEST_PATTERN_MODE,                 // enum         | public       | HIDL v3.2
365     ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,      // int32[]      | public       | HIDL v3.2
366     ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,              // int64        | public       | HIDL v3.2
367     ANDROID_SENSOR_OPTICAL_BLACK_REGIONS,             // int32[]      | public       | HIDL v3.2
368     ANDROID_SENSOR_DYNAMIC_BLACK_LEVEL,               // float[]      | public       | HIDL v3.2
369     ANDROID_SENSOR_DYNAMIC_WHITE_LEVEL,               // int32        | public       | HIDL v3.2
370     ANDROID_SENSOR_OPAQUE_RAW_SIZE,                   // int32[]      | system       | HIDL v3.2
371     ANDROID_SENSOR_OPAQUE_RAW_SIZE_MAXIMUM_RESOLUTION,// int32[]      | system       | HIDL v3.6
372     ANDROID_SENSOR_PIXEL_MODE,                        // enum         | public       | HIDL v3.6
373     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED,           // enum         | public       | HIDL v3.6
374     ANDROID_SENSOR_END,
375 
376     ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE =           // int32[]      | public       | HIDL v3.2
377             ANDROID_SENSOR_INFO_START,
378     ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,            // int32[]      | public       | HIDL v3.2
379     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,     // enum         | public       | HIDL v3.2
380     ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,          // int64[]      | public       | HIDL v3.2
381     ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,           // int64        | public       | HIDL v3.2
382     ANDROID_SENSOR_INFO_PHYSICAL_SIZE,                // float[]      | public       | HIDL v3.2
383     ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,             // int32[]      | public       | HIDL v3.2
384     ANDROID_SENSOR_INFO_WHITE_LEVEL,                  // int32        | public       | HIDL v3.2
385     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,             // enum         | public       | HIDL v3.2
386     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED,         // enum         | public       | HIDL v3.2
387     ANDROID_SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE,
388                                                       // int32[]      | public       | HIDL v3.2
389     ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION,
390                                                       // int32[]      | public       | HIDL v3.6
391     ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION,
392                                                       // int32[]      | public       | HIDL v3.6
393     ANDROID_SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION,
394                                                       // int32[]      | public       | HIDL v3.6
395     ANDROID_SENSOR_INFO_BINNING_FACTOR,               // int32[]      | public       | HIDL v3.6
396     ANDROID_SENSOR_INFO_END,
397 
398     ANDROID_SHADING_MODE =                            // enum         | public       | HIDL v3.2
399             ANDROID_SHADING_START,
400     ANDROID_SHADING_STRENGTH,                         // byte         | system       | HIDL v3.2
401     ANDROID_SHADING_AVAILABLE_MODES,                  // byte[]       | public       | HIDL v3.2
402     ANDROID_SHADING_END,
403 
404     ANDROID_STATISTICS_FACE_DETECT_MODE =             // enum         | public       | HIDL v3.2
405             ANDROID_STATISTICS_START,
406     ANDROID_STATISTICS_HISTOGRAM_MODE,                // enum         | system       | HIDL v3.2
407     ANDROID_STATISTICS_SHARPNESS_MAP_MODE,            // enum         | system       | HIDL v3.2
408     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,            // enum         | public       | HIDL v3.2
409     ANDROID_STATISTICS_FACE_IDS,                      // int32[]      | ndk_public   | HIDL v3.2
410     ANDROID_STATISTICS_FACE_LANDMARKS,                // int32[]      | ndk_public   | HIDL v3.2
411     ANDROID_STATISTICS_FACE_RECTANGLES,               // int32[]      | ndk_public   | HIDL v3.2
412     ANDROID_STATISTICS_FACE_SCORES,                   // byte[]       | ndk_public   | HIDL v3.2
413     ANDROID_STATISTICS_HISTOGRAM,                     // int32[]      | system       | HIDL v3.2
414     ANDROID_STATISTICS_SHARPNESS_MAP,                 // int32[]      | system       | HIDL v3.2
415     ANDROID_STATISTICS_LENS_SHADING_CORRECTION_MAP,   // byte         | java_public  | HIDL v3.2
416     ANDROID_STATISTICS_LENS_SHADING_MAP,              // float[]      | ndk_public   | HIDL v3.2
417     ANDROID_STATISTICS_PREDICTED_COLOR_GAINS,         // float[]      | hidden       | HIDL v3.2
418     ANDROID_STATISTICS_PREDICTED_COLOR_TRANSFORM,     // rational[]   | hidden       | HIDL v3.2
419     ANDROID_STATISTICS_SCENE_FLICKER,                 // enum         | public       | HIDL v3.2
420     ANDROID_STATISTICS_HOT_PIXEL_MAP,                 // int32[]      | public       | HIDL v3.2
421     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,         // enum         | public       | HIDL v3.2
422     ANDROID_STATISTICS_OIS_DATA_MODE,                 // enum         | public       | HIDL v3.3
423     ANDROID_STATISTICS_OIS_TIMESTAMPS,                // int64[]      | ndk_public   | HIDL v3.3
424     ANDROID_STATISTICS_OIS_X_SHIFTS,                  // float[]      | ndk_public   | HIDL v3.3
425     ANDROID_STATISTICS_OIS_Y_SHIFTS,                  // float[]      | ndk_public   | HIDL v3.3
426     ANDROID_STATISTICS_END,
427 
428     ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES =
429                                                       // byte[]       | public       | HIDL v3.2
430             ANDROID_STATISTICS_INFO_START,
431     ANDROID_STATISTICS_INFO_HISTOGRAM_BUCKET_COUNT,   // int32        | system       | HIDL v3.2
432     ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,           // int32        | public       | HIDL v3.2
433     ANDROID_STATISTICS_INFO_MAX_HISTOGRAM_COUNT,      // int32        | system       | HIDL v3.2
434     ANDROID_STATISTICS_INFO_MAX_SHARPNESS_MAP_VALUE,  // int32        | system       | HIDL v3.2
435     ANDROID_STATISTICS_INFO_SHARPNESS_MAP_SIZE,       // int32[]      | system       | HIDL v3.2
436     ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
437                                                       // byte[]       | public       | HIDL v3.2
438     ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
439                                                       // byte[]       | public       | HIDL v3.2
440     ANDROID_STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES, // byte[]       | public       | HIDL v3.3
441     ANDROID_STATISTICS_INFO_END,
442 
443     ANDROID_TONEMAP_CURVE_BLUE =                      // float[]      | ndk_public   | HIDL v3.2
444             ANDROID_TONEMAP_START,
445     ANDROID_TONEMAP_CURVE_GREEN,                      // float[]      | ndk_public   | HIDL v3.2
446     ANDROID_TONEMAP_CURVE_RED,                        // float[]      | ndk_public   | HIDL v3.2
447     ANDROID_TONEMAP_MODE,                             // enum         | public       | HIDL v3.2
448     ANDROID_TONEMAP_MAX_CURVE_POINTS,                 // int32        | public       | HIDL v3.2
449     ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,         // byte[]       | public       | HIDL v3.2
450     ANDROID_TONEMAP_GAMMA,                            // float        | public       | HIDL v3.2
451     ANDROID_TONEMAP_PRESET_CURVE,                     // enum         | public       | HIDL v3.2
452     ANDROID_TONEMAP_END,
453 
454     ANDROID_LED_TRANSMIT =                            // enum         | hidden       | HIDL v3.2
455             ANDROID_LED_START,
456     ANDROID_LED_AVAILABLE_LEDS,                       // enum[]       | hidden       | HIDL v3.2
457     ANDROID_LED_END,
458 
459     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL =           // enum         | public       | HIDL v3.2
460             ANDROID_INFO_START,
461     ANDROID_INFO_VERSION,                             // byte         | public       | HIDL v3.3
462     ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION, // enum         | system       | HIDL v3.4
463     ANDROID_INFO_DEVICE_STATE_ORIENTATIONS,           // int64[]      | ndk_public   | HIDL v3.7
464     ANDROID_INFO_END,
465 
466     ANDROID_BLACK_LEVEL_LOCK =                        // enum         | public       | HIDL v3.2
467             ANDROID_BLACK_LEVEL_START,
468     ANDROID_BLACK_LEVEL_END,
469 
470     ANDROID_SYNC_FRAME_NUMBER =                       // enum         | ndk_public   | HIDL v3.2
471             ANDROID_SYNC_START,
472     ANDROID_SYNC_MAX_LATENCY,                         // enum         | public       | HIDL v3.2
473     ANDROID_SYNC_END,
474 
475     ANDROID_REPROCESS_EFFECTIVE_EXPOSURE_FACTOR =     // float        | java_public  | HIDL v3.2
476             ANDROID_REPROCESS_START,
477     ANDROID_REPROCESS_MAX_CAPTURE_STALL,              // int32        | java_public  | HIDL v3.2
478     ANDROID_REPROCESS_END,
479 
480     ANDROID_DEPTH_MAX_DEPTH_SAMPLES =                 // int32        | system       | HIDL v3.2
481             ANDROID_DEPTH_START,
482     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS,
483                                                       // enum[]       | ndk_public   | HIDL v3.2
484     ANDROID_DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS,// int64[]      | ndk_public   | HIDL v3.2
485     ANDROID_DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS,    // int64[]      | ndk_public   | HIDL v3.2
486     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE,                 // enum         | public       | HIDL v3.2
487     ANDROID_DEPTH_AVAILABLE_RECOMMENDED_DEPTH_STREAM_CONFIGURATIONS,
488                                                       // int32[]      | ndk_public   | HIDL v3.4
489     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS,
490                                                       // enum[]       | ndk_public   | HIDL v3.4
491     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS,
492                                                       // int64[]      | ndk_public   | HIDL v3.4
493     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS,
494                                                       // int64[]      | ndk_public   | HIDL v3.4
495     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
496                                                       // enum[]       | ndk_public   | HIDL v3.6
497     ANDROID_DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
498                                                       // int64[]      | ndk_public   | HIDL v3.6
499     ANDROID_DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION,
500                                                       // int64[]      | ndk_public   | HIDL v3.6
501     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
502                                                       // enum[]       | ndk_public   | HIDL v3.6
503     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
504                                                       // int64[]      | ndk_public   | HIDL v3.6
505     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION,
506                                                       // int64[]      | ndk_public   | HIDL v3.6
507     ANDROID_DEPTH_END,
508 
509     ANDROID_LOGICAL_MULTI_CAMERA_PHYSICAL_IDS =       // byte[]       | ndk_public   | HIDL v3.3
510             ANDROID_LOGICAL_MULTI_CAMERA_START,
511     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE,    // enum         | public       | HIDL v3.3
512     ANDROID_LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID,  // byte         | public       | HIDL v3.4
513     ANDROID_LOGICAL_MULTI_CAMERA_END,
514 
515     ANDROID_DISTORTION_CORRECTION_MODE =              // enum         | public       | HIDL v3.3
516             ANDROID_DISTORTION_CORRECTION_START,
517     ANDROID_DISTORTION_CORRECTION_AVAILABLE_MODES,    // byte[]       | public       | HIDL v3.3
518     ANDROID_DISTORTION_CORRECTION_END,
519 
520     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS =
521                                                       // enum[]       | ndk_public   | HIDL v3.4
522             ANDROID_HEIC_START,
523     ANDROID_HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS,  // int64[]      | ndk_public   | HIDL v3.4
524     ANDROID_HEIC_AVAILABLE_HEIC_STALL_DURATIONS,      // int64[]      | ndk_public   | HIDL v3.4
525     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
526                                                       // enum[]       | ndk_public   | HIDL v3.6
527     ANDROID_HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
528                                                       // int64[]      | ndk_public   | HIDL v3.6
529     ANDROID_HEIC_AVAILABLE_HEIC_STALL_DURATIONS_MAXIMUM_RESOLUTION,
530                                                       // int64[]      | ndk_public   | HIDL v3.6
531     ANDROID_HEIC_END,
532 
533     ANDROID_HEIC_INFO_SUPPORTED =                     // enum         | system       | HIDL v3.4
534             ANDROID_HEIC_INFO_START,
535     ANDROID_HEIC_INFO_MAX_JPEG_APP_SEGMENTS_COUNT,    // byte         | system       | HIDL v3.4
536     ANDROID_HEIC_INFO_END,
537 
538 } camera_metadata_tag_t;
539 
540 /**
541  * Enumeration definitions for the various entries that need them
542  */
543 
544 // ANDROID_COLOR_CORRECTION_MODE
545 typedef enum camera_metadata_enum_android_color_correction_mode {
546     ANDROID_COLOR_CORRECTION_MODE_TRANSFORM_MATRIX                  , // HIDL v3.2
547     ANDROID_COLOR_CORRECTION_MODE_FAST                              , // HIDL v3.2
548     ANDROID_COLOR_CORRECTION_MODE_HIGH_QUALITY                      , // HIDL v3.2
549 } camera_metadata_enum_android_color_correction_mode_t;
550 
551 // ANDROID_COLOR_CORRECTION_ABERRATION_MODE
552 typedef enum camera_metadata_enum_android_color_correction_aberration_mode {
553     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_OFF                    , // HIDL v3.2
554     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_FAST                   , // HIDL v3.2
555     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY           , // HIDL v3.2
556 } camera_metadata_enum_android_color_correction_aberration_mode_t;
557 
558 
559 // ANDROID_CONTROL_AE_ANTIBANDING_MODE
560 typedef enum camera_metadata_enum_android_control_ae_antibanding_mode {
561     ANDROID_CONTROL_AE_ANTIBANDING_MODE_OFF                         , // HIDL v3.2
562     ANDROID_CONTROL_AE_ANTIBANDING_MODE_50HZ                        , // HIDL v3.2
563     ANDROID_CONTROL_AE_ANTIBANDING_MODE_60HZ                        , // HIDL v3.2
564     ANDROID_CONTROL_AE_ANTIBANDING_MODE_AUTO                        , // HIDL v3.2
565 } camera_metadata_enum_android_control_ae_antibanding_mode_t;
566 
567 // ANDROID_CONTROL_AE_LOCK
568 typedef enum camera_metadata_enum_android_control_ae_lock {
569     ANDROID_CONTROL_AE_LOCK_OFF                                     , // HIDL v3.2
570     ANDROID_CONTROL_AE_LOCK_ON                                      , // HIDL v3.2
571 } camera_metadata_enum_android_control_ae_lock_t;
572 
573 // ANDROID_CONTROL_AE_MODE
574 typedef enum camera_metadata_enum_android_control_ae_mode {
575     ANDROID_CONTROL_AE_MODE_OFF                                     , // HIDL v3.2
576     ANDROID_CONTROL_AE_MODE_ON                                      , // HIDL v3.2
577     ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH                           , // HIDL v3.2
578     ANDROID_CONTROL_AE_MODE_ON_ALWAYS_FLASH                         , // HIDL v3.2
579     ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE                    , // HIDL v3.2
580     ANDROID_CONTROL_AE_MODE_ON_EXTERNAL_FLASH                       , // HIDL v3.3
581 } camera_metadata_enum_android_control_ae_mode_t;
582 
583 // ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER
584 typedef enum camera_metadata_enum_android_control_ae_precapture_trigger {
585     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_IDLE                      , // HIDL v3.2
586     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_START                     , // HIDL v3.2
587     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_CANCEL                    , // HIDL v3.2
588 } camera_metadata_enum_android_control_ae_precapture_trigger_t;
589 
590 // ANDROID_CONTROL_AF_MODE
591 typedef enum camera_metadata_enum_android_control_af_mode {
592     ANDROID_CONTROL_AF_MODE_OFF                                     , // HIDL v3.2
593     ANDROID_CONTROL_AF_MODE_AUTO                                    , // HIDL v3.2
594     ANDROID_CONTROL_AF_MODE_MACRO                                   , // HIDL v3.2
595     ANDROID_CONTROL_AF_MODE_CONTINUOUS_VIDEO                        , // HIDL v3.2
596     ANDROID_CONTROL_AF_MODE_CONTINUOUS_PICTURE                      , // HIDL v3.2
597     ANDROID_CONTROL_AF_MODE_EDOF                                    , // HIDL v3.2
598 } camera_metadata_enum_android_control_af_mode_t;
599 
600 // ANDROID_CONTROL_AF_TRIGGER
601 typedef enum camera_metadata_enum_android_control_af_trigger {
602     ANDROID_CONTROL_AF_TRIGGER_IDLE                                 , // HIDL v3.2
603     ANDROID_CONTROL_AF_TRIGGER_START                                , // HIDL v3.2
604     ANDROID_CONTROL_AF_TRIGGER_CANCEL                               , // HIDL v3.2
605 } camera_metadata_enum_android_control_af_trigger_t;
606 
607 // ANDROID_CONTROL_AWB_LOCK
608 typedef enum camera_metadata_enum_android_control_awb_lock {
609     ANDROID_CONTROL_AWB_LOCK_OFF                                    , // HIDL v3.2
610     ANDROID_CONTROL_AWB_LOCK_ON                                     , // HIDL v3.2
611 } camera_metadata_enum_android_control_awb_lock_t;
612 
613 // ANDROID_CONTROL_AWB_MODE
614 typedef enum camera_metadata_enum_android_control_awb_mode {
615     ANDROID_CONTROL_AWB_MODE_OFF                                    , // HIDL v3.2
616     ANDROID_CONTROL_AWB_MODE_AUTO                                   , // HIDL v3.2
617     ANDROID_CONTROL_AWB_MODE_INCANDESCENT                           , // HIDL v3.2
618     ANDROID_CONTROL_AWB_MODE_FLUORESCENT                            , // HIDL v3.2
619     ANDROID_CONTROL_AWB_MODE_WARM_FLUORESCENT                       , // HIDL v3.2
620     ANDROID_CONTROL_AWB_MODE_DAYLIGHT                               , // HIDL v3.2
621     ANDROID_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT                        , // HIDL v3.2
622     ANDROID_CONTROL_AWB_MODE_TWILIGHT                               , // HIDL v3.2
623     ANDROID_CONTROL_AWB_MODE_SHADE                                  , // HIDL v3.2
624 } camera_metadata_enum_android_control_awb_mode_t;
625 
626 // ANDROID_CONTROL_CAPTURE_INTENT
627 typedef enum camera_metadata_enum_android_control_capture_intent {
628     ANDROID_CONTROL_CAPTURE_INTENT_CUSTOM                           , // HIDL v3.2
629     ANDROID_CONTROL_CAPTURE_INTENT_PREVIEW                          , // HIDL v3.2
630     ANDROID_CONTROL_CAPTURE_INTENT_STILL_CAPTURE                    , // HIDL v3.2
631     ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_RECORD                     , // HIDL v3.2
632     ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_SNAPSHOT                   , // HIDL v3.2
633     ANDROID_CONTROL_CAPTURE_INTENT_ZERO_SHUTTER_LAG                 , // HIDL v3.2
634     ANDROID_CONTROL_CAPTURE_INTENT_MANUAL                           , // HIDL v3.2
635     ANDROID_CONTROL_CAPTURE_INTENT_MOTION_TRACKING                  , // HIDL v3.3
636 } camera_metadata_enum_android_control_capture_intent_t;
637 
638 // ANDROID_CONTROL_EFFECT_MODE
639 typedef enum camera_metadata_enum_android_control_effect_mode {
640     ANDROID_CONTROL_EFFECT_MODE_OFF                                 , // HIDL v3.2
641     ANDROID_CONTROL_EFFECT_MODE_MONO                                , // HIDL v3.2
642     ANDROID_CONTROL_EFFECT_MODE_NEGATIVE                            , // HIDL v3.2
643     ANDROID_CONTROL_EFFECT_MODE_SOLARIZE                            , // HIDL v3.2
644     ANDROID_CONTROL_EFFECT_MODE_SEPIA                               , // HIDL v3.2
645     ANDROID_CONTROL_EFFECT_MODE_POSTERIZE                           , // HIDL v3.2
646     ANDROID_CONTROL_EFFECT_MODE_WHITEBOARD                          , // HIDL v3.2
647     ANDROID_CONTROL_EFFECT_MODE_BLACKBOARD                          , // HIDL v3.2
648     ANDROID_CONTROL_EFFECT_MODE_AQUA                                , // HIDL v3.2
649 } camera_metadata_enum_android_control_effect_mode_t;
650 
651 // ANDROID_CONTROL_MODE
652 typedef enum camera_metadata_enum_android_control_mode {
653     ANDROID_CONTROL_MODE_OFF                                        , // HIDL v3.2
654     ANDROID_CONTROL_MODE_AUTO                                       , // HIDL v3.2
655     ANDROID_CONTROL_MODE_USE_SCENE_MODE                             , // HIDL v3.2
656     ANDROID_CONTROL_MODE_OFF_KEEP_STATE                             , // HIDL v3.2
657     ANDROID_CONTROL_MODE_USE_EXTENDED_SCENE_MODE                    , // HIDL v3.5
658 } camera_metadata_enum_android_control_mode_t;
659 
660 // ANDROID_CONTROL_SCENE_MODE
661 typedef enum camera_metadata_enum_android_control_scene_mode {
662     ANDROID_CONTROL_SCENE_MODE_DISABLED                              = 0, // HIDL v3.2
663     ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY                        , // HIDL v3.2
664     ANDROID_CONTROL_SCENE_MODE_ACTION                               , // HIDL v3.2
665     ANDROID_CONTROL_SCENE_MODE_PORTRAIT                             , // HIDL v3.2
666     ANDROID_CONTROL_SCENE_MODE_LANDSCAPE                            , // HIDL v3.2
667     ANDROID_CONTROL_SCENE_MODE_NIGHT                                , // HIDL v3.2
668     ANDROID_CONTROL_SCENE_MODE_NIGHT_PORTRAIT                       , // HIDL v3.2
669     ANDROID_CONTROL_SCENE_MODE_THEATRE                              , // HIDL v3.2
670     ANDROID_CONTROL_SCENE_MODE_BEACH                                , // HIDL v3.2
671     ANDROID_CONTROL_SCENE_MODE_SNOW                                 , // HIDL v3.2
672     ANDROID_CONTROL_SCENE_MODE_SUNSET                               , // HIDL v3.2
673     ANDROID_CONTROL_SCENE_MODE_STEADYPHOTO                          , // HIDL v3.2
674     ANDROID_CONTROL_SCENE_MODE_FIREWORKS                            , // HIDL v3.2
675     ANDROID_CONTROL_SCENE_MODE_SPORTS                               , // HIDL v3.2
676     ANDROID_CONTROL_SCENE_MODE_PARTY                                , // HIDL v3.2
677     ANDROID_CONTROL_SCENE_MODE_CANDLELIGHT                          , // HIDL v3.2
678     ANDROID_CONTROL_SCENE_MODE_BARCODE                              , // HIDL v3.2
679     ANDROID_CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO                     , // HIDL v3.2
680     ANDROID_CONTROL_SCENE_MODE_HDR                                  , // HIDL v3.2
681     ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY_LOW_LIGHT              , // HIDL v3.2
682     ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_START                   = 100, // HIDL v3.2
683     ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_END                     = 127, // HIDL v3.2
684 } camera_metadata_enum_android_control_scene_mode_t;
685 
686 // ANDROID_CONTROL_VIDEO_STABILIZATION_MODE
687 typedef enum camera_metadata_enum_android_control_video_stabilization_mode {
688     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_OFF                    , // HIDL v3.2
689     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_ON                     , // HIDL v3.2
690 } camera_metadata_enum_android_control_video_stabilization_mode_t;
691 
692 // ANDROID_CONTROL_AE_STATE
693 typedef enum camera_metadata_enum_android_control_ae_state {
694     ANDROID_CONTROL_AE_STATE_INACTIVE                               , // HIDL v3.2
695     ANDROID_CONTROL_AE_STATE_SEARCHING                              , // HIDL v3.2
696     ANDROID_CONTROL_AE_STATE_CONVERGED                              , // HIDL v3.2
697     ANDROID_CONTROL_AE_STATE_LOCKED                                 , // HIDL v3.2
698     ANDROID_CONTROL_AE_STATE_FLASH_REQUIRED                         , // HIDL v3.2
699     ANDROID_CONTROL_AE_STATE_PRECAPTURE                             , // HIDL v3.2
700 } camera_metadata_enum_android_control_ae_state_t;
701 
702 // ANDROID_CONTROL_AF_STATE
703 typedef enum camera_metadata_enum_android_control_af_state {
704     ANDROID_CONTROL_AF_STATE_INACTIVE                               , // HIDL v3.2
705     ANDROID_CONTROL_AF_STATE_PASSIVE_SCAN                           , // HIDL v3.2
706     ANDROID_CONTROL_AF_STATE_PASSIVE_FOCUSED                        , // HIDL v3.2
707     ANDROID_CONTROL_AF_STATE_ACTIVE_SCAN                            , // HIDL v3.2
708     ANDROID_CONTROL_AF_STATE_FOCUSED_LOCKED                         , // HIDL v3.2
709     ANDROID_CONTROL_AF_STATE_NOT_FOCUSED_LOCKED                     , // HIDL v3.2
710     ANDROID_CONTROL_AF_STATE_PASSIVE_UNFOCUSED                      , // HIDL v3.2
711 } camera_metadata_enum_android_control_af_state_t;
712 
713 // ANDROID_CONTROL_AWB_STATE
714 typedef enum camera_metadata_enum_android_control_awb_state {
715     ANDROID_CONTROL_AWB_STATE_INACTIVE                              , // HIDL v3.2
716     ANDROID_CONTROL_AWB_STATE_SEARCHING                             , // HIDL v3.2
717     ANDROID_CONTROL_AWB_STATE_CONVERGED                             , // HIDL v3.2
718     ANDROID_CONTROL_AWB_STATE_LOCKED                                , // HIDL v3.2
719 } camera_metadata_enum_android_control_awb_state_t;
720 
721 // ANDROID_CONTROL_AE_LOCK_AVAILABLE
722 typedef enum camera_metadata_enum_android_control_ae_lock_available {
723     ANDROID_CONTROL_AE_LOCK_AVAILABLE_FALSE                         , // HIDL v3.2
724     ANDROID_CONTROL_AE_LOCK_AVAILABLE_TRUE                          , // HIDL v3.2
725 } camera_metadata_enum_android_control_ae_lock_available_t;
726 
727 // ANDROID_CONTROL_AWB_LOCK_AVAILABLE
728 typedef enum camera_metadata_enum_android_control_awb_lock_available {
729     ANDROID_CONTROL_AWB_LOCK_AVAILABLE_FALSE                        , // HIDL v3.2
730     ANDROID_CONTROL_AWB_LOCK_AVAILABLE_TRUE                         , // HIDL v3.2
731 } camera_metadata_enum_android_control_awb_lock_available_t;
732 
733 // ANDROID_CONTROL_ENABLE_ZSL
734 typedef enum camera_metadata_enum_android_control_enable_zsl {
735     ANDROID_CONTROL_ENABLE_ZSL_FALSE                                , // HIDL v3.2
736     ANDROID_CONTROL_ENABLE_ZSL_TRUE                                 , // HIDL v3.2
737 } camera_metadata_enum_android_control_enable_zsl_t;
738 
739 // ANDROID_CONTROL_AF_SCENE_CHANGE
740 typedef enum camera_metadata_enum_android_control_af_scene_change {
741     ANDROID_CONTROL_AF_SCENE_CHANGE_NOT_DETECTED                    , // HIDL v3.3
742     ANDROID_CONTROL_AF_SCENE_CHANGE_DETECTED                        , // HIDL v3.3
743 } camera_metadata_enum_android_control_af_scene_change_t;
744 
745 // ANDROID_CONTROL_EXTENDED_SCENE_MODE
746 typedef enum camera_metadata_enum_android_control_extended_scene_mode {
747     ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED                     = 0, // HIDL v3.5
748     ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE         , // HIDL v3.5
749     ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS            , // HIDL v3.5
750     ANDROID_CONTROL_EXTENDED_SCENE_MODE_VENDOR_START                 = 0x40, // HIDL v3.5
751 } camera_metadata_enum_android_control_extended_scene_mode_t;
752 
753 // ANDROID_CONTROL_AF_REGIONS_SET
754 typedef enum camera_metadata_enum_android_control_af_regions_set {
755     ANDROID_CONTROL_AF_REGIONS_SET_FALSE                            ,
756     ANDROID_CONTROL_AF_REGIONS_SET_TRUE                             ,
757 } camera_metadata_enum_android_control_af_regions_set_t;
758 
759 // ANDROID_CONTROL_AE_REGIONS_SET
760 typedef enum camera_metadata_enum_android_control_ae_regions_set {
761     ANDROID_CONTROL_AE_REGIONS_SET_FALSE                            ,
762     ANDROID_CONTROL_AE_REGIONS_SET_TRUE                             ,
763 } camera_metadata_enum_android_control_ae_regions_set_t;
764 
765 // ANDROID_CONTROL_AWB_REGIONS_SET
766 typedef enum camera_metadata_enum_android_control_awb_regions_set {
767     ANDROID_CONTROL_AWB_REGIONS_SET_FALSE                           ,
768     ANDROID_CONTROL_AWB_REGIONS_SET_TRUE                            ,
769 } camera_metadata_enum_android_control_awb_regions_set_t;
770 
771 
772 // ANDROID_DEMOSAIC_MODE
773 typedef enum camera_metadata_enum_android_demosaic_mode {
774     ANDROID_DEMOSAIC_MODE_FAST                                      , // HIDL v3.2
775     ANDROID_DEMOSAIC_MODE_HIGH_QUALITY                              , // HIDL v3.2
776 } camera_metadata_enum_android_demosaic_mode_t;
777 
778 
779 // ANDROID_EDGE_MODE
780 typedef enum camera_metadata_enum_android_edge_mode {
781     ANDROID_EDGE_MODE_OFF                                           , // HIDL v3.2
782     ANDROID_EDGE_MODE_FAST                                          , // HIDL v3.2
783     ANDROID_EDGE_MODE_HIGH_QUALITY                                  , // HIDL v3.2
784     ANDROID_EDGE_MODE_ZERO_SHUTTER_LAG                              , // HIDL v3.2
785 } camera_metadata_enum_android_edge_mode_t;
786 
787 
788 // ANDROID_FLASH_MODE
789 typedef enum camera_metadata_enum_android_flash_mode {
790     ANDROID_FLASH_MODE_OFF                                          , // HIDL v3.2
791     ANDROID_FLASH_MODE_SINGLE                                       , // HIDL v3.2
792     ANDROID_FLASH_MODE_TORCH                                        , // HIDL v3.2
793 } camera_metadata_enum_android_flash_mode_t;
794 
795 // ANDROID_FLASH_STATE
796 typedef enum camera_metadata_enum_android_flash_state {
797     ANDROID_FLASH_STATE_UNAVAILABLE                                 , // HIDL v3.2
798     ANDROID_FLASH_STATE_CHARGING                                    , // HIDL v3.2
799     ANDROID_FLASH_STATE_READY                                       , // HIDL v3.2
800     ANDROID_FLASH_STATE_FIRED                                       , // HIDL v3.2
801     ANDROID_FLASH_STATE_PARTIAL                                     , // HIDL v3.2
802 } camera_metadata_enum_android_flash_state_t;
803 
804 
805 // ANDROID_FLASH_INFO_AVAILABLE
806 typedef enum camera_metadata_enum_android_flash_info_available {
807     ANDROID_FLASH_INFO_AVAILABLE_FALSE                              , // HIDL v3.2
808     ANDROID_FLASH_INFO_AVAILABLE_TRUE                               , // HIDL v3.2
809 } camera_metadata_enum_android_flash_info_available_t;
810 
811 
812 // ANDROID_HOT_PIXEL_MODE
813 typedef enum camera_metadata_enum_android_hot_pixel_mode {
814     ANDROID_HOT_PIXEL_MODE_OFF                                      , // HIDL v3.2
815     ANDROID_HOT_PIXEL_MODE_FAST                                     , // HIDL v3.2
816     ANDROID_HOT_PIXEL_MODE_HIGH_QUALITY                             , // HIDL v3.2
817 } camera_metadata_enum_android_hot_pixel_mode_t;
818 
819 
820 
821 // ANDROID_LENS_OPTICAL_STABILIZATION_MODE
822 typedef enum camera_metadata_enum_android_lens_optical_stabilization_mode {
823     ANDROID_LENS_OPTICAL_STABILIZATION_MODE_OFF                     , // HIDL v3.2
824     ANDROID_LENS_OPTICAL_STABILIZATION_MODE_ON                      , // HIDL v3.2
825 } camera_metadata_enum_android_lens_optical_stabilization_mode_t;
826 
827 // ANDROID_LENS_FACING
828 typedef enum camera_metadata_enum_android_lens_facing {
829     ANDROID_LENS_FACING_FRONT                                       , // HIDL v3.2
830     ANDROID_LENS_FACING_BACK                                        , // HIDL v3.2
831     ANDROID_LENS_FACING_EXTERNAL                                    , // HIDL v3.2
832 } camera_metadata_enum_android_lens_facing_t;
833 
834 // ANDROID_LENS_STATE
835 typedef enum camera_metadata_enum_android_lens_state {
836     ANDROID_LENS_STATE_STATIONARY                                   , // HIDL v3.2
837     ANDROID_LENS_STATE_MOVING                                       , // HIDL v3.2
838 } camera_metadata_enum_android_lens_state_t;
839 
840 // ANDROID_LENS_POSE_REFERENCE
841 typedef enum camera_metadata_enum_android_lens_pose_reference {
842     ANDROID_LENS_POSE_REFERENCE_PRIMARY_CAMERA                      , // HIDL v3.3
843     ANDROID_LENS_POSE_REFERENCE_GYROSCOPE                           , // HIDL v3.3
844     ANDROID_LENS_POSE_REFERENCE_UNDEFINED                           , // HIDL v3.5
845 } camera_metadata_enum_android_lens_pose_reference_t;
846 
847 
848 // ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION
849 typedef enum camera_metadata_enum_android_lens_info_focus_distance_calibration {
850     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_UNCALIBRATED       , // HIDL v3.2
851     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_APPROXIMATE        , // HIDL v3.2
852     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_CALIBRATED         , // HIDL v3.2
853 } camera_metadata_enum_android_lens_info_focus_distance_calibration_t;
854 
855 
856 // ANDROID_NOISE_REDUCTION_MODE
857 typedef enum camera_metadata_enum_android_noise_reduction_mode {
858     ANDROID_NOISE_REDUCTION_MODE_OFF                                , // HIDL v3.2
859     ANDROID_NOISE_REDUCTION_MODE_FAST                               , // HIDL v3.2
860     ANDROID_NOISE_REDUCTION_MODE_HIGH_QUALITY                       , // HIDL v3.2
861     ANDROID_NOISE_REDUCTION_MODE_MINIMAL                            , // HIDL v3.2
862     ANDROID_NOISE_REDUCTION_MODE_ZERO_SHUTTER_LAG                   , // HIDL v3.2
863 } camera_metadata_enum_android_noise_reduction_mode_t;
864 
865 
866 // ANDROID_QUIRKS_PARTIAL_RESULT
867 typedef enum camera_metadata_enum_android_quirks_partial_result {
868     ANDROID_QUIRKS_PARTIAL_RESULT_FINAL                             , // HIDL v3.2
869     ANDROID_QUIRKS_PARTIAL_RESULT_PARTIAL                           , // HIDL v3.2
870 } camera_metadata_enum_android_quirks_partial_result_t;
871 
872 
873 // ANDROID_REQUEST_METADATA_MODE
874 typedef enum camera_metadata_enum_android_request_metadata_mode {
875     ANDROID_REQUEST_METADATA_MODE_NONE                              , // HIDL v3.2
876     ANDROID_REQUEST_METADATA_MODE_FULL                              , // HIDL v3.2
877 } camera_metadata_enum_android_request_metadata_mode_t;
878 
879 // ANDROID_REQUEST_TYPE
880 typedef enum camera_metadata_enum_android_request_type {
881     ANDROID_REQUEST_TYPE_CAPTURE                                    , // HIDL v3.2
882     ANDROID_REQUEST_TYPE_REPROCESS                                  , // HIDL v3.2
883 } camera_metadata_enum_android_request_type_t;
884 
885 // ANDROID_REQUEST_AVAILABLE_CAPABILITIES
886 typedef enum camera_metadata_enum_android_request_available_capabilities {
887     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE      , // HIDL v3.2
888     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR            , // HIDL v3.2
889     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING   , // HIDL v3.2
890     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW                      , // HIDL v3.2
891     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING     , // HIDL v3.2
892     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS     , // HIDL v3.2
893     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE            , // HIDL v3.2
894     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING         , // HIDL v3.2
895     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT             , // HIDL v3.2
896     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO
897                                                                      , // HIDL v3.2
898     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING          , // HIDL v3.3
899     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA     , // HIDL v3.3
900     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME               , // HIDL v3.3
901     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SECURE_IMAGE_DATA        , // HIDL v3.4
902     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA            , // HIDL v3.5
903     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_OFFLINE_PROCESSING       , // HIDL v3.5
904     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR
905                                                                      , // HIDL v3.6
906     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_REMOSAIC_REPROCESSING    , // HIDL v3.6
907 } camera_metadata_enum_android_request_available_capabilities_t;
908 
909 
910 // ANDROID_SCALER_AVAILABLE_FORMATS
911 typedef enum camera_metadata_enum_android_scaler_available_formats {
912     ANDROID_SCALER_AVAILABLE_FORMATS_RAW16                           = 0x20, // HIDL v3.2
913     ANDROID_SCALER_AVAILABLE_FORMATS_RAW_OPAQUE                      = 0x24, // HIDL v3.2
914     ANDROID_SCALER_AVAILABLE_FORMATS_YV12                            = 0x32315659, // HIDL v3.2
915     ANDROID_SCALER_AVAILABLE_FORMATS_YCrCb_420_SP                    = 0x11, // HIDL v3.2
916     ANDROID_SCALER_AVAILABLE_FORMATS_IMPLEMENTATION_DEFINED          = 0x22, // HIDL v3.2
917     ANDROID_SCALER_AVAILABLE_FORMATS_YCbCr_420_888                   = 0x23, // HIDL v3.2
918     ANDROID_SCALER_AVAILABLE_FORMATS_BLOB                            = 0x21, // HIDL v3.2
919     ANDROID_SCALER_AVAILABLE_FORMATS_RAW10                           = 0x25, // HIDL v3.4
920     ANDROID_SCALER_AVAILABLE_FORMATS_RAW12                           = 0x26, // HIDL v3.4
921     ANDROID_SCALER_AVAILABLE_FORMATS_Y8                              = 0x20203859, // HIDL v3.4
922 } camera_metadata_enum_android_scaler_available_formats_t;
923 
924 // ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS
925 typedef enum camera_metadata_enum_android_scaler_available_stream_configurations {
926     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT           , // HIDL v3.2
927     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_INPUT            , // HIDL v3.2
928 } camera_metadata_enum_android_scaler_available_stream_configurations_t;
929 
930 // ANDROID_SCALER_CROPPING_TYPE
931 typedef enum camera_metadata_enum_android_scaler_cropping_type {
932     ANDROID_SCALER_CROPPING_TYPE_CENTER_ONLY                        , // HIDL v3.2
933     ANDROID_SCALER_CROPPING_TYPE_FREEFORM                           , // HIDL v3.2
934 } camera_metadata_enum_android_scaler_cropping_type_t;
935 
936 // ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS
937 typedef enum camera_metadata_enum_android_scaler_available_recommended_stream_configurations {
938     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PREVIEW
939                                                                       = 0x0, // HIDL v3.4
940     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RECORD
941                                                                       = 0x1, // HIDL v3.4
942     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VIDEO_SNAPSHOT
943                                                                       = 0x2, // HIDL v3.4
944     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_SNAPSHOT
945                                                                       = 0x3, // HIDL v3.4
946     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_ZSL   = 0x4, // HIDL v3.4
947     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RAW   = 0x5, // HIDL v3.4
948     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_LOW_LATENCY_SNAPSHOT
949                                                                       = 0x6, // HIDL v3.4
950     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PUBLIC_END
951                                                                       = 0x7, // HIDL v3.4
952     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VENDOR_START
953                                                                       = 0x18, // HIDL v3.4
954 } camera_metadata_enum_android_scaler_available_recommended_stream_configurations_t;
955 
956 // ANDROID_SCALER_ROTATE_AND_CROP
957 typedef enum camera_metadata_enum_android_scaler_rotate_and_crop {
958     ANDROID_SCALER_ROTATE_AND_CROP_NONE                             , // HIDL v3.5
959     ANDROID_SCALER_ROTATE_AND_CROP_90                               , // HIDL v3.5
960     ANDROID_SCALER_ROTATE_AND_CROP_180                              , // HIDL v3.5
961     ANDROID_SCALER_ROTATE_AND_CROP_270                              , // HIDL v3.5
962     ANDROID_SCALER_ROTATE_AND_CROP_AUTO                             , // HIDL v3.5
963 } camera_metadata_enum_android_scaler_rotate_and_crop_t;
964 
965 // ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS
966 typedef enum camera_metadata_enum_android_scaler_physical_camera_multi_resolution_stream_configurations {
967     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS_OUTPUT
968                                                                      , // HIDL v3.6
969     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS_INPUT
970                                                                      , // HIDL v3.6
971 } camera_metadata_enum_android_scaler_physical_camera_multi_resolution_stream_configurations_t;
972 
973 // ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
974 typedef enum camera_metadata_enum_android_scaler_available_stream_configurations_maximum_resolution {
975     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
976                                                                      , // HIDL v3.6
977     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
978                                                                      , // HIDL v3.6
979 } camera_metadata_enum_android_scaler_available_stream_configurations_maximum_resolution_t;
980 
981 // ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED
982 typedef enum camera_metadata_enum_android_scaler_multi_resolution_stream_supported {
983     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED_FALSE          , // HIDL v3.6
984     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED_TRUE           , // HIDL v3.6
985 } camera_metadata_enum_android_scaler_multi_resolution_stream_supported_t;
986 
987 // ANDROID_SCALER_CROP_REGION_SET
988 typedef enum camera_metadata_enum_android_scaler_crop_region_set {
989     ANDROID_SCALER_CROP_REGION_SET_FALSE                            ,
990     ANDROID_SCALER_CROP_REGION_SET_TRUE                             ,
991 } camera_metadata_enum_android_scaler_crop_region_set_t;
992 
993 
994 // ANDROID_SENSOR_REFERENCE_ILLUMINANT1
995 typedef enum camera_metadata_enum_android_sensor_reference_illuminant1 {
996     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT                    = 1, // HIDL v3.2
997     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLUORESCENT                 = 2, // HIDL v3.2
998     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_TUNGSTEN                    = 3, // HIDL v3.2
999     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLASH                       = 4, // HIDL v3.2
1000     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FINE_WEATHER                = 9, // HIDL v3.2
1001     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_CLOUDY_WEATHER              = 10, // HIDL v3.2
1002     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_SHADE                       = 11, // HIDL v3.2
1003     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT_FLUORESCENT        = 12, // HIDL v3.2
1004     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAY_WHITE_FLUORESCENT       = 13, // HIDL v3.2
1005     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_COOL_WHITE_FLUORESCENT      = 14, // HIDL v3.2
1006     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_WHITE_FLUORESCENT           = 15, // HIDL v3.2
1007     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_A                  = 17, // HIDL v3.2
1008     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_B                  = 18, // HIDL v3.2
1009     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_C                  = 19, // HIDL v3.2
1010     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D55                         = 20, // HIDL v3.2
1011     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D65                         = 21, // HIDL v3.2
1012     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D75                         = 22, // HIDL v3.2
1013     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D50                         = 23, // HIDL v3.2
1014     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_ISO_STUDIO_TUNGSTEN         = 24, // HIDL v3.2
1015 } camera_metadata_enum_android_sensor_reference_illuminant1_t;
1016 
1017 // ANDROID_SENSOR_TEST_PATTERN_MODE
1018 typedef enum camera_metadata_enum_android_sensor_test_pattern_mode {
1019     ANDROID_SENSOR_TEST_PATTERN_MODE_OFF                            , // HIDL v3.2
1020     ANDROID_SENSOR_TEST_PATTERN_MODE_SOLID_COLOR                    , // HIDL v3.2
1021     ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS                     , // HIDL v3.2
1022     ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY        , // HIDL v3.2
1023     ANDROID_SENSOR_TEST_PATTERN_MODE_PN9                            , // HIDL v3.2
1024     ANDROID_SENSOR_TEST_PATTERN_MODE_BLACK                          , // HIDL v3.6
1025     ANDROID_SENSOR_TEST_PATTERN_MODE_CUSTOM1                         = 256, // HIDL v3.2
1026 } camera_metadata_enum_android_sensor_test_pattern_mode_t;
1027 
1028 // ANDROID_SENSOR_PIXEL_MODE
1029 typedef enum camera_metadata_enum_android_sensor_pixel_mode {
1030     ANDROID_SENSOR_PIXEL_MODE_DEFAULT                               , // HIDL v3.6
1031     ANDROID_SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION                    , // HIDL v3.6
1032 } camera_metadata_enum_android_sensor_pixel_mode_t;
1033 
1034 // ANDROID_SENSOR_RAW_BINNING_FACTOR_USED
1035 typedef enum camera_metadata_enum_android_sensor_raw_binning_factor_used {
1036     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED_TRUE                     , // HIDL v3.6
1037     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED_FALSE                    , // HIDL v3.6
1038 } camera_metadata_enum_android_sensor_raw_binning_factor_used_t;
1039 
1040 
1041 // ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
1042 typedef enum camera_metadata_enum_android_sensor_info_color_filter_arrangement {
1043     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGGB               , // HIDL v3.2
1044     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GRBG               , // HIDL v3.2
1045     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GBRG               , // HIDL v3.2
1046     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_BGGR               , // HIDL v3.2
1047     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGB                , // HIDL v3.2
1048     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO               , // HIDL v3.4
1049     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR                , // HIDL v3.4
1050 } camera_metadata_enum_android_sensor_info_color_filter_arrangement_t;
1051 
1052 // ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE
1053 typedef enum camera_metadata_enum_android_sensor_info_timestamp_source {
1054     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_UNKNOWN                    , // HIDL v3.2
1055     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME                   , // HIDL v3.2
1056 } camera_metadata_enum_android_sensor_info_timestamp_source_t;
1057 
1058 // ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED
1059 typedef enum camera_metadata_enum_android_sensor_info_lens_shading_applied {
1060     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_FALSE                  , // HIDL v3.2
1061     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_TRUE                   , // HIDL v3.2
1062 } camera_metadata_enum_android_sensor_info_lens_shading_applied_t;
1063 
1064 
1065 // ANDROID_SHADING_MODE
1066 typedef enum camera_metadata_enum_android_shading_mode {
1067     ANDROID_SHADING_MODE_OFF                                        , // HIDL v3.2
1068     ANDROID_SHADING_MODE_FAST                                       , // HIDL v3.2
1069     ANDROID_SHADING_MODE_HIGH_QUALITY                               , // HIDL v3.2
1070 } camera_metadata_enum_android_shading_mode_t;
1071 
1072 
1073 // ANDROID_STATISTICS_FACE_DETECT_MODE
1074 typedef enum camera_metadata_enum_android_statistics_face_detect_mode {
1075     ANDROID_STATISTICS_FACE_DETECT_MODE_OFF                         , // HIDL v3.2
1076     ANDROID_STATISTICS_FACE_DETECT_MODE_SIMPLE                      , // HIDL v3.2
1077     ANDROID_STATISTICS_FACE_DETECT_MODE_FULL                        , // HIDL v3.2
1078 } camera_metadata_enum_android_statistics_face_detect_mode_t;
1079 
1080 // ANDROID_STATISTICS_HISTOGRAM_MODE
1081 typedef enum camera_metadata_enum_android_statistics_histogram_mode {
1082     ANDROID_STATISTICS_HISTOGRAM_MODE_OFF                           , // HIDL v3.2
1083     ANDROID_STATISTICS_HISTOGRAM_MODE_ON                            , // HIDL v3.2
1084 } camera_metadata_enum_android_statistics_histogram_mode_t;
1085 
1086 // ANDROID_STATISTICS_SHARPNESS_MAP_MODE
1087 typedef enum camera_metadata_enum_android_statistics_sharpness_map_mode {
1088     ANDROID_STATISTICS_SHARPNESS_MAP_MODE_OFF                       , // HIDL v3.2
1089     ANDROID_STATISTICS_SHARPNESS_MAP_MODE_ON                        , // HIDL v3.2
1090 } camera_metadata_enum_android_statistics_sharpness_map_mode_t;
1091 
1092 // ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE
1093 typedef enum camera_metadata_enum_android_statistics_hot_pixel_map_mode {
1094     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_OFF                       , // HIDL v3.2
1095     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_ON                        , // HIDL v3.2
1096 } camera_metadata_enum_android_statistics_hot_pixel_map_mode_t;
1097 
1098 // ANDROID_STATISTICS_SCENE_FLICKER
1099 typedef enum camera_metadata_enum_android_statistics_scene_flicker {
1100     ANDROID_STATISTICS_SCENE_FLICKER_NONE                           , // HIDL v3.2
1101     ANDROID_STATISTICS_SCENE_FLICKER_50HZ                           , // HIDL v3.2
1102     ANDROID_STATISTICS_SCENE_FLICKER_60HZ                           , // HIDL v3.2
1103 } camera_metadata_enum_android_statistics_scene_flicker_t;
1104 
1105 // ANDROID_STATISTICS_LENS_SHADING_MAP_MODE
1106 typedef enum camera_metadata_enum_android_statistics_lens_shading_map_mode {
1107     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_OFF                    , // HIDL v3.2
1108     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_ON                     , // HIDL v3.2
1109 } camera_metadata_enum_android_statistics_lens_shading_map_mode_t;
1110 
1111 // ANDROID_STATISTICS_OIS_DATA_MODE
1112 typedef enum camera_metadata_enum_android_statistics_ois_data_mode {
1113     ANDROID_STATISTICS_OIS_DATA_MODE_OFF                            , // HIDL v3.3
1114     ANDROID_STATISTICS_OIS_DATA_MODE_ON                             , // HIDL v3.3
1115 } camera_metadata_enum_android_statistics_ois_data_mode_t;
1116 
1117 
1118 
1119 // ANDROID_TONEMAP_MODE
1120 typedef enum camera_metadata_enum_android_tonemap_mode {
1121     ANDROID_TONEMAP_MODE_CONTRAST_CURVE                             , // HIDL v3.2
1122     ANDROID_TONEMAP_MODE_FAST                                       , // HIDL v3.2
1123     ANDROID_TONEMAP_MODE_HIGH_QUALITY                               , // HIDL v3.2
1124     ANDROID_TONEMAP_MODE_GAMMA_VALUE                                , // HIDL v3.2
1125     ANDROID_TONEMAP_MODE_PRESET_CURVE                               , // HIDL v3.2
1126 } camera_metadata_enum_android_tonemap_mode_t;
1127 
1128 // ANDROID_TONEMAP_PRESET_CURVE
1129 typedef enum camera_metadata_enum_android_tonemap_preset_curve {
1130     ANDROID_TONEMAP_PRESET_CURVE_SRGB                               , // HIDL v3.2
1131     ANDROID_TONEMAP_PRESET_CURVE_REC709                             , // HIDL v3.2
1132 } camera_metadata_enum_android_tonemap_preset_curve_t;
1133 
1134 
1135 // ANDROID_LED_TRANSMIT
1136 typedef enum camera_metadata_enum_android_led_transmit {
1137     ANDROID_LED_TRANSMIT_OFF                                        , // HIDL v3.2
1138     ANDROID_LED_TRANSMIT_ON                                         , // HIDL v3.2
1139 } camera_metadata_enum_android_led_transmit_t;
1140 
1141 // ANDROID_LED_AVAILABLE_LEDS
1142 typedef enum camera_metadata_enum_android_led_available_leds {
1143     ANDROID_LED_AVAILABLE_LEDS_TRANSMIT                             , // HIDL v3.2
1144 } camera_metadata_enum_android_led_available_leds_t;
1145 
1146 
1147 // ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL
1148 typedef enum camera_metadata_enum_android_info_supported_hardware_level {
1149     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED                   , // HIDL v3.2
1150     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL                      , // HIDL v3.2
1151     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY                    , // HIDL v3.2
1152     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_3                         , // HIDL v3.2
1153     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL                  , // HIDL v3.3
1154 } camera_metadata_enum_android_info_supported_hardware_level_t;
1155 
1156 // ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION
1157 typedef enum camera_metadata_enum_android_info_supported_buffer_management_version {
1158     ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION_HIDL_DEVICE_3_5, // HIDL v3.4
1159 } camera_metadata_enum_android_info_supported_buffer_management_version_t;
1160 
1161 
1162 // ANDROID_BLACK_LEVEL_LOCK
1163 typedef enum camera_metadata_enum_android_black_level_lock {
1164     ANDROID_BLACK_LEVEL_LOCK_OFF                                    , // HIDL v3.2
1165     ANDROID_BLACK_LEVEL_LOCK_ON                                     , // HIDL v3.2
1166 } camera_metadata_enum_android_black_level_lock_t;
1167 
1168 
1169 // ANDROID_SYNC_FRAME_NUMBER
1170 typedef enum camera_metadata_enum_android_sync_frame_number {
1171     ANDROID_SYNC_FRAME_NUMBER_CONVERGING                             = -1, // HIDL v3.2
1172     ANDROID_SYNC_FRAME_NUMBER_UNKNOWN                                = -2, // HIDL v3.2
1173 } camera_metadata_enum_android_sync_frame_number_t;
1174 
1175 // ANDROID_SYNC_MAX_LATENCY
1176 typedef enum camera_metadata_enum_android_sync_max_latency {
1177     ANDROID_SYNC_MAX_LATENCY_PER_FRAME_CONTROL                       = 0, // HIDL v3.2
1178     ANDROID_SYNC_MAX_LATENCY_UNKNOWN                                 = -1, // HIDL v3.2
1179 } camera_metadata_enum_android_sync_max_latency_t;
1180 
1181 
1182 
1183 // ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS
1184 typedef enum camera_metadata_enum_android_depth_available_depth_stream_configurations {
1185     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_OUTPUT      , // HIDL v3.2
1186     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_INPUT       , // HIDL v3.2
1187 } camera_metadata_enum_android_depth_available_depth_stream_configurations_t;
1188 
1189 // ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE
1190 typedef enum camera_metadata_enum_android_depth_depth_is_exclusive {
1191     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_FALSE                          , // HIDL v3.2
1192     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_TRUE                           , // HIDL v3.2
1193 } camera_metadata_enum_android_depth_depth_is_exclusive_t;
1194 
1195 // ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS
1196 typedef enum camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations {
1197     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_OUTPUT
1198                                                                      , // HIDL v3.4
1199     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_INPUT
1200                                                                      , // HIDL v3.4
1201 } camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_t;
1202 
1203 // ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1204 typedef enum camera_metadata_enum_android_depth_available_depth_stream_configurations_maximum_resolution {
1205     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1206                                                                      , // HIDL v3.6
1207     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1208                                                                      , // HIDL v3.6
1209 } camera_metadata_enum_android_depth_available_depth_stream_configurations_maximum_resolution_t;
1210 
1211 // ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1212 typedef enum camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_maximum_resolution {
1213     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1214                                                                      , // HIDL v3.6
1215     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1216                                                                      , // HIDL v3.6
1217 } camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_maximum_resolution_t;
1218 
1219 
1220 // ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE
1221 typedef enum camera_metadata_enum_android_logical_multi_camera_sensor_sync_type {
1222     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE       , // HIDL v3.3
1223     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_CALIBRATED        , // HIDL v3.3
1224 } camera_metadata_enum_android_logical_multi_camera_sensor_sync_type_t;
1225 
1226 
1227 // ANDROID_DISTORTION_CORRECTION_MODE
1228 typedef enum camera_metadata_enum_android_distortion_correction_mode {
1229     ANDROID_DISTORTION_CORRECTION_MODE_OFF                          , // HIDL v3.3
1230     ANDROID_DISTORTION_CORRECTION_MODE_FAST                         , // HIDL v3.3
1231     ANDROID_DISTORTION_CORRECTION_MODE_HIGH_QUALITY                 , // HIDL v3.3
1232 } camera_metadata_enum_android_distortion_correction_mode_t;
1233 
1234 
1235 // ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS
1236 typedef enum camera_metadata_enum_android_heic_available_heic_stream_configurations {
1237     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_OUTPUT        , // HIDL v3.4
1238     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_INPUT         , // HIDL v3.4
1239 } camera_metadata_enum_android_heic_available_heic_stream_configurations_t;
1240 
1241 // ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1242 typedef enum camera_metadata_enum_android_heic_available_heic_stream_configurations_maximum_resolution {
1243     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1244                                                                      , // HIDL v3.6
1245     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1246                                                                      , // HIDL v3.6
1247 } camera_metadata_enum_android_heic_available_heic_stream_configurations_maximum_resolution_t;
1248 
1249 
1250 // ANDROID_HEIC_INFO_SUPPORTED
1251 typedef enum camera_metadata_enum_android_heic_info_supported {
1252     ANDROID_HEIC_INFO_SUPPORTED_FALSE                               , // HIDL v3.4
1253     ANDROID_HEIC_INFO_SUPPORTED_TRUE                                , // HIDL v3.4
1254 } camera_metadata_enum_android_heic_info_supported_t;
1255 
1256 
1257