13d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel/* 23d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** Copyright 2008, The Android Open Source Project 33d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** 43d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** Licensed under the Apache License, Version 2.0 (the "License"); 53d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** you may not use this file except in compliance with the License. 63d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** You may obtain a copy of the License at 73d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** 83d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** http://www.apache.org/licenses/LICENSE-2.0 93d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** 103d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** Unless required by applicable law or agreed to in writing, software 113d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** distributed under the License is distributed on an "AS IS" BASIS, 123d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 133d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** See the License for the specific language governing permissions and 143d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel** limitations under the License. 153d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel*/ 163d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 173d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel#ifndef ANDROID_HARDWARE_QCAMERA_PARAMETERS_H 183d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel#define ANDROID_HARDWARE_QCAMERA_PARAMETERS_H 193d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 203d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel// Camera dependencies 21d4caeb73e33ec364ec36c62e2f37ba65316f7d75Jiyong Park#include <CameraParameters.h> 22d4caeb73e33ec364ec36c62e2f37ba65316f7d75Jiyong Park 23d4caeb73e33ec364ec36c62e2f37ba65316f7d75Jiyong Parkusing ::android::hardware::camera::common::V1_0::helper::CameraParameters; 24d4caeb73e33ec364ec36c62e2f37ba65316f7d75Jiyong Parkusing ::android::hardware::camera::common::V1_0::helper::Size; 253d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 263d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudelnamespace android { 273d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 283d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudelstruct FPSRange{ 293d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel int minFPS; 303d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel int maxFPS; 313d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel FPSRange(){ 323d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel minFPS=0; 333d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel maxFPS=0; 343d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel }; 353d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel FPSRange(int min,int max){ 363d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel minFPS=min; 373d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel maxFPS=max; 383d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel }; 393d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel}; 403d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudelclass QCameraParameters: public CameraParameters 413d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel{ 423d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudelpublic: 433d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel#if 1 443d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel QCameraParameters() : CameraParameters() {}; 453d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel QCameraParameters(const String8 ¶ms): CameraParameters(params) {}; 463d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel #else 473d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel QCameraParameters() : CameraParameters() {}; 483d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel QCameraParameters(const String8 ¶ms) { unflatten(params); } 493d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel#endif 503d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel ~QCameraParameters(); 513d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 523d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Supported PREVIEW/RECORDING SIZES IN HIGH FRAME RATE recording, sizes in pixels. 533d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Example value: "800x480,432x320". Read only. 543d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_HFR_SIZES[]; 553d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // The mode of preview frame rate. 563d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Example value: "frame-rate-auto, frame-rate-fixed". 573d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_PREVIEW_FRAME_RATE_MODE[]; 583d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_PREVIEW_FRAME_RATE_MODES[]; 593d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_PREVIEW_FRAME_RATE_AUTO_MODE[]; 603d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_PREVIEW_FRAME_RATE_FIXED_MODE[]; 613d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 623d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SKIN_TONE_ENHANCEMENT[] ; 633d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_SKIN_TONE_ENHANCEMENT_MODES[] ; 643d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 653d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Touch Af/AEC settings. 663d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_TOUCH_AF_AEC[]; 673d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_TOUCH_AF_AEC[]; 683d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Touch Index for AEC. 693d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_TOUCH_INDEX_AEC[]; 703d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Touch Index for AF. 713d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_TOUCH_INDEX_AF[]; 723d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Current auto scene detection mode. 733d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Example value: "off" or SCENE_DETECT_XXX constants. Read/write. 743d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SCENE_DETECT[]; 753d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Supported auto scene detection settings. 763d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Example value: "off,backlight,snow/cloudy". Read only. 773d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_SCENE_DETECT[]; 783d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Returns true if video snapshot is supported. That is, applications 793d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_FULL_VIDEO_SNAP_SUPPORTED[]; 803d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_POWER_MODE_SUPPORTED[]; 813d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 823d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_ISO_MODE[]; 833d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_ISO_MODES[]; 843d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_LENSSHADE[] ; 853d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_LENSSHADE_MODES[] ; 863d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 873d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_AUTO_EXPOSURE[]; 883d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_AUTO_EXPOSURE[]; 893d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 903d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_GPS_LATITUDE_REF[]; 913d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_GPS_LONGITUDE_REF[]; 923d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_GPS_ALTITUDE_REF[]; 933d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_GPS_STATUS[]; 943d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_EXIF_DATETIME[]; 953d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_MEMORY_COLOR_ENHANCEMENT[]; 963d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_MEM_COLOR_ENHANCE_MODES[]; 973d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 983d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 993d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_POWER_MODE[]; 1003d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1013d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_ZSL[]; 1023d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_ZSL_MODES[]; 1033d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1043d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_CAMERA_MODE[]; 1053d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1063d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_VIDEO_HIGH_FRAME_RATE[]; 1073d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_VIDEO_HIGH_FRAME_RATE_MODES[]; 1083d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_HIGH_DYNAMIC_RANGE_IMAGING[]; 1093d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_HDR_IMAGING_MODES[]; 1103d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_AE_BRACKET_HDR[]; 1113d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1123d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1133d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // DENOISE 1143d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_DENOISE[]; 1153d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_DENOISE[]; 1163d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1173d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Selectable zone AF. 1183d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SELECTABLE_ZONE_AF[]; 1193d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_SELECTABLE_ZONE_AF[]; 1203d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1213d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Face Detection 1223d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_FACE_DETECTION[]; 1233d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_FACE_DETECTION[]; 1243d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1253d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel //Redeye Reduction 1263d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_REDEYE_REDUCTION[]; 1273d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_REDEYE_REDUCTION[]; 1283d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char EFFECT_EMBOSS[]; 1293d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char EFFECT_SKETCH[]; 1303d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char EFFECT_NEON[]; 1313d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1323d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Touch AF/AEC 1333d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char TOUCH_AF_AEC_OFF[] ; 1343d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char TOUCH_AF_AEC_ON[] ; 1353d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_MODE_ASD[]; 1363d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_MODE_BACKLIGHT[]; 1373d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_MODE_FLOWERS[]; 1383d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_MODE_AR[]; 1393d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_MODE_HDR[]; 1403d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_DETECT_OFF[]; 1413d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SCENE_DETECT_ON[]; 1423d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char PIXEL_FORMAT_YUV420SP_ADRENO[]; // ADRENO 1433d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char PIXEL_FORMAT_RAW[]; 1443d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char PIXEL_FORMAT_YV12[]; // NV12 1453d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char PIXEL_FORMAT_NV12[]; //NV12 1463d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Normal focus mode. Applications should call 1473d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // CameraHardwareInterface.autoFocus to start the focus in this mode. 1483d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char FOCUS_MODE_NORMAL[]; 1493d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_AUTO[]; 1503d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_HJR[] ; 1513d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_100[]; 1523d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_200[] ; 1533d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_400[]; 1543d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_800[]; 1553d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ISO_1600[]; 1563d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Lens Shading 1573d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char LENSSHADE_ENABLE[] ; 1583d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char LENSSHADE_DISABLE[] ; 1593d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1603d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for auto exposure settings. 1613d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AUTO_EXPOSURE_FRAME_AVG[]; 1623d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AUTO_EXPOSURE_CENTER_WEIGHTED[]; 1633d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AUTO_EXPOSURE_SPOT_METERING[]; 1643d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1653d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SHARPNESS[]; 1663d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_MAX_SHARPNESS[]; 1673d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_CONTRAST[]; 1683d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_MAX_CONTRAST[]; 1693d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SATURATION[]; 1703d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_MAX_SATURATION[]; 1713d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1723d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_HISTOGRAM[] ; 1733d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_HISTOGRAM_MODES[] ; 1743d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for HISTOGRAM 1753d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char HISTOGRAM_ENABLE[] ; 1763d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char HISTOGRAM_DISABLE[] ; 1773d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1783d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for SKIN TONE ENHANCEMENT 1793d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SKIN_TONE_ENHANCEMENT_ENABLE[] ; 1803d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SKIN_TONE_ENHANCEMENT_DISABLE[] ; 1813d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1823d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Denoise 1833d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char DENOISE_OFF[] ; 1843d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char DENOISE_ON[] ; 1853d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1863d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for auto exposure settings. 1873d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SELECTABLE_ZONE_AF_AUTO[]; 1883d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SELECTABLE_ZONE_AF_SPOT_METERING[]; 1893d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SELECTABLE_ZONE_AF_CENTER_WEIGHTED[]; 1903d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char SELECTABLE_ZONE_AF_FRAME_AVERAGE[]; 1913d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1923d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Face Detection settings. 1933d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char FACE_DETECTION_OFF[]; 1943d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char FACE_DETECTION_ON[]; 1953d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 1963d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for MCE settings. 1973d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char MCE_ENABLE[]; 1983d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char MCE_DISABLE[]; 1993d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2003d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for ZSL settings. 2013d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ZSL_OFF[]; 2023d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char ZSL_ON[]; 2033d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2043d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for HDR Bracketing settings. 2053d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AE_BRACKET_HDR_OFF[]; 2063d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AE_BRACKET_HDR[]; 2073d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char AE_BRACKET[]; 2083d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2093d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Power mode settings. 2103d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char LOW_POWER[]; 2113d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char NORMAL_POWER[]; 2123d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2133d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for HFR settings. 2143d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char VIDEO_HFR_OFF[]; 2153d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char VIDEO_HFR_2X[]; 2163d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char VIDEO_HFR_3X[]; 2173d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char VIDEO_HFR_4X[]; 2183d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2193d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Redeye Reduction settings. 2203d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char REDEYE_REDUCTION_ENABLE[]; 2213d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char REDEYE_REDUCTION_DISABLE[]; 2223d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for HDR settings. 2233d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char HDR_ENABLE[]; 2243d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char HDR_DISABLE[]; 2253d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2263d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for Redeye Reduction settings. 2273d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // static const char REDEYE_REDUCTION_ENABLE[]; 2283d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // static const char REDEYE_REDUCTION_DISABLE[]; 2293d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // Values for HDR settings. 2303d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // static const char HDR_ENABLE[]; 2313d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel // static const char HDR_DISABLE[]; 2323d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2333d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2343d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SINGLE_ISP_OUTPUT_ENABLED[]; 2353d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_SUPPORTED_CAMERA_FEATURES[]; 2363d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel static const char KEY_MAX_NUM_REQUESTED_FACES[]; 2373d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2383d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel enum { 2393d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel CAMERA_ORIENTATION_UNKNOWN = 0, 2403d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel CAMERA_ORIENTATION_PORTRAIT = 1, 2413d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel CAMERA_ORIENTATION_LANDSCAPE = 2, 2423d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel }; 2433d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel int getOrientation() const; 2443d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void setOrientation(int orientation); 2453d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void getSupportedHfrSizes(Vector<Size> &sizes) const; 2463d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void setPreviewFpsRange(int minFPS,int maxFPS); 2473d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void setPreviewFrameRateMode(const char *mode); 2483d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel const char *getPreviewFrameRateMode() const; 2493d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void setTouchIndexAec(int x, int y); 2503d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void getTouchIndexAec(int *x, int *y) const; 2513d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void setTouchIndexAf(int x, int y); 2523d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void getTouchIndexAf(int *x, int *y) const; 2533d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel void getMeteringAreaCenter(int * x, int *y) const; 2543d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2553d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel}; 2563d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2573d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel}; // namespace android 2583d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel 2593d63919a23d7e7954e160c48c36713267106c3c2Thierry Strudel#endif 260