diff options
author | Eino-Ville Talvala <etalvala@google.com> | 2012-05-20 17:21:04 -0700 |
---|---|---|
committer | Eino-Ville Talvala <etalvala@google.com> | 2012-05-20 17:21:04 -0700 |
commit | e86a770948e22cd7802b94898fad38377d2fd2bc (patch) | |
tree | ee51c8c00ca4d79f5847093b0bc6c324de3ec59b | |
parent | cc01cd4e736e4dcce8bac67df824dc9defd7b35b (diff) | |
download | android_system_media-e86a770948e22cd7802b94898fad38377d2fd2bc.tar.gz android_system_media-e86a770948e22cd7802b94898fad38377d2fd2bc.tar.bz2 android_system_media-e86a770948e22cd7802b94898fad38377d2fd2bc.zip |
Camera: Update to latest metadata definitions
- Revamp resolution information
- Add sizes for shading, geometric correction map
- Add hyperfocal distance
- Add sensor physical size
- Remove unneeded color modes
- Add scene, effect modes
- Add some missing enums for other parameters
- Facing
- AF modes
- Available scene modes
Bug: 6243944
Change-Id: Ia5c9448ef2857f8dd39488810030b4e548711194
-rw-r--r-- | camera/include/system/camera_metadata_tags.h | 35 | ||||
-rw-r--r-- | camera/src/camera_metadata_tag_info.c | 47 |
2 files changed, 56 insertions, 26 deletions
diff --git a/camera/include/system/camera_metadata_tags.h b/camera/include/system/camera_metadata_tags.h index e9edca9f..d8186839 100644 --- a/camera/include/system/camera_metadata_tags.h +++ b/camera/include/system/camera_metadata_tags.h @@ -126,11 +126,14 @@ enum { ANDROID_LENS_END, ANDROID_LENS_MINIMUM_FOCUS_DISTANCE = ANDROID_LENS_INFO_START, + ANDROID_LENS_HYPERFOCAL_DISTANCE, ANDROID_LENS_AVAILABLE_FOCAL_LENGTHS, ANDROID_LENS_AVAILABLE_APERTURES, ANDROID_LENS_AVAILABLE_FILTER_DENSITY, ANDROID_LENS_AVAILABLE_OPTICAL_STABILIZATION, + ANDROID_LENS_SHADING_MAP_SIZE, ANDROID_LENS_SHADING_MAP, + ANDROID_LENS_GEOMETRIC_CORRECTION_MAP_SIZE, ANDROID_LENS_GEOMETRIC_CORRECTION_MAP, ANDROID_LENS_FACING, ANDROID_LENS_POSITION, @@ -146,6 +149,7 @@ enum { ANDROID_SENSOR_MAX_FRAME_DURATION, ANDROID_SENSOR_AVAILABLE_SENSITIVITIES, ANDROID_SENSOR_COLOR_FILTER_ARRANGEMENT, + ANDROID_SENSOR_PHYSICAL_SIZE, ANDROID_SENSOR_PIXEL_ARRAY_SIZE, ANDROID_SENSOR_ACTIVE_ARRAY_SIZE, ANDROID_SENSOR_WHITE_LEVEL, @@ -169,7 +173,7 @@ enum { ANDROID_FLASH_FIRING_TIME, ANDROID_FLASH_END, - ANDROID_FLASH_AVAILABLE_MODES = ANDROID_FLASH_INFO_START, + ANDROID_FLASH_AVAILABLE = ANDROID_FLASH_INFO_START, ANDROID_FLASH_CHARGE_DURATION, ANDROID_FLASH_INFO_END, @@ -203,8 +207,7 @@ enum { ANDROID_COLOR_TRANSFORM, ANDROID_COLOR_END, - ANDROID_COLOR_AVAILABLE_MODES = ANDROID_COLOR_INFO_START, - ANDROID_COLOR_INFO_END, + ANDROID_COLOR_INFO_END = ANDROID_COLOR_INFO_START, ANDROID_TONEMAP_MODE = ANDROID_TONEMAP_START, ANDROID_TONEMAP_CURVE_RED, @@ -225,9 +228,12 @@ enum { ANDROID_SCALER_END, ANDROID_SCALER_AVAILABLE_FORMATS = ANDROID_SCALER_INFO_START, - ANDROID_SCALER_AVAILABLE_SIZES_PER_FORMAT, - ANDROID_SCALER_AVAILABLE_SIZES, - ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS, + ANDROID_SCALER_AVAILABLE_RAW_SIZES, + ANDROID_SCALER_AVAILABLE_RAW_MIN_DURATIONS, + ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES, + ANDROID_SCALER_AVAILABLE_PROCESSED_MIN_DURATIONS, + ANDROID_SCALER_AVAILABLE_JPEG_SIZES, + ANDROID_SCALER_AVAILABLE_JPEG_MIN_DURATIONS, ANDROID_SCALER_AVAILABLE_MAX_ZOOM, ANDROID_SCALER_INFO_END, @@ -281,7 +287,8 @@ enum { ANDROID_CONTROL_AF_STATE, ANDROID_CONTROL_END, - ANDROID_CONTROL_AVAILABLE_MODES = ANDROID_CONTROL_INFO_START, + ANDROID_CONTROL_AVAILABLE_SCENE_MODES = ANDROID_CONTROL_INFO_START, + ANDROID_CONTROL_AVAILABLE_EFFECTS, ANDROID_CONTROL_MAX_REGIONS, ANDROID_CONTROL_AE_AVAILABLE_MODES, ANDROID_CONTROL_AE_EXP_COMPENSATION_STEP, @@ -290,6 +297,7 @@ enum { ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES, ANDROID_CONTROL_AWB_AVAILABLE_MODES, ANDROID_CONTROL_AF_AVAILABLE_MODES, + ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES, ANDROID_CONTROL_INFO_END }; @@ -309,6 +317,12 @@ enum { ANDROID_LENS_OPTICAL_STABILIZATION_ON }; +// ANDROID_LENS_FACING +enum { + ANDROID_LENS_FACING_BACK = 0, + ANDROID_LENS_FACING_FRONT +}; + // ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT enum { ANDROID_SENSOR_RGGB = 0, @@ -322,7 +336,6 @@ enum { enum { ANDROID_FLASH_OFF = 0, ANDROID_FLASH_SINGLE, - ANDROID_FLASH_AUTO_SINGLE, ANDROID_FLASH_TORCH }; @@ -388,7 +401,8 @@ enum { // ANDROID_CONTROL_SCENE_MODE enum { - ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY = 0, + ANDROID_CONTROL_SCENE_MODE_UNSUPPORTED = 0, // Only for availableSceneModes + ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY, ANDROID_CONTROL_SCENE_MODE_ACTION, ANDROID_CONTROL_SCENE_MODE_PORTRAIT, ANDROID_CONTROL_SCENE_MODE_LANDSCAPE, @@ -455,7 +469,8 @@ enum { ANDROID_CONTROL_AF_AUTO, ANDROID_CONTROL_AF_MACRO, ANDROID_CONTROL_AF_CONTINUOUS_VIDEO, - ANDROID_CONTROL_AF_CONTINUOUS_PICTURE + ANDROID_CONTROL_AF_CONTINUOUS_PICTURE, + ANDROID_CONTROL_AF_EDOF }; // ANDROID_CONTROL_VIDEO_STABILIZATION diff --git a/camera/src/camera_metadata_tag_info.c b/camera/src/camera_metadata_tag_info.c index 7a49175d..cff3bd29 100644 --- a/camera/src/camera_metadata_tag_info.c +++ b/camera/src/camera_metadata_tag_info.c @@ -162,6 +162,8 @@ tag_info_t android_lens_info[ANDROID_LENS_INFO_END - ANDROID_LENS_INFO_START] = { TIIDX(LENS, MINIMUM_FOCUS_DISTANCE) = { "minimumFocusDistance", TYPE_FLOAT }, + TIIDX(LENS, HYPERFOCAL_DISTANCE) = + { "hyperfocalDistance", TYPE_FLOAT }, TIIDX(LENS, AVAILABLE_FOCAL_LENGTHS) = { "availableFocalLengths", TYPE_FLOAT }, TIIDX(LENS, AVAILABLE_APERTURES) = @@ -170,8 +172,12 @@ tag_info_t android_lens_info[ANDROID_LENS_INFO_END - { "availableFilterDensities", TYPE_FLOAT }, TIIDX(LENS, AVAILABLE_OPTICAL_STABILIZATION) = { "availableOpticalStabilizationModes", TYPE_BYTE }, + TIIDX(LENS, SHADING_MAP_SIZE) = + { "shadingMapSize", TYPE_INT32 }, TIIDX(LENS, SHADING_MAP) = { "shadingMap", TYPE_FLOAT }, + TIIDX(LENS, GEOMETRIC_CORRECTION_MAP_SIZE) = + { "geometricCorrectionMapSize", TYPE_INT32 }, TIIDX(LENS, GEOMETRIC_CORRECTION_MAP) = { "geometricCorrectionMap", TYPE_FLOAT }, TIIDX(LENS, FACING) = @@ -202,6 +208,8 @@ tag_info_t android_sensor_info[ANDROID_SENSOR_INFO_END - { "availableSensitivities", TYPE_INT32 }, TIIDX(SENSOR, COLOR_FILTER_ARRANGEMENT) = { "colorFilterArrangement", TYPE_BYTE }, + TIIDX(SENSOR, PHYSICAL_SIZE) = + { "physicalSize", TYPE_FLOAT }, TIIDX(SENSOR, PIXEL_ARRAY_SIZE) = { "pixelArraySize", TYPE_INT32 }, TIIDX(SENSOR, ACTIVE_ARRAY_SIZE) = @@ -248,7 +256,7 @@ tag_info_t android_flash[ANDROID_FLASH_END - tag_info_t android_flash_info[ANDROID_FLASH_INFO_END - ANDROID_FLASH_INFO_START] = { - TIIDX(FLASH, AVAILABLE_MODES) = + TIIDX(FLASH, AVAILABLE) = { "available", TYPE_BYTE }, TIIDX(FLASH, CHARGE_DURATION) = { "chargeDuration", TYPE_INT64 }, @@ -310,10 +318,7 @@ tag_info_t android_color[ANDROID_COLOR_END - }; tag_info_t android_color_info[ANDROID_COLOR_INFO_END - - ANDROID_COLOR_INFO_START] = { - TIIDX(COLOR, AVAILABLE_MODES) = - { "availableModes", TYPE_INT32 } -}; + ANDROID_COLOR_INFO_START]; tag_info_t android_tonemap[ANDROID_TONEMAP_END - ANDROID_TONEMAP_START] = { @@ -353,15 +358,21 @@ tag_info_t android_scaler[ANDROID_SCALER_END - tag_info_t android_scaler_info[ANDROID_SCALER_INFO_END - ANDROID_SCALER_INFO_START] = { TIIDX(SCALER, AVAILABLE_FORMATS) = - { "availableFormats", TYPE_INT32 }, - TIIDX(SCALER, AVAILABLE_SIZES_PER_FORMAT) = - { "availableSizesPerFormat", TYPE_INT32 }, - TIIDX(SCALER, AVAILABLE_SIZES) = - { "availableSizes", TYPE_INT32 }, - TIIDX(SCALER, AVAILABLE_MIN_FRAME_DURATIONS) = - { "availableMinFrameDurations", TYPE_INT64 }, + { "availableFormats", TYPE_INT32 }, + TIIDX(SCALER, AVAILABLE_RAW_SIZES) = + { "availableRawSizes", TYPE_INT32 }, + TIIDX(SCALER, AVAILABLE_RAW_MIN_DURATIONS) = + { "availableRawMinDurations", TYPE_INT64 }, + TIIDX(SCALER, AVAILABLE_PROCESSED_SIZES) = + { "availableProcessedSizes", TYPE_INT32 }, + TIIDX(SCALER, AVAILABLE_PROCESSED_MIN_DURATIONS) = + { "availableProcessedMinDurations", TYPE_INT64 }, + TIIDX(SCALER, AVAILABLE_JPEG_SIZES) = + { "availableJpegSizes", TYPE_INT32 }, + TIIDX(SCALER, AVAILABLE_JPEG_MIN_DURATIONS) = + { "availableJpegMinDurations", TYPE_INT64 }, TIIDX(SCALER, AVAILABLE_MAX_ZOOM) = - { "availableMaxDigitalZoom", TYPE_INT32 } + { "availableMaxDigitalZoom", TYPE_INT32 } }; tag_info_t android_jpeg[ANDROID_JPEG_END - @@ -467,8 +478,10 @@ tag_info_t android_control[ANDROID_CONTROL_END - tag_info_t android_control_info[ANDROID_CONTROL_INFO_END - ANDROID_CONTROL_INFO_START] = { - TIIDX(CONTROL, AVAILABLE_MODES) = - { "availableModes", TYPE_BYTE }, + TIIDX(CONTROL, AVAILABLE_SCENE_MODES) = + { "availableSceneModes", TYPE_BYTE }, + TIIDX(CONTROL, AVAILABLE_EFFECTS) = + { "availableEffects", TYPE_BYTE }, TIIDX(CONTROL, MAX_REGIONS) = { "maxRegions", TYPE_INT32 }, TIIDX(CONTROL, AE_AVAILABLE_MODES) = @@ -484,7 +497,9 @@ tag_info_t android_control_info[ANDROID_CONTROL_INFO_END - TIIDX(CONTROL, AWB_AVAILABLE_MODES) = { "awbAvailableModes", TYPE_BYTE }, TIIDX(CONTROL, AF_AVAILABLE_MODES) = - { "afAvailableModes", TYPE_BYTE } + { "afAvailableModes", TYPE_BYTE }, + TIIDX(CONTROL, AVAILABLE_VIDEO_STABILIZATION_MODES) = + { "availableVideoStabilizationModes", TYPE_BYTE } }; #undef TIDX |