summaryrefslogtreecommitdiffstats
path: root/camera/inc/TICameraParameters.h
blob: 84fa9fa954bec5bfa12574a324d4cbab434a0b45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
/*
 * Copyright (C) Texas Instruments - http://www.ti.com/
 *
 * 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 TI_CAMERA_PARAMETERS_H
#define TI_CAMERA_PARAMETERS_H

#include <utils/KeyedVector.h>
#include <utils/String8.h>

namespace Ti {
namespace Camera {

///TI Specific Camera Parameters
class TICameraParameters
{
public:

// Supported Camera indexes
// Example value: "0,1,2,3", where 0-primary, 1-secondary1, 2-secondary2, 3-sterocamera
static const  char KEY_SUPPORTED_CAMERAS[];
// Select logical Camera index
static const char KEY_CAMERA[];
static const char KEY_CAMERA_NAME[];
static const char  KEY_BURST[];
static const  char KEY_CAP_MODE[];
static const  char KEY_CAP_MODE_VALUES[];
static const  char KEY_VNF[];
static const  char KEY_VNF_SUPPORTED[];
static const  char KEY_SATURATION[];
static const  char KEY_BRIGHTNESS[];
static const  char KEY_SUPPORTED_EXPOSURE[];
static const  char KEY_EXPOSURE_MODE[];
static const  char KEY_SUPPORTED_MANUAL_EXPOSURE_MIN[];
static const  char KEY_SUPPORTED_MANUAL_EXPOSURE_MAX[];
static const  char KEY_SUPPORTED_MANUAL_EXPOSURE_STEP[];
static const  char KEY_SUPPORTED_MANUAL_GAIN_ISO_MIN[];
static const  char KEY_SUPPORTED_MANUAL_GAIN_ISO_MAX[];
static const  char KEY_SUPPORTED_MANUAL_GAIN_ISO_STEP[];
static const  char KEY_MANUAL_EXPOSURE[];
static const  char KEY_MANUAL_EXPOSURE_RIGHT[];
static const  char KEY_MANUAL_GAIN_ISO[];
static const  char KEY_MANUAL_GAIN_ISO_RIGHT[];
static const  char KEY_CONTRAST[];
static const  char KEY_SHARPNESS[];
static const  char KEY_ISO[];
static const  char KEY_SUPPORTED_ISO_VALUES[];
static const  char KEY_SUPPORTED_IPP[];
static const  char KEY_IPP[];
static const  char KEY_METERING_MODE[];
static const char  KEY_EXP_BRACKETING_RANGE[];
static const char  KEY_EXP_GAIN_BRACKETING_RANGE[];
static const char  KEY_ZOOM_BRACKETING_RANGE[];
static const char  KEY_TEMP_BRACKETING[];
static const char  KEY_TEMP_BRACKETING_RANGE_POS[];
static const char  KEY_TEMP_BRACKETING_RANGE_NEG[];
static const char  KEY_FLUSH_SHOT_CONFIG_QUEUE[];
static const char  KEY_SHUTTER_ENABLE[];
static const char  KEY_MEASUREMENT_ENABLE[];
static const char  KEY_INITIAL_VALUES[];
static const char  KEY_GBCE[];
static const char  KEY_GBCE_SUPPORTED[];
static const char  KEY_GLBCE[];
static const char  KEY_GLBCE_SUPPORTED[];
static const char  KEY_FRAMERATE_RANGES_EXT_SUPPORTED[];
static const char  KEY_FRAMERATES_EXT_SUPPORTED[];

// TI recording hint to notify camera adapters of possible recording
static const char  KEY_RECORDING_HINT[];
static const char  KEY_AUTO_FOCUS_LOCK[];
static const char  KEY_CURRENT_ISO[];

static const char KEY_SENSOR_ORIENTATION[];

//TI extensions for camera capabilies
static const char INITIAL_VALUES_TRUE[];
static const char INITIAL_VALUES_FALSE[];

//  TI extensions to add values for ManualConvergence and AutoConvergence mode
static const char KEY_AUTOCONVERGENCE_MODE[];
static const char KEY_AUTOCONVERGENCE_MODE_VALUES[];
static const char KEY_MANUAL_CONVERGENCE[];
static const char KEY_SUPPORTED_MANUAL_CONVERGENCE_MIN[];
static const char KEY_SUPPORTED_MANUAL_CONVERGENCE_MAX[];
static const char KEY_SUPPORTED_MANUAL_CONVERGENCE_STEP[];

// TI extensions to add Min frame rate Values
static const char VIDEO_MINFRAMERATE_5[];
static const char VIDEO_MINFRAMERATE_10[];
static const char VIDEO_MINFRAMERATE_15[];
static const char VIDEO_MINFRAMERATE_20[];
static const char VIDEO_MINFRAMERATE_24[];
static const char VIDEO_MINFRAMERATE_25[];
static const char VIDEO_MINFRAMERATE_30[];
static const char VIDEO_MINFRAMERATE_33[];

//TI extensions for setting EXIF tags
static const char KEY_EXIF_MODEL[];
static const char KEY_EXIF_MAKE[];

//TI extensions for additional GPS data
static const char  KEY_GPS_MAPDATUM[];
static const char  KEY_GPS_VERSION[];
static const char  KEY_GPS_DATESTAMP[];

// TI extensions for VTC
static const char KEY_VTC_HINT[];
static const char KEY_VIDEO_ENCODER_HANDLE[];
static const char KEY_VIDEO_ENCODER_SLICE_HEIGHT[];

static const char  RAW_WIDTH[];
static const char  RAW_HEIGHT[];

//TI extensions to Image post-processing
static const char IPP_LDCNSF[];
static const char IPP_LDC[];
static const char IPP_NSF[];
static const char IPP_NONE[];

//TI extensions to camera mode
static const char HIGH_PERFORMANCE_MODE[];
static const char HIGH_QUALITY_MODE[];
static const char HIGH_QUALITY_ZSL_MODE[];
static const char CP_CAM_MODE[];
static const char VIDEO_MODE[];
static const char EXPOSURE_BRACKETING[];
static const char ZOOM_BRACKETING[];
static const char TEMP_BRACKETING[];

// TI extensions to standard android pixel formats
static const char PIXEL_FORMAT_UNUSED[];
static const char PIXEL_FORMAT_JPS[];
static const char PIXEL_FORMAT_MPO[];
static const char PIXEL_FORMAT_YUV422I_UYVY[];

// TI extensions to standard android scene mode settings
static const  char SCENE_MODE_CLOSEUP[];
static const  char SCENE_MODE_AQUA[];
static const  char SCENE_MODE_SNOWBEACH[];
static const  char SCENE_MODE_MOOD[];
static const  char SCENE_MODE_NIGHT_INDOOR[];
static const  char SCENE_MODE_DOCUMENT[];
static const  char SCENE_MODE_BARCODE[];
static const  char SCENE_MODE_VIDEO_SUPER_NIGHT[];
static const  char SCENE_MODE_VIDEO_CINE[];
static const  char SCENE_MODE_VIDEO_OLD_FILM[];

// TI extensions to standard android white balance settings.
static const  char WHITE_BALANCE_TUNGSTEN[];
static const  char WHITE_BALANCE_HORIZON[];
static const  char WHITE_BALANCE_SUNSET[];
static const  char WHITE_BALANCE_FACE[];

// TI extensions to add exposure preset modes to android api
static const  char EXPOSURE_MODE_MANUAL[];
static const  char EXPOSURE_MODE_AUTO[];
static const  char EXPOSURE_MODE_NIGHT[];
static const  char EXPOSURE_MODE_BACKLIGHT[];
static const  char EXPOSURE_MODE_SPOTLIGHT[];
static const  char EXPOSURE_MODE_SPORTS[];
static const  char EXPOSURE_MODE_SNOW[];
static const  char EXPOSURE_MODE_BEACH[];
static const  char EXPOSURE_MODE_APERTURE[];
static const  char EXPOSURE_MODE_SMALL_APERTURE[];
static const  char EXPOSURE_MODE_FACE[];

// TI extensions to standard android focus presets.
static const  char FOCUS_MODE_PORTRAIT[];
static const  char FOCUS_MODE_EXTENDED[];
static const char  FOCUS_MODE_FACE[];
static const char  FOCUS_MODE_OFF[];

// TI extensions to add iso values
static const char ISO_MODE_AUTO[];
static const char ISO_MODE_100[];
static const char ISO_MODE_200[];
static const char ISO_MODE_400[];
static const char ISO_MODE_800[];
static const char ISO_MODE_1000[];
static const char ISO_MODE_1200[];
static const char ISO_MODE_1600[];

//  TI extensions to add  values for effect settings.
static const char EFFECT_NATURAL[];
static const char EFFECT_VIVID[];
static const char EFFECT_COLOR_SWAP[];
static const char EFFECT_BLACKWHITE[];

//TI extensions for stereo frame layouts
static const char KEY_S3D_PRV_FRAME_LAYOUT[];
static const char KEY_S3D_PRV_FRAME_LAYOUT_VALUES[];
static const char KEY_S3D_CAP_FRAME_LAYOUT[];
static const char KEY_S3D_CAP_FRAME_LAYOUT_VALUES[];

//TI extensions for stereo frame layouts
static const char S3D_NONE[];
static const char S3D_TB_FULL[];
static const char S3D_SS_FULL[];
static const char S3D_TB_SUBSAMPLED[];
static const char S3D_SS_SUBSAMPLED[];

//TI extentions fo 3D resolutions
static const char KEY_SUPPORTED_PICTURE_SUBSAMPLED_SIZES[];
static const char KEY_SUPPORTED_PICTURE_TOPBOTTOM_SIZES[];
static const char KEY_SUPPORTED_PICTURE_SIDEBYSIDE_SIZES[];
static const char KEY_SUPPORTED_PREVIEW_SUBSAMPLED_SIZES[];
static const char KEY_SUPPORTED_PREVIEW_TOPBOTTOM_SIZES[];
static const char KEY_SUPPORTED_PREVIEW_SIDEBYSIDE_SIZES[];

//  TI extensions to add values for AutoConvergence settings.
static const char AUTOCONVERGENCE_MODE_DISABLE[];
static const char AUTOCONVERGENCE_MODE_FRAME[];
static const char AUTOCONVERGENCE_MODE_CENTER[];
static const char AUTOCONVERGENCE_MODE_TOUCH[];
static const char AUTOCONVERGENCE_MODE_MANUAL[];

//TI extensions for flash mode settings
static const char FLASH_MODE_FILL_IN[];

//TI extensions to add sensor orientation parameters
static const char ORIENTATION_SENSOR_NONE[];
static const char ORIENTATION_SENSOR_90[];
static const char ORIENTATION_SENSOR_180[];
static const char ORIENTATION_SENSOR_270[];


//TI values for camera direction
static const char FACING_FRONT[];
static const char FACING_BACK[];

static const char KEY_MECHANICAL_MISALIGNMENT_CORRECTION_SUPPORTED[];
static const char KEY_MECHANICAL_MISALIGNMENT_CORRECTION[];

//TI extensions for enable/disable algos
static const char KEY_ALGO_FIXED_GAMMA[];
static const char KEY_ALGO_NSF1[];
static const char KEY_ALGO_NSF2[];
static const char KEY_ALGO_SHARPENING[];
static const char KEY_ALGO_THREELINCOLORMAP[];
static const char KEY_ALGO_GIC[];

};

} // namespace Camera
} // namespace Ti

#endif