blob: fecc549e28cf6bb5ce0bd9825ac298b66e591459 [file] [log] [blame]
/*
** Copyright 2014, Samsung Electronics Co. LTD
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
#ifndef EXYNOS_CAMERA_AVAILABILITY_TABLE_H
#define EXYNOS_CAMERA_AVAILABILITY_TABLE_H
#include <hardware/camera3.h>
#include <camera/CameraMetadata.h>
/* Android ColorCorrection Static Metadata */
static uint8_t AVAILABLE_COLOR_CORRECTION_ABERRATION_MODES[] =
{
ANDROID_COLOR_CORRECTION_ABERRATION_MODE_OFF,
//ANDROID_COLOR_CORRECTION_ABERRATION_MODE_FAST,
//ANDROID_COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY,
};
/* Android Control Static Metadata */
static uint8_t AVAILABLE_ANTIBANDING_MODES[] =
{
ANDROID_CONTROL_AE_ANTIBANDING_MODE_OFF,
//ANDROID_CONTROL_AE_ANTIBANDING_MODE_50HZ,
//ANDROID_CONTROL_AE_ANTIBANDING_MODE_60HZ,
ANDROID_CONTROL_AE_ANTIBANDING_MODE_AUTO,
};
/* ANDROID_LENS_FACING_FRONT */
static uint8_t AVAILABLE_AE_MODES_FRONT[] =
{
ANDROID_CONTROL_AE_MODE_OFF,
ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH,
//ANDROID_CONTROL_AE_MODE_ON_ALWAYS_FLASH,
//ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE,
};
/* ANDROID_LENS_FACING_BACK */
static uint8_t AVAILABLE_AE_MODES_BACK[] =
{
ANDROID_CONTROL_AE_MODE_OFF,
ANDROID_CONTROL_AE_MODE_ON,
ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH,
ANDROID_CONTROL_AE_MODE_ON_ALWAYS_FLASH,
//ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE,
};
/* ANDROID_LENS_FACING_FRONT */
static uint8_t AVAILABLE_AF_MODES_FRONT[] =
{
ANDROID_CONTROL_AF_MODE_OFF,
//ANDROID_CONTROL_AF_MODE_AUTO,
//ANDROID_CONTROL_AF_MODE_MACRO,
//ANDROID_CONTROL_AF_MODE_CONTINUOUS_VIDEO,
//ANDROID_CONTROL_AF_MODE_CONTINUOUS_PICTURE,
//ANDROID_CONTROL_AF_MODE_EDOF,
};
/* ANDROID_LENS_FACING_BACK */
static uint8_t AVAILABLE_AF_MODES_BACK[] =
{
ANDROID_CONTROL_AF_MODE_OFF,
ANDROID_CONTROL_AF_MODE_AUTO,
ANDROID_CONTROL_AF_MODE_MACRO,
ANDROID_CONTROL_AF_MODE_CONTINUOUS_VIDEO,
ANDROID_CONTROL_AF_MODE_CONTINUOUS_PICTURE,
//ANDROID_CONTROL_AF_MODE_EDOF,
};
static uint8_t AVAILABLE_EFFECT_MODES[] =
{
ANDROID_CONTROL_EFFECT_MODE_OFF,
ANDROID_CONTROL_EFFECT_MODE_MONO,
ANDROID_CONTROL_EFFECT_MODE_NEGATIVE,
//ANDROID_CONTROL_EFFECT_MODE_SOLARIZE,
ANDROID_CONTROL_EFFECT_MODE_SEPIA,
ANDROID_CONTROL_EFFECT_MODE_POSTERIZE,
//ANDROID_CONTROL_EFFECT_MODE_WHITEBOARD,
//ANDROID_CONTROL_EFFECT_MODE_BLACKBOARD,
ANDROID_CONTROL_EFFECT_MODE_AQUA,
};
static uint8_t AVAILABLE_SCENE_MODES[] =
{
ANDROID_CONTROL_SCENE_MODE_DISABLED,
ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY,
//ANDROID_CONTROL_SCENE_MODE_ACTION,
//ANDROID_CONTROL_SCENE_MODE_PORTRAIT,
//ANDROID_CONTROL_SCENE_MODE_LANDSCAPE,
//ANDROID_CONTROL_SCENE_MODE_NIGHT,
//ANDROID_CONTROL_SCENE_MODE_NIGHT_PORTRAIT,
//ANDROID_CONTROL_SCENE_MODE_THEATRE,
//ANDROID_CONTROL_SCENE_MODE_BEACH,
//ANDROID_CONTROL_SCENE_MODE_SNOW,
//ANDROID_CONTROL_SCENE_MODE_SUNSET,
//ANDROID_CONTROL_SCENE_MODE_STEADYPHOTO,
//ANDROID_CONTROL_SCENE_MODE_FIREWORKS,
//ANDROID_CONTROL_SCENE_MODE_SPORTS,
//ANDROID_CONTROL_SCENE_MODE_PARTY,
//ANDROID_CONTROL_SCENE_MODE_CANDLELIGHT,
//ANDROID_CONTROL_SCENE_MODE_BARCODE,
//ANDROID_CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO,
//ANDROID_CONTROL_SCENE_MODE_HDR,
};
static uint8_t AVAILABLE_VIDEO_STABILIZATION_MODES[] =
{
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_OFF,
//ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_ON,
};
static uint8_t AVAILABLE_AWB_MODES[] =
{
ANDROID_CONTROL_AWB_MODE_OFF,
ANDROID_CONTROL_AWB_MODE_AUTO,
ANDROID_CONTROL_AWB_MODE_INCANDESCENT,
ANDROID_CONTROL_AWB_MODE_FLUORESCENT,
//ANDROID_CONTROL_AWB_MODE_WARM_FLUORESCENT,
ANDROID_CONTROL_AWB_MODE_DAYLIGHT,
ANDROID_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT,
//ANDROID_CONTROL_AWB_MODE_TWILIGHT,
//ANDROID_CONTROL_AWB_MODE_SHADE,
};
static uint8_t AVAILABLE_CONTROL_MODES[] =
{
ANDROID_CONTROL_MODE_OFF,
ANDROID_CONTROL_MODE_AUTO,
ANDROID_CONTROL_MODE_USE_SCENE_MODE,
//ANDROID_CONTROL_MODE_OFF_KEEP_STATE,
};
static uint8_t SCENE_MODE_OVERRIDES[] =
{
/* ANDROID_CONTROL_SCENE_MODE_DISABLED */
ANDROID_CONTROL_AE_MODE_ON,
ANDROID_CONTROL_AWB_MODE_AUTO,
ANDROID_CONTROL_AF_MODE_AUTO,
/* ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY */
ANDROID_CONTROL_AE_MODE_ON,
ANDROID_CONTROL_AWB_MODE_AUTO,
ANDROID_CONTROL_AF_MODE_AUTO,
/* ANDROID_CONTROL_SCENE_MODE_ACTION */
//ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AWB_MODE_AUTO,
//ANDROID_CONTROL_AF_MODE_OFF,
/* ANDROID_CONTROL_SCENE_MODE_NIGHT */
//ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AWB_MODE_AUTO,
//ANDROID_CONTROL_AF_MODE_OFF,
/* ANDROID_CONTROL_SCENE_MODE_SUNSET */
//ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AWB_MODE_DAYLIGHT,
//ANDROID_CONTROL_AF_MODE_OFF,
/* ANDROID_CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO */
//ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AWB_MODE_AUTO,
//ANDROID_CONTROL_AF_MODE_AUTO,
/* ANDROID_CONTROL_SCENE_MODE_HDR */
//ANDROID_CONTROL_AE_MODE_ON,
//ANDROID_CONTROL_AWB_MODE_AUTO,
//ANDROID_CONTROL_AF_MODE_AUTO,
};
/* Android Edge Static Metadata */
static uint8_t AVAILABLE_EDGE_MODES[] =
{
ANDROID_EDGE_MODE_OFF,
ANDROID_EDGE_MODE_FAST,
ANDROID_EDGE_MODE_HIGH_QUALITY, /* NOT supported */
};
/* Android Hot Pixel Static Metadata */
static uint8_t AVAILABLE_HOT_PIXEL_MODES[] =
{
ANDROID_HOT_PIXEL_MODE_OFF,
ANDROID_HOT_PIXEL_MODE_FAST,
ANDROID_HOT_PIXEL_MODE_HIGH_QUALITY,
};
/* Android Lens Static Metadata */
static uint8_t AVAILABLE_OPTICAL_STABILIZATION[] =
{
ANDROID_LENS_OPTICAL_STABILIZATION_MODE_OFF,
//ANDROID_LENS_OPTICAL_STABILIZATION_MODE_ON,
};
/* Android Lens Static Metadata */
static uint8_t AVAILABLE_OPTICAL_STABILIZATION_BACK[] =
{
ANDROID_LENS_OPTICAL_STABILIZATION_MODE_OFF,
// ANDROID_LENS_OPTICAL_STABILIZATION_MODE_ON,
};
/* Android Noise Reduction Static Metadata */
static uint8_t AVAILABLE_NOISE_REDUCTION_MODES[] =
{
ANDROID_NOISE_REDUCTION_MODE_OFF,
ANDROID_NOISE_REDUCTION_MODE_FAST,
ANDROID_NOISE_REDUCTION_MODE_HIGH_QUALITY, /* NOT supported */
};
/* Android Request Static Metadata */
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED */
static uint8_t AVAILABLE_CAPABILITIES_LIMITED[] =
{
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO,
};
static uint8_t AVAILABLE_CAPABILITIES_LIMITED_BURST[] =
{
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED add optional */
static uint8_t AVAILABLE_CAPABILITIES_LIMITED_OPTIONAL[] =
{
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL */
static uint8_t AVAILABLE_CAPABILITIES_FULL[] =
{
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING,
//ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY */
static uint8_t AVAILABLE_CAPABILITIES_LEGACY[] =
{
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED */
static int32_t AVAILABLE_REQUEST_KEYS_LIMITED[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_NOISE_REDUCTION_MODE,
#if 0
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
/* ETC */
ANDROID_EDGE_MODE,
ANDROID_SENSOR_TEST_PATTERN_MODE,
#endif
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
};
static int32_t AVAILABLE_REQUEST_KEYS_LIMITED_OPTIONAL[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_BLACK_LEVEL_LOCK,
ANDROID_NOISE_REDUCTION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
//ANDROID_TONEMAP_CURVE_BLUE,
//ANDROID_TONEMAP_CURVE_GREEN,
//ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
#if 0
ANDROID_COLOR_CORRECTION_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
//ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
#endif
/* ETC */
//ANDROID_DEMOSAIC_MODE, //future
ANDROID_EDGE_MODE,
//ANDROID_EDGE_STRENGTH, //future
//ANDROID_SENSOR_TEST_PATTERN_MODE,
//ANDROID_STATISTICS_HISTOGRAM_MODE, //future
//ANDROID_STATISTICS_SHARPNESS_MAP_MODE, //future
ANDROID_REQUEST_ID,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
};
static int32_t AVAILABLE_REQUEST_KEYS_LIMITED_FRONT[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_NOISE_REDUCTION_MODE,
#if 0
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_CURVE_BLUE,
ANDROID_TONEMAP_CURVE_GREEN,
ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
/* ETC */
//ANDROID_DEMOSAIC_MODE, //future
ANDROID_EDGE_MODE,
//ANDROID_EDGE_STRENGTH, //future
ANDROID_SENSOR_TEST_PATTERN_MODE,
//ANDROID_STATISTICS_HISTOGRAM_MODE, //future
//ANDROID_STATISTICS_SHARPNESS_MAP_MODE, //future
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
#endif
ANDROID_REQUEST_ID,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL */
static int32_t AVAILABLE_REQUEST_KEYS_FULL[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_CURVE_BLUE,
ANDROID_TONEMAP_CURVE_GREEN,
ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
/* ETC */
//ANDROID_DEMOSAIC_MODE, //future
ANDROID_EDGE_MODE,
//ANDROID_EDGE_STRENGTH, //future
ANDROID_NOISE_REDUCTION_MODE,
ANDROID_SENSOR_TEST_PATTERN_MODE,
//ANDROID_STATISTICS_HISTOGRAM_MODE, //future
//ANDROID_STATISTICS_SHARPNESS_MAP_MODE, //future
ANDROID_REQUEST_ID,
};
static int32_t AVAILABLE_REQUEST_KEYS_LEGACY[] =
{
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED */
static int32_t AVAILABLE_RESULT_KEYS_LIMITED[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_FLASH_STATE,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_NOISE_REDUCTION_MODE,
#if 0
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
ANDROID_SENSOR_NEUTRAL_COLOR_POINT,
ANDROID_SENSOR_GREEN_SPLIT,
ANDROID_SENSOR_NOISE_PROFILE,
/* ETC */
ANDROID_EDGE_MODE,
ANDROID_STATISTICS_SCENE_FLICKER,
ANDROID_SENSOR_TEST_PATTERN_MODE,
#endif
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
};
static int32_t AVAILABLE_RESULT_KEYS_LIMITED_OPTIONAL[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_FLASH_STATE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_STATISTICS_FACE_IDS,
ANDROID_STATISTICS_FACE_RECTANGLES,
ANDROID_STATISTICS_FACE_SCORES,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_LENS_STATE,
ANDROID_BLACK_LEVEL_LOCK,
ANDROID_NOISE_REDUCTION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
//ANDROID_TONEMAP_CURVE_BLUE,
//ANDROID_TONEMAP_CURVE_GREEN,
//ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
#if 0
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
//ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
ANDROID_SENSOR_NEUTRAL_COLOR_POINT,
ANDROID_SENSOR_GREEN_SPLIT,
ANDROID_SENSOR_NOISE_PROFILE,
#endif
/* ETC */
ANDROID_EDGE_MODE,
ANDROID_STATISTICS_SCENE_FLICKER,
//ANDROID_SENSOR_TEST_PATTERN_MODE,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
};
static int32_t AVAILABLE_RESULT_KEYS_LIMITED_FRONT[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_FLASH_STATE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_NOISE_REDUCTION_MODE,
#if 0
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_LENS_STATE,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_CURVE_BLUE,
ANDROID_TONEMAP_CURVE_GREEN,
ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
ANDROID_SENSOR_NEUTRAL_COLOR_POINT,
ANDROID_SENSOR_GREEN_SPLIT,
ANDROID_SENSOR_NOISE_PROFILE,
/* ETC */
ANDROID_EDGE_MODE,
ANDROID_STATISTICS_SCENE_FLICKER,
ANDROID_SENSOR_TEST_PATTERN_MODE,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
#endif
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL */
static int32_t AVAILABLE_RESULT_KEYS_FULL[] =
{
/* REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE */
ANDROID_CONTROL_AE_ANTIBANDING_MODE,
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,
ANDROID_CONTROL_AE_LOCK,
ANDROID_CONTROL_AE_MODE,
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,
ANDROID_CONTROL_AE_TARGET_FPS_RANGE,
ANDROID_CONTROL_AF_MODE,
ANDROID_CONTROL_AF_TRIGGER,
ANDROID_CONTROL_AWB_LOCK,
ANDROID_CONTROL_AWB_MODE,
ANDROID_CONTROL_CAPTURE_INTENT,
ANDROID_CONTROL_EFFECT_MODE,
ANDROID_CONTROL_MODE,
ANDROID_CONTROL_SCENE_MODE,
ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,
ANDROID_FLASH_MODE,
ANDROID_FLASH_STATE,
ANDROID_JPEG_GPS_COORDINATES,
ANDROID_JPEG_GPS_PROCESSING_METHOD,
ANDROID_JPEG_GPS_TIMESTAMP,
ANDROID_JPEG_ORIENTATION,
ANDROID_JPEG_QUALITY,
ANDROID_JPEG_THUMBNAIL_QUALITY,
ANDROID_JPEG_THUMBNAIL_SIZE,
ANDROID_SCALER_CROP_REGION,
ANDROID_STATISTICS_FACE_DETECT_MODE,
ANDROID_STATISTICS_FACE_IDS,
ANDROID_STATISTICS_FACE_LANDMARKS,
ANDROID_STATISTICS_FACE_RECTANGLES,
ANDROID_STATISTICS_FACE_SCORES,
ANDROID_CONTROL_AE_REGIONS,
ANDROID_CONTROL_AWB_REGIONS,
ANDROID_CONTROL_AF_REGIONS,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR */
ANDROID_SENSOR_FRAME_DURATION,
ANDROID_SENSOR_EXPOSURE_TIME,
ANDROID_SENSOR_SENSITIVITY,
ANDROID_LENS_APERTURE,
ANDROID_LENS_FILTER_DENSITY,
ANDROID_LENS_FOCAL_LENGTH,
ANDROID_LENS_FOCUS_DISTANCE,
ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
ANDROID_LENS_STATE,
ANDROID_BLACK_LEVEL_LOCK,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING */
ANDROID_TONEMAP_CURVE_BLUE,
ANDROID_TONEMAP_CURVE_GREEN,
ANDROID_TONEMAP_CURVE_RED,
ANDROID_TONEMAP_MODE,
ANDROID_COLOR_CORRECTION_GAINS,
ANDROID_COLOR_CORRECTION_TRANSFORM,
ANDROID_SHADING_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING with FULL H/W level */
ANDROID_COLOR_CORRECTION_ABERRATION_MODE,
/* REQUEST_AVAILABLE_CAPABILITIES_RAW */
ANDROID_HOT_PIXEL_MODE,
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,
ANDROID_SENSOR_NEUTRAL_COLOR_POINT,
ANDROID_SENSOR_GREEN_SPLIT,
ANDROID_SENSOR_NOISE_PROFILE,
/* ETC */
ANDROID_EDGE_MODE,
ANDROID_NOISE_REDUCTION_MODE,
ANDROID_STATISTICS_SCENE_FLICKER,
ANDROID_SENSOR_TEST_PATTERN_MODE,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY */
static int32_t AVAILABLE_RESULT_KEYS_LEGACY[] =
{
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED */
static int32_t AVAILABLE_CHARACTERISTICS_KEYS_LIMITED[] =
{
ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,
ANDROID_CONTROL_AE_AVAILABLE_MODES,
ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,
ANDROID_CONTROL_AE_COMPENSATION_RANGE,
ANDROID_CONTROL_AE_COMPENSATION_STEP,
ANDROID_CONTROL_AF_AVAILABLE_MODES,
ANDROID_CONTROL_AVAILABLE_EFFECTS,
ANDROID_CONTROL_AVAILABLE_SCENE_MODES,
ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
ANDROID_CONTROL_AWB_AVAILABLE_MODES,
ANDROID_CONTROL_MAX_REGIONS,
ANDROID_CONTROL_AE_LOCK_AVAILABLE,
ANDROID_CONTROL_AWB_LOCK_AVAILABLE,
ANDROID_CONTROL_AVAILABLE_MODES,
ANDROID_FLASH_INFO_AVAILABLE,
ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,
ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL,
ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,
ANDROID_LENS_FACING,
ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,
ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,
ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,
ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,
ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,
ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES,
ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,
ANDROID_REQUEST_PARTIAL_RESULT_COUNT,
ANDROID_REQUEST_PIPELINE_MAX_DEPTH,
ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,
ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,
ANDROID_SCALER_CROPPING_TYPE,
ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,
ANDROID_SENSOR_BLACK_LEVEL_PATTERN,
ANDROID_SENSOR_CALIBRATION_TRANSFORM1,
ANDROID_SENSOR_CALIBRATION_TRANSFORM2,
ANDROID_SENSOR_COLOR_TRANSFORM1,
ANDROID_SENSOR_COLOR_TRANSFORM2,
ANDROID_SENSOR_FORWARD_MATRIX1,
ANDROID_SENSOR_FORWARD_MATRIX2,
ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE,
ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,
ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,
ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,
ANDROID_SENSOR_INFO_PHYSICAL_SIZE,
ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,
ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,
ANDROID_SENSOR_INFO_WHITE_LEVEL,
ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,
ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,
ANDROID_SENSOR_ORIENTATION,
ANDROID_SENSOR_REFERENCE_ILLUMINANT1,
ANDROID_SENSOR_REFERENCE_ILLUMINANT2,
ANDROID_SHADING_AVAILABLE_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,
ANDROID_SYNC_MAX_LATENCY,
ANDROID_TONEMAP_MAX_CURVE_POINTS,
#if 0
ANDROID_EDGE_AVAILABLE_EDGE_MODES,
ANDROID_LENS_INFO_AVAILABLE_APERTURES,
ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,
ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,
#endif
};
static int32_t AVAILABLE_CHARACTERISTICS_KEYS_LIMITED_OPTIONAL[] =
{
ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,
ANDROID_CONTROL_AE_AVAILABLE_MODES,
ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,
ANDROID_CONTROL_AE_COMPENSATION_RANGE,
ANDROID_CONTROL_AE_COMPENSATION_STEP,
ANDROID_CONTROL_AF_AVAILABLE_MODES,
ANDROID_CONTROL_AVAILABLE_EFFECTS,
ANDROID_CONTROL_AVAILABLE_SCENE_MODES,
ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
ANDROID_CONTROL_AWB_AVAILABLE_MODES,
ANDROID_CONTROL_MAX_REGIONS,
ANDROID_CONTROL_AE_LOCK_AVAILABLE,
ANDROID_CONTROL_AWB_LOCK_AVAILABLE,
ANDROID_CONTROL_AVAILABLE_MODES,
ANDROID_FLASH_INFO_AVAILABLE,
ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,
ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL,
ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,
ANDROID_LENS_FACING,
ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,
ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,
ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,
ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,
ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,
ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES,
ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,
ANDROID_REQUEST_PARTIAL_RESULT_COUNT,
ANDROID_REQUEST_PIPELINE_MAX_DEPTH,
ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,
ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,
ANDROID_SCALER_CROPPING_TYPE,
ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,
ANDROID_SENSOR_BLACK_LEVEL_PATTERN,
ANDROID_SENSOR_CALIBRATION_TRANSFORM1,
ANDROID_SENSOR_CALIBRATION_TRANSFORM2,
ANDROID_SENSOR_COLOR_TRANSFORM1,
ANDROID_SENSOR_COLOR_TRANSFORM2,
ANDROID_SENSOR_FORWARD_MATRIX1,
ANDROID_SENSOR_FORWARD_MATRIX2,
ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE,
ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,
ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,
ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,
ANDROID_SENSOR_INFO_PHYSICAL_SIZE,
ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,
ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,
ANDROID_SENSOR_INFO_WHITE_LEVEL,
ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,
ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,
ANDROID_SENSOR_ORIENTATION,
ANDROID_SENSOR_REFERENCE_ILLUMINANT1,
ANDROID_SENSOR_REFERENCE_ILLUMINANT2,
ANDROID_SHADING_AVAILABLE_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,
ANDROID_SYNC_MAX_LATENCY,
ANDROID_TONEMAP_MAX_CURVE_POINTS,
ANDROID_EDGE_AVAILABLE_EDGE_MODES,
ANDROID_LENS_INFO_AVAILABLE_APERTURES,
ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,
ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL */
static int32_t AVAILABLE_CHARACTERISTICS_KEYS_FULL[] =
{
ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,
ANDROID_CONTROL_AE_AVAILABLE_MODES,
ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,
ANDROID_CONTROL_AE_COMPENSATION_RANGE,
ANDROID_CONTROL_AE_COMPENSATION_STEP,
ANDROID_CONTROL_AF_AVAILABLE_MODES,
ANDROID_CONTROL_AVAILABLE_EFFECTS,
ANDROID_CONTROL_AVAILABLE_SCENE_MODES,
ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
ANDROID_CONTROL_AWB_AVAILABLE_MODES,
ANDROID_CONTROL_MAX_REGIONS,
ANDROID_CONTROL_AE_LOCK_AVAILABLE,
ANDROID_CONTROL_AWB_LOCK_AVAILABLE,
ANDROID_CONTROL_AVAILABLE_MODES,
ANDROID_EDGE_AVAILABLE_EDGE_MODES,
ANDROID_FLASH_INFO_AVAILABLE,
ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,
ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL,
ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,
ANDROID_LENS_FACING,
ANDROID_LENS_INFO_AVAILABLE_APERTURES,
ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,
ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,
ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,
ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,
ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,
ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,
ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
ANDROID_REQUEST_AVAILABLE_CAPABILITIES,
ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,
ANDROID_REQUEST_PARTIAL_RESULT_COUNT,
ANDROID_REQUEST_PIPELINE_MAX_DEPTH,
ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,
ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,
ANDROID_SCALER_CROPPING_TYPE,
ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,
ANDROID_SENSOR_BLACK_LEVEL_PATTERN,
ANDROID_SENSOR_CALIBRATION_TRANSFORM1,
ANDROID_SENSOR_CALIBRATION_TRANSFORM2,
ANDROID_SENSOR_COLOR_TRANSFORM1,
ANDROID_SENSOR_COLOR_TRANSFORM2,
ANDROID_SENSOR_FORWARD_MATRIX1,
ANDROID_SENSOR_FORWARD_MATRIX2,
ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE,
ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,
ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,
ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,
ANDROID_SENSOR_INFO_PHYSICAL_SIZE,
ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,
ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,
ANDROID_SENSOR_INFO_WHITE_LEVEL,
ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,
ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,
ANDROID_SENSOR_ORIENTATION,
ANDROID_SENSOR_REFERENCE_ILLUMINANT1,
ANDROID_SENSOR_REFERENCE_ILLUMINANT2,
ANDROID_SHADING_AVAILABLE_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,
ANDROID_SYNC_MAX_LATENCY,
ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,
ANDROID_TONEMAP_MAX_CURVE_POINTS,
};
/* ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY */
static int32_t AVAILABLE_CHARACTERISTICS_KEYS_LEGACY[] =
{
};
/* Android Scaler Static Metadata */
static int64_t AVAILABLE_STALL_DURATIONS[] =
{
};
static int32_t YUV_FORMATS[] =
{
HAL_PIXEL_FORMAT_RGBA_8888,
HAL_PIXEL_FORMAT_YCbCr_420_888,
};
static int32_t STALL_FORMATS[] =
{
HAL_PIXEL_FORMAT_BLOB,
};
static int32_t RAW_FORMATS[] =
{
HAL_PIXEL_FORMAT_RAW16,
};
/* Android Sensor Static Metadata */
static int32_t AVAILABLE_TEST_PATTERN_MODES[] =
{
ANDROID_SENSOR_TEST_PATTERN_MODE_OFF,
//ANDROID_SENSOR_TEST_PATTERN_MODE_SOLID_COLOR,
//ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS,
//ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY,
//ANDROID_SENSOR_TEST_PATTERN_MODE_PN9,
//ANDROID_SENSOR_TEST_PATTERN_MODE_CUSTOM1,
};
/* Android Statistics Static Metadata */
static uint8_t AVAILABLE_FACE_DETECT_MODES[] =
{
ANDROID_STATISTICS_FACE_DETECT_MODE_OFF,
ANDROID_STATISTICS_FACE_DETECT_MODE_SIMPLE,
//ANDROID_STATISTICS_FACE_DETECT_MODE_FULL,
};
static uint8_t AVAILABLE_HOT_PIXEL_MAP_MODES[] =
{
ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_OFF,
//ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_ON,
};
static uint8_t SHADING_AVAILABLE_MODES[] =
{
ANDROID_SHADING_MODE_OFF,
ANDROID_SHADING_MODE_FAST,
//ANDROID_SHADING_MODE_HIGH_QUALITY,
};
static uint8_t AVAILABLE_LENS_SHADING_MAP_MODES[] =
{
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_OFF,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_ON,
};
/* Android Tone Map Static Metadata */
static uint8_t AVAILABLE_TONE_MAP_MODES[] =
{
//ANDROID_TONEMAP_MODE_CONTRAST_CURVE,
ANDROID_TONEMAP_MODE_FAST,
ANDROID_TONEMAP_MODE_HIGH_QUALITY,
ANDROID_TONEMAP_MODE_GAMMA_VALUE,
ANDROID_TONEMAP_MODE_PRESET_CURVE,
};
/* Android LED Static Metadata */
static uint8_t AVAILABLE_LEDS[] =
{
};
#ifdef SAMSUNG_CONTROL_METERING
typedef enum camera_metadata_enum_samsung_android_control_metering_mode {
SAMSUNG_ANDROID_CONTROL_METERING_MODE_CENTER = 0,
SAMSUNG_ANDROID_CONTROL_METERING_MODE_SPOT,
SAMSUNG_ANDROID_CONTROL_METERING_MODE_MATRIX,
SAMSUNG_ANDROID_CONTROL_METERING_MODE_MANUAL,
} camera_metadata_enum_samsung_android_control_metering_mode_t;
static int32_t AVAILABLE_VENDOR_METERING_MODES[] =
{
(int32_t)SAMSUNG_ANDROID_CONTROL_METERING_MODE_CENTER,
(int32_t)SAMSUNG_ANDROID_CONTROL_METERING_MODE_SPOT,
(int32_t)SAMSUNG_ANDROID_CONTROL_METERING_MODE_MATRIX,
(int32_t)SAMSUNG_ANDROID_CONTROL_METERING_MODE_MANUAL,
};
#endif
#ifdef SAMSUNG_OIS
typedef enum camera_metadata_enum_samsung_android_lens_ois_mode {
SAMSUNG_ANDROID_LENS_OPTICAL_STABILIZATION_OPERATION_MODE_PICTURE = 0,
SAMSUNG_ANDROID_LENS_OPTICAL_STABILIZATION_OPERATION_MODE_VIDEO,
} camera_metadata_enum_samsung_android_lens_ois_mode_t;
static int32_t AVAILABLE_VENDOR_OIS_MODES[] =
{
(int32_t)SAMSUNG_ANDROID_LENS_OPTICAL_STABILIZATION_OPERATION_MODE_PICTURE,
(int32_t)SAMSUNG_ANDROID_LENS_OPTICAL_STABILIZATION_OPERATION_MODE_VIDEO,
};
#endif
#endif