blob: 9b2725e9d949619bb0d8e0295084101819b61ea2 [file] [log] [blame]
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001<!DOCTYPE html>
2<html>
3<!-- Copyright (C) 2012 The Android Open Source Project
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16-->
17<head>
18 <!-- automatically generated from html.mako. do NOT edit directly -->
19 <meta charset="utf-8" />
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070020 <title>Android Camera HAL3.0 Properties</title>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080021 <style type="text/css">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070022 body { background-color: #f7f7f7; font-family: Roboto, sans-serif;}
23 h1 { color: #333333; }
24 h2 { color: #333333; }
25 a:link { color: #258aaf; text-decoration: none}
26 a:hover { color: #459aaf; text-decoration: underline }
27 a:visited { color: #154a5f; text-decoration: none}
28 .section { color: #eeeeee; font-size: 1.5em; font-weight: bold; background-color: #888888; padding: 0.5em 0em 0.5em 0.5em; border-width: thick thin thin thin; border-color: #111111 #777777 #777777 #777777}
29 .kind { color: #eeeeee; font-size: 1.2em; font-weight: bold; padding-left: 1.5em; background-color: #aaaaaa }
30 .entry { background-color: #f0f0f0 }
31 .entries_header { background-color: #dddddd; text-align: center}
32
33 /* toc style */
34 .toc_section_header { font-size:1.3em; }
35 .toc_kind_header { font-size:1.2em; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080036
37 /* table column sizes */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070038 table { border-collapse:collapse; table-layout: fixed; width: 100%; word-wrap: break-word }
39 td,th { border: 1px solid; border-color: #aaaaaa; padding-left: 0.5em; padding-right: 0.5em }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080040 .th_name { width: 20% }
41 .th_units { width: 10% }
42 .th_tags { width: 5% }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070043 .th_notes { width: 25% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080044 .th_type { width: 20% }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070045 .th_description { width: 20% }
46 .th_range { width: 10% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080047 td { font-size: 0.9em; }
48
49 /* hide the first thead, we need it there only to enforce column sizes */
50 .thead_dummy { visibility: hidden; }
51
52 /* Entry flair */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070053 .entry_name { color: #333333; padding-left:1.0em; font-size:1.1em; font-family: monospace; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080054
55 /* Entry type flair */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070056 .entry_type_name { font-size:1.1em; color: #669900; font-weight: bold;}
57 .entry_type_name_enum:after { color: #669900; font-weight: bold; content:" (enum)" }
58 .entry_type_visibility { font-weight: bolder; padding-left:1em}
Igor Murashkin08b8aad2012-11-29 15:23:03 -080059 .entry_type_enum_name { font-family: monospace; font-weight: bolder; }
60 .entry_type_enum_notes:before { content:" - " }
61 .entry_type_enum_value:before { content:" = " }
62 .entry_type_enum_value { font-family: monospace; }
63 .entry ul { margin: 0 0 0 0; list-style-position: inside; padding-left: 0.5em; }
64 .entry ul li { padding: 0 0 0 0; margin: 0 0 0 0;}
65
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070066 /* Entry visibility flair */
67
Igor Murashkin08b8aad2012-11-29 15:23:03 -080068 /* Entry tags flair */
69 .entry_tags ul { list-style-type: none; }
70
71
72 /* TODO: generate abbr element for each tag link? */
73 /* TODO for each x.y.z try to link it to the entry */
74
75 </style>
76
77 <style>
78
79 {
80 /* broken...
81 supposedly there is a bug in chrome that it lays out tables before
82 it knows its being printed, so the page-break-* styles are ignored
83 */
84 tr { page-break-after: always; page-break-inside: avoid; }
85 }
86
87 </style>
88</head>
89
90
91
Igor Murashkin08b8aad2012-11-29 15:23:03 -080092<body>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070093 <h1>Android Camera HAL3.0 Properties</h1>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080094
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070095
Igor Murashkin08b8aad2012-11-29 15:23:03 -080096 <h2>Table of Contents</h2>
97 <ul class="toc">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070098 <li><a href="#tag_index" class="toc_section_header">Tags</a></li>
99 <li>
100 <span class="toc_section_header"><a href="#section_colorCorrection">colorCorrection</a></span>
101 <ul class="toc_section">
102 <li>
103 <span class="toc_kind_header">controls</span>
104 <ul class="toc_section">
105 <li><a href="#controls_android.colorCorrection.mode">android.colorCorrection.mode</a></li>
106 <li><a href="#controls_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700107 <li><a href="#controls_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700108 </ul>
109 </li>
110 <li>
111 <span class="toc_kind_header">dynamic</span>
112 <ul class="toc_section">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700113 <li><a href="#dynamic_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
114 <li><a href="#dynamic_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700115 </ul>
116 </li>
117 </ul> <!-- toc_section -->
118 </li>
119 <li>
120 <span class="toc_section_header"><a href="#section_control">control</a></span>
121 <ul class="toc_section">
122 <li>
123 <span class="toc_kind_header">controls</span>
124 <ul class="toc_section">
125 <li><a href="#controls_android.control.aeAntibandingMode">android.control.aeAntibandingMode</a></li>
126 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a></li>
127 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a></li>
128 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a></li>
129 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a></li>
130 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a></li>
131 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a></li>
132 <li><a href="#controls_android.control.afMode">android.control.afMode</a></li>
133 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a></li>
134 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a></li>
135 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a></li>
136 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a></li>
137 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a></li>
138 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a></li>
139 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a></li>
140 <li><a href="#controls_android.control.mode">android.control.mode</a></li>
141 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a></li>
142 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a></li>
143 </ul>
144 </li>
145 <li>
146 <span class="toc_kind_header">static</span>
147 <ul class="toc_section">
148 <li><a href="#static_android.control.aeAvailableAntibandingModes">android.control.aeAvailableAntibandingModes</a></li>
149 <li><a href="#static_android.control.aeAvailableModes">android.control.aeAvailableModes</a></li>
150 <li><a href="#static_android.control.aeAvailableTargetFpsRanges">android.control.aeAvailableTargetFpsRanges</a></li>
151 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a></li>
152 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a></li>
153 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a></li>
154 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a></li>
155 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a></li>
156 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a></li>
157 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a></li>
158 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a></li>
159 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a></li>
160 </ul>
161 </li>
162 <li>
163 <span class="toc_kind_header">dynamic</span>
164 <ul class="toc_section">
165 <li><a href="#dynamic_android.control.aePrecaptureId">android.control.aePrecaptureId</a></li>
166 <li><a href="#dynamic_android.control.aeRegions">android.control.aeRegions</a></li>
167 <li><a href="#dynamic_android.control.aeState">android.control.aeState</a></li>
168 <li><a href="#dynamic_android.control.afMode">android.control.afMode</a></li>
169 <li><a href="#dynamic_android.control.afRegions">android.control.afRegions</a></li>
170 <li><a href="#dynamic_android.control.afState">android.control.afState</a></li>
171 <li><a href="#dynamic_android.control.afTriggerId">android.control.afTriggerId</a></li>
172 <li><a href="#dynamic_android.control.awbMode">android.control.awbMode</a></li>
173 <li><a href="#dynamic_android.control.awbRegions">android.control.awbRegions</a></li>
174 <li><a href="#dynamic_android.control.awbState">android.control.awbState</a></li>
175 <li><a href="#dynamic_android.control.mode">android.control.mode</a></li>
176 </ul>
177 </li>
178 </ul> <!-- toc_section -->
179 </li>
180 <li>
181 <span class="toc_section_header"><a href="#section_demosaic">demosaic</a></span>
182 <ul class="toc_section">
183 <li>
184 <span class="toc_kind_header">controls</span>
185 <ul class="toc_section">
186 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a></li>
187 </ul>
188 </li>
189 </ul> <!-- toc_section -->
190 </li>
191 <li>
192 <span class="toc_section_header"><a href="#section_edge">edge</a></span>
193 <ul class="toc_section">
194 <li>
195 <span class="toc_kind_header">controls</span>
196 <ul class="toc_section">
197 <li><a href="#controls_android.edge.mode">android.edge.mode</a></li>
198 <li><a href="#controls_android.edge.strength">android.edge.strength</a></li>
199 </ul>
200 </li>
201 <li>
202 <span class="toc_kind_header">dynamic</span>
203 <ul class="toc_section">
204 <li><a href="#dynamic_android.edge.mode">android.edge.mode</a></li>
205 </ul>
206 </li>
207 </ul> <!-- toc_section -->
208 </li>
209 <li>
210 <span class="toc_section_header"><a href="#section_flash">flash</a></span>
211 <ul class="toc_section">
212 <li>
213 <span class="toc_kind_header">controls</span>
214 <ul class="toc_section">
215 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a></li>
216 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a></li>
217 <li><a href="#controls_android.flash.mode">android.flash.mode</a></li>
218 </ul>
219 </li>
220 <li>
221 <span class="toc_kind_header">static</span>
222 <ul class="toc_section">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800223
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700224 <li><a href="#static_android.flash.info.available">android.flash.info.available</a></li>
225 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800226
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700227 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a></li>
228 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a></li>
229 </ul>
230 </li>
231 <li>
232 <span class="toc_kind_header">dynamic</span>
233 <ul class="toc_section">
234 <li><a href="#dynamic_android.flash.firingPower">android.flash.firingPower</a></li>
235 <li><a href="#dynamic_android.flash.firingTime">android.flash.firingTime</a></li>
236 <li><a href="#dynamic_android.flash.mode">android.flash.mode</a></li>
237 <li><a href="#dynamic_android.flash.state">android.flash.state</a></li>
238 </ul>
239 </li>
240 </ul> <!-- toc_section -->
241 </li>
242 <li>
243 <span class="toc_section_header"><a href="#section_geometric">geometric</a></span>
244 <ul class="toc_section">
245 <li>
246 <span class="toc_kind_header">controls</span>
247 <ul class="toc_section">
248 <li><a href="#controls_android.geometric.mode">android.geometric.mode</a></li>
249 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a></li>
250 </ul>
251 </li>
252 </ul> <!-- toc_section -->
253 </li>
254 <li>
255 <span class="toc_section_header"><a href="#section_hotPixel">hotPixel</a></span>
256 <ul class="toc_section">
257 <li>
258 <span class="toc_kind_header">controls</span>
259 <ul class="toc_section">
260 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a></li>
261 </ul>
262 </li>
263 <li>
264 <span class="toc_kind_header">static</span>
265 <ul class="toc_section">
266
267 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a></li>
268
269 </ul>
270 </li>
271 <li>
272 <span class="toc_kind_header">dynamic</span>
273 <ul class="toc_section">
274 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a></li>
275 </ul>
276 </li>
277 </ul> <!-- toc_section -->
278 </li>
279 <li>
280 <span class="toc_section_header"><a href="#section_jpeg">jpeg</a></span>
281 <ul class="toc_section">
282 <li>
283 <span class="toc_kind_header">controls</span>
284 <ul class="toc_section">
285 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
286 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
287 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
288 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a></li>
289 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a></li>
290 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
291 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
292 </ul>
293 </li>
294 <li>
295 <span class="toc_kind_header">static</span>
296 <ul class="toc_section">
297 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a></li>
298 <li><a href="#static_android.jpeg.maxSize">android.jpeg.maxSize</a></li>
299 </ul>
300 </li>
301 <li>
302 <span class="toc_kind_header">dynamic</span>
303 <ul class="toc_section">
304 <li><a href="#dynamic_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
305 <li><a href="#dynamic_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
306 <li><a href="#dynamic_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
307 <li><a href="#dynamic_android.jpeg.orientation">android.jpeg.orientation</a></li>
308 <li><a href="#dynamic_android.jpeg.quality">android.jpeg.quality</a></li>
309 <li><a href="#dynamic_android.jpeg.size">android.jpeg.size</a></li>
310 <li><a href="#dynamic_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
311 <li><a href="#dynamic_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
312 </ul>
313 </li>
314 </ul> <!-- toc_section -->
315 </li>
316 <li>
317 <span class="toc_section_header"><a href="#section_lens">lens</a></span>
318 <ul class="toc_section">
319 <li>
320 <span class="toc_kind_header">controls</span>
321 <ul class="toc_section">
322 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a></li>
323 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a></li>
324 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a></li>
325 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a></li>
326 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
327 </ul>
328 </li>
329 <li>
330 <span class="toc_kind_header">static</span>
331 <ul class="toc_section">
332
333 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a></li>
334 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a></li>
335 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a></li>
336 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a></li>
337 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a></li>
338 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a></li>
339 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a></li>
340 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700341 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a></li>
342
343 <li><a href="#static_android.lens.facing">android.lens.facing</a></li>
344 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a></li>
345 <li><a href="#static_android.lens.position">android.lens.position</a></li>
346 </ul>
347 </li>
348 <li>
349 <span class="toc_kind_header">dynamic</span>
350 <ul class="toc_section">
351 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a></li>
352 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a></li>
353 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a></li>
354 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a></li>
355 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a></li>
356 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
357 <li><a href="#dynamic_android.lens.state">android.lens.state</a></li>
358 </ul>
359 </li>
360 </ul> <!-- toc_section -->
361 </li>
362 <li>
363 <span class="toc_section_header"><a href="#section_noiseReduction">noiseReduction</a></span>
364 <ul class="toc_section">
365 <li>
366 <span class="toc_kind_header">controls</span>
367 <ul class="toc_section">
368 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
369 <li><a href="#controls_android.noiseReduction.strength">android.noiseReduction.strength</a></li>
370 </ul>
371 </li>
372 <li>
373 <span class="toc_kind_header">dynamic</span>
374 <ul class="toc_section">
375 <li><a href="#dynamic_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
376 </ul>
377 </li>
378 </ul> <!-- toc_section -->
379 </li>
380 <li>
381 <span class="toc_section_header"><a href="#section_quirks">quirks</a></span>
382 <ul class="toc_section">
383 <li>
384 <span class="toc_kind_header">static</span>
385 <ul class="toc_section">
386 <li><a href="#static_android.quirks.meteringCropRegion">android.quirks.meteringCropRegion</a></li>
387 <li><a href="#static_android.quirks.triggerAfWithAuto">android.quirks.triggerAfWithAuto</a></li>
388 <li><a href="#static_android.quirks.useZslFormat">android.quirks.useZslFormat</a></li>
389 </ul>
390 </li>
391 </ul> <!-- toc_section -->
392 </li>
393 <li>
394 <span class="toc_section_header"><a href="#section_request">request</a></span>
395 <ul class="toc_section">
396 <li>
397 <span class="toc_kind_header">controls</span>
398 <ul class="toc_section">
399 <li><a href="#controls_android.request.frameCount">android.request.frameCount</a></li>
400 <li><a href="#controls_android.request.id">android.request.id</a></li>
401 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a></li>
402 <li><a href="#controls_android.request.metadataMode">android.request.metadataMode</a></li>
403 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a></li>
404 <li><a href="#controls_android.request.type">android.request.type</a></li>
405 </ul>
406 </li>
407 <li>
408 <span class="toc_kind_header">static</span>
409 <ul class="toc_section">
410 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a></li>
411 <li><a href="#static_android.request.maxNumReprocessStreams">android.request.maxNumReprocessStreams</a></li>
412 </ul>
413 </li>
414 <li>
415 <span class="toc_kind_header">dynamic</span>
416 <ul class="toc_section">
417 <li><a href="#dynamic_android.request.frameCount">android.request.frameCount</a></li>
418 <li><a href="#dynamic_android.request.id">android.request.id</a></li>
419 <li><a href="#dynamic_android.request.metadataMode">android.request.metadataMode</a></li>
420 <li><a href="#dynamic_android.request.outputStreams">android.request.outputStreams</a></li>
421 </ul>
422 </li>
423 </ul> <!-- toc_section -->
424 </li>
425 <li>
426 <span class="toc_section_header"><a href="#section_scaler">scaler</a></span>
427 <ul class="toc_section">
428 <li>
429 <span class="toc_kind_header">controls</span>
430 <ul class="toc_section">
431 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
432 </ul>
433 </li>
434 <li>
435 <span class="toc_kind_header">static</span>
436 <ul class="toc_section">
437 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a></li>
438 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a></li>
439 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a></li>
440 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a></li>
441 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a></li>
442 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a></li>
443 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a></li>
444 <li><a href="#static_android.scaler.availableRawSizes">android.scaler.availableRawSizes</a></li>
445 </ul>
446 </li>
447 <li>
448 <span class="toc_kind_header">dynamic</span>
449 <ul class="toc_section">
450 <li><a href="#dynamic_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
451 </ul>
452 </li>
453 </ul> <!-- toc_section -->
454 </li>
455 <li>
456 <span class="toc_section_header"><a href="#section_sensor">sensor</a></span>
457 <ul class="toc_section">
458 <li>
459 <span class="toc_kind_header">controls</span>
460 <ul class="toc_section">
461 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
462 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
463 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
464 </ul>
465 </li>
466 <li>
467 <span class="toc_kind_header">static</span>
468 <ul class="toc_section">
469
470 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700471 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700472 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a></li>
473 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a></li>
474 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a></li>
475 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a></li>
476 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a></li>
477 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a></li>
478
479 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a></li>
480 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a></li>
481 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a></li>
482 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a></li>
483 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a></li>
484 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a></li>
485 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a></li>
486 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a></li>
487 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a></li>
488 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a></li>
489 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a></li>
490 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a></li>
491 <li><a href="#static_android.sensor.referenceIlluminant2">android.sensor.referenceIlluminant2</a></li>
492 </ul>
493 </li>
494 <li>
495 <span class="toc_kind_header">dynamic</span>
496 <ul class="toc_section">
497 <li><a href="#dynamic_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
498 <li><a href="#dynamic_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
499 <li><a href="#dynamic_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
500 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a></li>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700501 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700502 </ul>
503 </li>
504 </ul> <!-- toc_section -->
505 </li>
506 <li>
507 <span class="toc_section_header"><a href="#section_shading">shading</a></span>
508 <ul class="toc_section">
509 <li>
510 <span class="toc_kind_header">controls</span>
511 <ul class="toc_section">
512 <li><a href="#controls_android.shading.mode">android.shading.mode</a></li>
513 <li><a href="#controls_android.shading.strength">android.shading.strength</a></li>
514 </ul>
515 </li>
516 <li>
517 <span class="toc_kind_header">dynamic</span>
518 <ul class="toc_section">
519 <li><a href="#dynamic_android.shading.mode">android.shading.mode</a></li>
520 </ul>
521 </li>
522 </ul> <!-- toc_section -->
523 </li>
524 <li>
525 <span class="toc_section_header"><a href="#section_statistics">statistics</a></span>
526 <ul class="toc_section">
527 <li>
528 <span class="toc_kind_header">controls</span>
529 <ul class="toc_section">
530 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
531 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
532 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700533 <li><a href="#controls_android.statistics.lensShadingMapMode">android.statistics.lensShadingMapMode</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700534 </ul>
535 </li>
536 <li>
537 <span class="toc_kind_header">static</span>
538 <ul class="toc_section">
539
540 <li><a href="#static_android.statistics.info.availableFaceDetectModes">android.statistics.info.availableFaceDetectModes</a></li>
541 <li><a href="#static_android.statistics.info.histogramBucketCount">android.statistics.info.histogramBucketCount</a></li>
542 <li><a href="#static_android.statistics.info.maxFaceCount">android.statistics.info.maxFaceCount</a></li>
543 <li><a href="#static_android.statistics.info.maxHistogramCount">android.statistics.info.maxHistogramCount</a></li>
544 <li><a href="#static_android.statistics.info.maxSharpnessMapValue">android.statistics.info.maxSharpnessMapValue</a></li>
545 <li><a href="#static_android.statistics.info.sharpnessMapSize">android.statistics.info.sharpnessMapSize</a></li>
546
547 </ul>
548 </li>
549 <li>
550 <span class="toc_kind_header">dynamic</span>
551 <ul class="toc_section">
552 <li><a href="#dynamic_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
553 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a></li>
554 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a></li>
555 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a></li>
556 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a></li>
557 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a></li>
558 <li><a href="#dynamic_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
559 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a></li>
560 <li><a href="#dynamic_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700561 <li><a href="#dynamic_android.statistics.lensShadingMap">android.statistics.lensShadingMap</a></li>
562 <li><a href="#dynamic_android.statistics.predictedColorGains">android.statistics.predictedColorGains</a></li>
563 <li><a href="#dynamic_android.statistics.predictedColorTransform">android.statistics.predictedColorTransform</a></li>
564 <li><a href="#dynamic_android.statistics.sceneFlicker">android.statistics.sceneFlicker</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700565 </ul>
566 </li>
567 </ul> <!-- toc_section -->
568 </li>
569 <li>
570 <span class="toc_section_header"><a href="#section_tonemap">tonemap</a></span>
571 <ul class="toc_section">
572 <li>
573 <span class="toc_kind_header">controls</span>
574 <ul class="toc_section">
575 <li><a href="#controls_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
576 <li><a href="#controls_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
577 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
578 <li><a href="#controls_android.tonemap.mode">android.tonemap.mode</a></li>
579 </ul>
580 </li>
581 <li>
582 <span class="toc_kind_header">static</span>
583 <ul class="toc_section">
584 <li><a href="#static_android.tonemap.maxCurvePoints">android.tonemap.maxCurvePoints</a></li>
585 </ul>
586 </li>
587 <li>
588 <span class="toc_kind_header">dynamic</span>
589 <ul class="toc_section">
590 <li><a href="#dynamic_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
591 <li><a href="#dynamic_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
592 <li><a href="#dynamic_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
593 <li><a href="#dynamic_android.tonemap.mode">android.tonemap.mode</a></li>
594 </ul>
595 </li>
596 </ul> <!-- toc_section -->
597 </li>
598 <li>
599 <span class="toc_section_header"><a href="#section_led">led</a></span>
600 <ul class="toc_section">
601 <li>
602 <span class="toc_kind_header">controls</span>
603 <ul class="toc_section">
604 <li><a href="#controls_android.led.transmit">android.led.transmit</a></li>
605 </ul>
606 </li>
607 <li>
608 <span class="toc_kind_header">dynamic</span>
609 <ul class="toc_section">
610 <li><a href="#dynamic_android.led.transmit">android.led.transmit</a></li>
611 </ul>
612 </li>
613 <li>
614 <span class="toc_kind_header">static</span>
615 <ul class="toc_section">
616 <li><a href="#static_android.led.availableLeds">android.led.availableLeds</a></li>
617 </ul>
618 </li>
619 </ul> <!-- toc_section -->
620 </li>
621 <li>
622 <span class="toc_section_header"><a href="#section_info">info</a></span>
623 <ul class="toc_section">
624 <li>
625 <span class="toc_kind_header">static</span>
626 <ul class="toc_section">
627 <li><a href="#static_android.info.supportedHardwareLevel">android.info.supportedHardwareLevel</a></li>
628 </ul>
629 </li>
630 </ul> <!-- toc_section -->
631 </li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700632 <li>
633 <span class="toc_section_header"><a href="#section_blackLevel">blackLevel</a></span>
634 <ul class="toc_section">
635 <li>
636 <span class="toc_kind_header">controls</span>
637 <ul class="toc_section">
638 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a></li>
639 </ul>
640 </li>
641 <li>
642 <span class="toc_kind_header">dynamic</span>
643 <ul class="toc_section">
644 <li><a href="#dynamic_android.blackLevel.lock">android.blackLevel.lock</a></li>
645 </ul>
646 </li>
647 </ul> <!-- toc_section -->
648 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800649 </ul>
650
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700651
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800652 <h1>Properties</h1>
653 <table class="properties">
654
655 <thead class="thead_dummy">
656 <tr>
657 <th class="th_name">Property Name</th>
658 <th class="th_type">Type</th>
659 <th class="th_description">Description</th>
660 <th class="th_units">Units</th>
661 <th class="th_range">Range</th>
662 <th class="th_notes">Notes</th>
663 <th class="th_tags">Tags</th>
664 </tr>
665 </thead> <!-- so that the first occurrence of thead is not
666 above the first occurrence of tr -->
667<!-- <namespace name="android"> -->
668 <tr><td colspan="7" id="section_colorCorrection" class="section">colorCorrection</td></tr>
669
670
671 <tr><td colspan="7" class="kind">controls</td></tr>
672
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700673 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800674 <tr>
675 <th class="th_name">Property Name</th>
676 <th class="th_type">Type</th>
677 <th class="th_description">Description</th>
678 <th class="th_units">Units</th>
679 <th class="th_range">Range</th>
680 <th class="th_notes">Notes</th>
681 <th class="th_tags">Tags</th>
682 </tr>
683 </thead>
684
685 <tbody>
686
687
688
689
690
691
692
693
694
695
696 <tr class="entry" id="controls_android.colorCorrection.mode">
697 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>mode</td>
698 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800699 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800700
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700701 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800702
703 <ul class="entry_type_enum">
704 <li>
705 <span class="entry_type_enum_name">TRANSFORM_MATRIX</span>
706 <span class="entry_type_enum_notes">Use the android.<wbr>color<wbr>Correction.<wbr>transform matrix
Zhijun He69fc0ea2013-07-17 09:42:58 -0700707 and android.<wbr>color<wbr>Correction.<wbr>gains to do color conversion</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800708 </li>
709 <li>
710 <span class="entry_type_enum_name">FAST</span>
711 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
712 bayer output</span>
713 </li>
714 <li>
715 <span class="entry_type_enum_name">HIGH_QUALITY</span>
716 <span class="entry_type_enum_notes">Frame rate may be reduced by high
717 quality</span>
718 </li>
719 </ul>
720
721 </td> <!-- entry_type -->
722
723 <td class="entry_description">
724 </td>
725
726 <td class="entry_units">
727 </td>
728
729 <td class="entry_range">
730 </td>
731
732 <td class="entry_notes">
Timothy Knight21f88802013-09-06 13:32:51 -0700733 When android.<wbr>control.<wbr>awb<wbr>Mode is not OFF,<wbr> TRANSFORM_<wbr>MATRIX
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700734 should be ignored.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800735 </td>
736
737 <td class="entry_tags">
738 </td>
739
740 </tr> <!-- end of entry -->
741
742
743 <tr class="entry" id="controls_android.colorCorrection.transform">
744 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
745 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700746 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800747 <span class="entry_type_container">x</span>
748
749 <span class="entry_type_array">
750 3 x 3
751 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700752 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700753 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800754
755
756 </td> <!-- entry_type -->
757
758 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700759 A color transform matrix to use to transform
760 from sensor RGB color space to output linear sRGB color space
761
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800762 </td>
763
764 <td class="entry_units">
765 </td>
766
767 <td class="entry_range">
768 Output values are expected to be in the range
769 (0,<wbr>1)
770 </td>
771
772 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700773 This matrix is either set by HAL when the request
774 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
775 directly by the application in the request when the
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700776 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
777<br>
778<br> In the latter case,<wbr> the HAL may round the matrix to account
Zhijun He69fc0ea2013-07-17 09:42:58 -0700779 for precision issues; the final rounded matrix should be
780 reported back in this matrix result metadata.<wbr>
781 </td>
782
783 <td class="entry_tags">
784 </td>
785
786 </tr> <!-- end of entry -->
787
788
789 <tr class="entry" id="controls_android.colorCorrection.gains">
790 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
791 <td class="entry_type">
792 <span class="entry_type_name">float</span>
793 <span class="entry_type_container">x</span>
794
795 <span class="entry_type_array">
796 4
797 </span>
798 <span class="entry_type_visibility"> [public]</span>
799 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
800
801
802 </td> <!-- entry_type -->
803
804 <td class="entry_description">
805 Gains applying to Bayer color channels for
806 white-balance
807 </td>
808
809 <td class="entry_units">
810 </td>
811
812 <td class="entry_range">
813 </td>
814
815 <td class="entry_notes">
816 The 4-channel white-balance gains are defined in
817 the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
818 for green pixels on even rows of the output,<wbr> and G_<wbr>odd
819 is the gain for greenpixels on the odd rows.<wbr> if a HAL
820 does not support a separate gain for even/<wbr>odd green channels,<wbr>
821 it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
822 G_<wbr>even in the output result metadata.<wbr>
823<br>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700824<br> This array is either set by HAL when the request
825 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
826 directly by the application in the request when the
827 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
828<br>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700829<br> The ouput should be the gains actually applied by the HAL to
830 the current frame.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800831 </td>
832
833 <td class="entry_tags">
834 </td>
835
836 </tr> <!-- end of entry -->
837
838
839
840 <!-- end of kind -->
841 </tbody>
842 <tr><td colspan="7" class="kind">dynamic</td></tr>
843
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700844 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800845 <tr>
846 <th class="th_name">Property Name</th>
847 <th class="th_type">Type</th>
848 <th class="th_description">Description</th>
849 <th class="th_units">Units</th>
850 <th class="th_range">Range</th>
851 <th class="th_notes">Notes</th>
852 <th class="th_tags">Tags</th>
853 </tr>
854 </thead>
855
856 <tbody>
857
858
859
860
861
862
863
864
865
866
Zhijun He69fc0ea2013-07-17 09:42:58 -0700867 <tr class="entry" id="dynamic_android.colorCorrection.transform">
868 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800869 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700870 <span class="entry_type_name">rational</span>
871 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800872
Zhijun He69fc0ea2013-07-17 09:42:58 -0700873 <span class="entry_type_array">
874 3 x 3
875 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700876 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700877 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800878
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800879
880 </td> <!-- entry_type -->
881
882 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700883 A color transform matrix to use to transform
884 from sensor RGB color space to output linear sRGB color space
885
886 </td>
887
888 <td class="entry_units">
889 </td>
890
891 <td class="entry_range">
892 Output values are expected to be in the range
893 (0,<wbr>1)
894 </td>
895
896 <td class="entry_notes">
897 This matrix is either set by HAL when the request
898 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
899 directly by the application in the request when the
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700900 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
901<br>
902<br> In the latter case,<wbr> the HAL may round the matrix to account
Zhijun He69fc0ea2013-07-17 09:42:58 -0700903 for precision issues; the final rounded matrix should be
904 reported back in this matrix result metadata.<wbr>
905 </td>
906
907 <td class="entry_tags">
908 </td>
909
910 </tr> <!-- end of entry -->
911
912
913 <tr class="entry" id="dynamic_android.colorCorrection.gains">
914 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
915 <td class="entry_type">
916 <span class="entry_type_name">float</span>
917 <span class="entry_type_container">x</span>
918
919 <span class="entry_type_array">
920 4
921 </span>
922 <span class="entry_type_visibility"> [public]</span>
923 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
924
925
926 </td> <!-- entry_type -->
927
928 <td class="entry_description">
929 Gains applying to Bayer color channels for
930 white-balance
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800931 </td>
932
933 <td class="entry_units">
934 </td>
935
936 <td class="entry_range">
937 </td>
938
939 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700940 The 4-channel white-balance gains are defined in
941 the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
942 for green pixels on even rows of the output,<wbr> and G_<wbr>odd
943 is the gain for greenpixels on the odd rows.<wbr> if a HAL
944 does not support a separate gain for even/<wbr>odd green channels,<wbr>
945 it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
946 G_<wbr>even in the output result metadata.<wbr>
947<br>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700948<br> This array is either set by HAL when the request
949 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
950 directly by the application in the request when the
951 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
952<br>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700953<br> The ouput should be the gains actually applied by the HAL to
954 the current frame.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800955 </td>
956
957 <td class="entry_tags">
958 </td>
959
960 </tr> <!-- end of entry -->
961
962
963
964 <!-- end of kind -->
965 </tbody>
966
967 <!-- end of section -->
968 <tr><td colspan="7" id="section_control" class="section">control</td></tr>
969
970
971 <tr><td colspan="7" class="kind">controls</td></tr>
972
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700973 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800974 <tr>
975 <th class="th_name">Property Name</th>
976 <th class="th_type">Type</th>
977 <th class="th_description">Description</th>
978 <th class="th_units">Units</th>
979 <th class="th_range">Range</th>
980 <th class="th_notes">Notes</th>
981 <th class="th_tags">Tags</th>
982 </tr>
983 </thead>
984
985 <tbody>
986
987
988
989
990
991
992
993
994
995
996 <tr class="entry" id="controls_android.control.aeAntibandingMode">
997 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Antibanding<wbr>Mode</td>
998 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800999 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001000
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001001 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001002
1003 <ul class="entry_type_enum">
1004 <li>
1005 <span class="entry_type_enum_name">OFF</span>
1006 </li>
1007 <li>
1008 <span class="entry_type_enum_name">50HZ</span>
1009 </li>
1010 <li>
1011 <span class="entry_type_enum_name">60HZ</span>
1012 </li>
1013 <li>
1014 <span class="entry_type_enum_name">AUTO</span>
1015 </li>
1016 </ul>
1017
1018 </td> <!-- entry_type -->
1019
1020 <td class="entry_description">
1021 Enum for controlling
1022 antibanding
1023 </td>
1024
1025 <td class="entry_units">
1026 </td>
1027
1028 <td class="entry_range">
1029
1030 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes
1031 </td>
1032
1033 <td class="entry_notes">
1034 </td>
1035
1036 <td class="entry_tags">
1037 </td>
1038
1039 </tr> <!-- end of entry -->
1040
1041
1042 <tr class="entry" id="controls_android.control.aeExposureCompensation">
1043 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Exposure<wbr>Compensation</td>
1044 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001045 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001046
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001047 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001048
1049
1050 </td> <!-- entry_type -->
1051
1052 <td class="entry_description">
1053 Adjustment to AE target image
1054 brightness
1055 </td>
1056
1057 <td class="entry_units">
1058 count of positive/<wbr>negative EV steps
1059 </td>
1060
1061 <td class="entry_range">
1062 </td>
1063
1064 <td class="entry_notes">
1065 For example,<wbr> if EV step is 0.<wbr>333,<wbr> '6' will mean an
1066 exposure compensation of +2 EV; -3 will mean an exposure
1067 compensation of -1
1068 </td>
1069
1070 <td class="entry_tags">
1071 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001072 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001073 </ul>
1074 </td>
1075
1076 </tr> <!-- end of entry -->
1077
1078
1079 <tr class="entry" id="controls_android.control.aeLock">
1080 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Lock</td>
1081 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001082 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001083
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001084 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001085
1086 <ul class="entry_type_enum">
1087 <li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001088 <span class="entry_type_enum_name">OFF</span>
1089 <span class="entry_type_enum_notes">Autoexposure lock is disabled; the AE algorithm
1090 is free to update its parameters.<wbr></span>
1091 </li>
1092 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001093 <span class="entry_type_enum_name">ON</span>
1094 <span class="entry_type_enum_notes">Autoexposure lock is enabled; the AE algorithm
1095 must not update the exposure and sensitivity parameters
1096 while the lock is active</span>
1097 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001098 </ul>
1099
1100 </td> <!-- entry_type -->
1101
1102 <td class="entry_description">
1103 Whether AE is currently locked to its latest
1104 calculated values
1105 </td>
1106
1107 <td class="entry_units">
1108 </td>
1109
1110 <td class="entry_range">
1111 </td>
1112
1113 <td class="entry_notes">
1114 Note that even when AE is locked,<wbr> the flash may be
1115 fired if the AE mode is ON_<wbr>AUTO_<wbr>FLASH /<wbr> ON_<wbr>ALWAYS_<wbr>FLASH /<wbr>
1116 ON_<wbr>AUTO_<wbr>FLASH_<wbr>REDEYE.<wbr>
1117 </td>
1118
1119 <td class="entry_tags">
1120 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001121 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001122 </ul>
1123 </td>
1124
1125 </tr> <!-- end of entry -->
1126
1127
1128 <tr class="entry" id="controls_android.control.aeMode">
1129 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Mode</td>
1130 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001131 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001132
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001133 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001134
1135 <ul class="entry_type_enum">
1136 <li>
1137 <span class="entry_type_enum_name">OFF</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07001138 <span class="entry_type_enum_notes">Autoexposure is disabled; sensor.<wbr>exposureTime,<wbr>
1139 sensor.<wbr>sensitivity and sensor.<wbr>frameDuration are used</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001140 </li>
1141 <li>
1142 <span class="entry_type_enum_name">ON</span>
1143 <span class="entry_type_enum_notes">Autoexposure is active,<wbr> no flash
1144 control</span>
1145 </li>
1146 <li>
1147 <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
1148 <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
1149 flash control; flash may be fired when precapture
1150 trigger is activated,<wbr> and for captures for which
1151 captureIntent = STILL_<wbr>CAPTURE</span>
1152 </li>
1153 <li>
1154 <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
1155 <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
1156 flash control for precapture trigger and always flash
1157 when captureIntent = STILL_<wbr>CAPTURE</span>
1158 </li>
1159 <li>
1160 <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
1161 <span class="entry_type_enum_notes">optional Automatic red eye reduction with flash.<wbr>
1162 If deemed necessary,<wbr> red eye reduction sequence should
1163 fire when precapture trigger is activated,<wbr> and final
1164 flash should fire when captureIntent =
1165 STILL_<wbr>CAPTURE</span>
1166 </li>
1167 </ul>
1168
1169 </td> <!-- entry_type -->
1170
1171 <td class="entry_description">
1172 Whether AE is currently updating the sensor
1173 exposure and sensitivity fields
1174 </td>
1175
1176 <td class="entry_units">
1177 </td>
1178
1179 <td class="entry_range">
1180 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes
1181 </td>
1182
1183 <td class="entry_notes">
1184 Only effective if android.<wbr>control.<wbr>mode =
1185 AUTO
1186 </td>
1187
1188 <td class="entry_tags">
1189 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001190 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001191 </ul>
1192 </td>
1193
1194 </tr> <!-- end of entry -->
1195
1196
1197 <tr class="entry" id="controls_android.control.aeRegions">
1198 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
1199 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001200 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001201 <span class="entry_type_container">x</span>
1202
1203 <span class="entry_type_array">
1204 5 x area_count
1205 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001207
1208
1209 </td> <!-- entry_type -->
1210
1211 <td class="entry_description">
1212 List of areas to use for
1213 metering
1214 </td>
1215
1216 <td class="entry_units">
1217 </td>
1218
1219 <td class="entry_range">
1220 </td>
1221
1222 <td class="entry_notes">
1223 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001224 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1225 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001226<br>
1227<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001228 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1229 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1230 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1231 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001232 should be nonnegative.<wbr>
1233<br>
1234<br> If all regions have 0 weight,<wbr> then no specific metering area
1235 needs to be used by the HAL.<wbr> If the metering region is
1236 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1237 should ignore the sections outside the region and output the
1238 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001239 </td>
1240
1241 <td class="entry_tags">
1242 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001243 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001244 </ul>
1245 </td>
1246
1247 </tr> <!-- end of entry -->
1248
1249
1250 <tr class="entry" id="controls_android.control.aeTargetFpsRange">
1251 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Target<wbr>Fps<wbr>Range</td>
1252 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001253 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001254 <span class="entry_type_container">x</span>
1255
1256 <span class="entry_type_array">
1257 2
1258 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001259 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001260
1261
1262 </td> <!-- entry_type -->
1263
1264 <td class="entry_description">
1265 Range over which fps can be adjusted to
1266 maintain exposure
1267 </td>
1268
1269 <td class="entry_units">
1270 </td>
1271
1272 <td class="entry_range">
1273 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges
1274 </td>
1275
1276 <td class="entry_notes">
1277 Only constrains AE algorithm,<wbr> not manual control
1278 of android.<wbr>sensor.<wbr>exposure<wbr>Time
1279 </td>
1280
1281 <td class="entry_tags">
1282 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001283 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001284 </ul>
1285 </td>
1286
1287 </tr> <!-- end of entry -->
1288
1289
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001290 <tr class="entry" id="controls_android.control.aePrecaptureTrigger">
1291 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Trigger</td>
1292 <td class="entry_type">
1293 <span class="entry_type_name entry_type_name_enum">byte</span>
1294
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001295 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001296
1297 <ul class="entry_type_enum">
1298 <li>
1299 <span class="entry_type_enum_name">IDLE</span>
1300 <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
1301 </li>
1302 <li>
1303 <span class="entry_type_enum_name">START</span>
1304 <span class="entry_type_enum_notes">The precapture metering sequence
1305 must be started.<wbr> The exact effect of the precapture
1306 trigger depends on the current AE mode and
1307 state.<wbr></span>
1308 </li>
1309 </ul>
1310
1311 </td> <!-- entry_type -->
1312
1313 <td class="entry_description">
1314 Whether the HAL must trigger precapture
1315 metering.<wbr>
1316 </td>
1317
1318 <td class="entry_units">
1319 </td>
1320
1321 <td class="entry_range">
1322 </td>
1323
1324 <td class="entry_notes">
1325 This entry is normally set to IDLE,<wbr> or is not
1326 included at all in the request settings.<wbr> When included and
1327 set to START,<wbr> the HAL must trigger the autoexposure
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001328 precapture metering sequence.<wbr>
1329<br>
1330<br> The effect of AE precapture trigger depends on the current
1331 AE mode and state; see the camera HAL device v3 header for
1332 details.<wbr>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001333 </td>
1334
1335 <td class="entry_tags">
1336 <ul class="entry_tags">
1337 <li><a href="#tag_BC">BC</a></li>
1338 </ul>
1339 </td>
1340
1341 </tr> <!-- end of entry -->
1342
1343
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001344 <tr class="entry" id="controls_android.control.afMode">
1345 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
1346 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001347 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001348
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001349 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001350
1351 <ul class="entry_type_enum">
1352 <li>
1353 <span class="entry_type_enum_name">OFF</span>
1354 <span class="entry_type_enum_notes">The 3A routines do not control the lens;
Zhijun He69fc0ea2013-07-17 09:42:58 -07001355 android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001356 application</span>
1357 </li>
1358 <li>
1359 <span class="entry_type_enum_name">AUTO</span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001360 <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
1361
1362 Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
1363 is fixed focus In this mode,<wbr> the lens does not move unless
1364 the autofocus trigger action is called.<wbr> When that trigger
1365 is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
1366 the outcome of the scan (FOCUSED or
1367 NOT_<wbr>FOCUSED).<wbr>
1368
1369 Triggering cancel AF resets the lens position to default,<wbr>
1370 and sets the AF state to INACTIVE.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001371 </li>
1372 <li>
1373 <span class="entry_type_enum_name">MACRO</span>
1374 <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001375 autofocus trigger action is called.<wbr>
1376
1377 When that trigger is activated,<wbr> AF must transition to
1378 ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
1379 NOT_<wbr>FOCUSED).<wbr> Triggering cancel AF resets the lens
1380 position to default,<wbr> and sets the AF state to
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001381 INACTIVE.<wbr></span>
1382 </li>
1383 <li>
1384 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
1385 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
1386 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001387 constantly-in-focus image stream.<wbr>
1388
1389 The focusing behavior should be suitable for good quality
1390 video recording; typically this means slower focus
1391 movement and no overshoots.<wbr> When the AF trigger is not
1392 involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
1393 and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
1394 states as appropriate.<wbr> When the AF trigger is activated,<wbr>
1395 the algorithm should immediately transition into
1396 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
1397 lens position until a cancel AF trigger is received.<wbr>
1398
1399 Once cancel is received,<wbr> the algorithm should transition
1400 back to INACTIVE and resume passive scan.<wbr> Note that this
1401 behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
1402 ongoing PASSIVE_<wbr>SCAN must immediately be
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001403 canceled.<wbr></span>
1404 </li>
1405 <li>
1406 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
1407 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
1408 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001409 constantly-in-focus image stream.<wbr>
1410
1411 The focusing behavior should be suitable for still image
1412 capture; typically this means focusing as fast as
1413 possible.<wbr> When the AF trigger is not involved,<wbr> the AF
1414 algorithm should start in INACTIVE state,<wbr> and then
1415 transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
1416 appropriate as it attempts to maintain focus.<wbr> When the AF
1417 trigger is activated,<wbr> the algorithm should finish its
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001418 PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001419 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
1420 lens position until a cancel AF trigger is received.<wbr>
1421
1422 When the AF cancel trigger is activated,<wbr> the algorithm
1423 should transition back to INACTIVE and then act as if it
1424 has just been started.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001425 </li>
1426 <li>
1427 <span class="entry_type_enum_name">EDOF</span>
1428 <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
1429 trigger is ignored,<wbr> AF state should always be
1430 INACTIVE.<wbr></span>
1431 </li>
1432 </ul>
1433
1434 </td> <!-- entry_type -->
1435
1436 <td class="entry_description">
1437 Whether AF is currently enabled,<wbr> and what
1438 mode it is set to
1439 </td>
1440
1441 <td class="entry_units">
1442 </td>
1443
1444 <td class="entry_range">
1445 </td>
1446
1447 <td class="entry_notes">
1448 </td>
1449
1450 <td class="entry_tags">
1451 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001452 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001453 </ul>
1454 </td>
1455
1456 </tr> <!-- end of entry -->
1457
1458
1459 <tr class="entry" id="controls_android.control.afRegions">
1460 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
1461 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001462 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001463 <span class="entry_type_container">x</span>
1464
1465 <span class="entry_type_array">
1466 5 x area_count
1467 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001468 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001469
1470
1471 </td> <!-- entry_type -->
1472
1473 <td class="entry_description">
1474 List of areas to use for focus
1475 estimation
1476 </td>
1477
1478 <td class="entry_units">
1479 </td>
1480
1481 <td class="entry_range">
1482 </td>
1483
1484 <td class="entry_notes">
1485 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001486 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1487 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001488<br>
1489<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001490 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1491 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1492 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1493 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001494 should be nonnegative.<wbr>
1495<br>
1496<br> If all regions have 0 weight,<wbr> then no specific focus area
1497 needs to be used by the HAL.<wbr> If the focusing region is
1498 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1499 should ignore the sections outside the region and output the
1500 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001501 </td>
1502
1503 <td class="entry_tags">
1504 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001505 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001506 </ul>
1507 </td>
1508
1509 </tr> <!-- end of entry -->
1510
1511
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001512 <tr class="entry" id="controls_android.control.afTrigger">
1513 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger</td>
1514 <td class="entry_type">
1515 <span class="entry_type_name entry_type_name_enum">byte</span>
1516
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001517 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001518
1519 <ul class="entry_type_enum">
1520 <li>
1521 <span class="entry_type_enum_name">IDLE</span>
1522 <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
1523 </li>
1524 <li>
1525 <span class="entry_type_enum_name">START</span>
1526 <span class="entry_type_enum_notes">Autofocus must trigger now.<wbr></span>
1527 </li>
1528 <li>
1529 <span class="entry_type_enum_name">CANCEL</span>
1530 <span class="entry_type_enum_notes">Autofocus must return to initial
1531 state,<wbr> and cancel any active trigger.<wbr></span>
1532 </li>
1533 </ul>
1534
1535 </td> <!-- entry_type -->
1536
1537 <td class="entry_description">
1538 Whether the HAL must trigger autofocus.<wbr>
1539 </td>
1540
1541 <td class="entry_units">
1542 </td>
1543
1544 <td class="entry_range">
1545 </td>
1546
1547 <td class="entry_notes">
1548 This entry is normally set to IDLE,<wbr> or is not
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001549 included at all in the request settings.<wbr>
1550<br>
1551<br> When included and set to START,<wbr> the HAL must trigger the
1552 autofocus algorithm.<wbr> The effect of AF trigger depends on the
1553 current AF mode and state; see the camera HAL device v3
1554 header for details.<wbr> When set to CANCEL,<wbr> the HAL must cancel
1555 any active trigger,<wbr> and return to initial AF state.<wbr>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001556 </td>
1557
1558 <td class="entry_tags">
1559 <ul class="entry_tags">
1560 <li><a href="#tag_BC">BC</a></li>
1561 </ul>
1562 </td>
1563
1564 </tr> <!-- end of entry -->
1565
1566
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001567 <tr class="entry" id="controls_android.control.awbLock">
1568 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Lock</td>
1569 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001570 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001571
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001572 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001573
1574 <ul class="entry_type_enum">
1575 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001576 <span class="entry_type_enum_name">OFF</span>
1577 <span class="entry_type_enum_notes">Auto-whitebalance lock is disabled; the AWB
1578 algorithm is free to update its parameters if in AUTO
1579 mode.<wbr></span>
1580 </li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001581 <li>
1582 <span class="entry_type_enum_name">ON</span>
1583 <span class="entry_type_enum_notes">Auto-whitebalance lock is enabled; the AWB
1584 algorithm must not update the exposure and sensitivity
1585 parameters while the lock is active</span>
1586 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001587 </ul>
1588
1589 </td> <!-- entry_type -->
1590
1591 <td class="entry_description">
1592 Whether AWB is currently locked to its
1593 latest calculated values
1594 </td>
1595
1596 <td class="entry_units">
1597 </td>
1598
1599 <td class="entry_range">
1600 </td>
1601
1602 <td class="entry_notes">
1603 Note that AWB lock is only meaningful for AUTO
1604 mode; in other modes,<wbr> AWB is already fixed to a specific
1605 setting
1606 </td>
1607
1608 <td class="entry_tags">
1609 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001610 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001611 </ul>
1612 </td>
1613
1614 </tr> <!-- end of entry -->
1615
1616
1617 <tr class="entry" id="controls_android.control.awbMode">
1618 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
1619 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001620 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001621
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001622 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001623
1624 <ul class="entry_type_enum">
1625 <li>
1626 <span class="entry_type_enum_name">OFF</span>
1627 </li>
1628 <li>
1629 <span class="entry_type_enum_name">AUTO</span>
1630 </li>
1631 <li>
1632 <span class="entry_type_enum_name">INCANDESCENT</span>
1633 </li>
1634 <li>
1635 <span class="entry_type_enum_name">FLUORESCENT</span>
1636 </li>
1637 <li>
1638 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
1639 </li>
1640 <li>
1641 <span class="entry_type_enum_name">DAYLIGHT</span>
1642 </li>
1643 <li>
1644 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
1645 </li>
1646 <li>
1647 <span class="entry_type_enum_name">TWILIGHT</span>
1648 </li>
1649 <li>
1650 <span class="entry_type_enum_name">SHADE</span>
1651 </li>
1652 </ul>
1653
1654 </td> <!-- entry_type -->
1655
1656 <td class="entry_description">
1657 Whether AWB is currently setting the color
1658 transform fields,<wbr> and what its illumination target
1659 is
1660 </td>
1661
1662 <td class="entry_units">
1663 </td>
1664
1665 <td class="entry_range">
1666 </td>
1667
1668 <td class="entry_notes">
1669 [BC - AWB lock,<wbr>AWB modes]
1670 </td>
1671
1672 <td class="entry_tags">
1673 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001674 <li><a href="#tag_BC">BC</a></li>
1675 <li><a href="#tag_AWB">AWB</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001676 </ul>
1677 </td>
1678
1679 </tr> <!-- end of entry -->
1680
1681
1682 <tr class="entry" id="controls_android.control.awbRegions">
1683 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
1684 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001685 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001686 <span class="entry_type_container">x</span>
1687
1688 <span class="entry_type_array">
1689 5 x area_count
1690 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001691 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001692
1693
1694 </td> <!-- entry_type -->
1695
1696 <td class="entry_description">
1697 List of areas to use for illuminant
1698 estimation
1699 </td>
1700
1701 <td class="entry_units">
1702 </td>
1703
1704 <td class="entry_range">
1705 </td>
1706
1707 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001708 Only used in AUTO mode.<wbr>
1709<br>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001710<br> Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
1711 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1712 specified coordinates.<wbr>
1713<br>
1714<br> The coordinate system is based on the active pixel array,<wbr>
1715 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1716 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1717 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1718 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001719 should be nonnegative.<wbr>
1720<br>
1721<br> If all regions have 0 weight,<wbr> then no specific metering area
1722 needs to be used by the HAL.<wbr> If the metering region is
1723 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1724 should ignore the sections outside the region and output the
1725 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001726 </td>
1727
1728 <td class="entry_tags">
1729 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001730 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001731 </ul>
1732 </td>
1733
1734 </tr> <!-- end of entry -->
1735
1736
1737 <tr class="entry" id="controls_android.control.captureIntent">
1738 <td class="entry_name">android.<wbr>control.<wbr>capture<wbr>Intent</td>
1739 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001740 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001741
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001742 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001743
1744 <ul class="entry_type_enum">
1745 <li>
1746 <span class="entry_type_enum_name">CUSTOM</span>
1747 <span class="entry_type_enum_notes">This request doesn't fall into the other
1748 categories.<wbr> Default to preview-like
1749 behavior.<wbr></span>
1750 </li>
1751 <li>
1752 <span class="entry_type_enum_name">PREVIEW</span>
1753 <span class="entry_type_enum_notes">This request is for a preview-like usecase.<wbr> The
1754 precapture trigger may be used to start off a metering
1755 w/<wbr>flash sequence</span>
1756 </li>
1757 <li>
1758 <span class="entry_type_enum_name">STILL_CAPTURE</span>
1759 <span class="entry_type_enum_notes">This request is for a still capture-type
1760 usecase.<wbr></span>
1761 </li>
1762 <li>
1763 <span class="entry_type_enum_name">VIDEO_RECORD</span>
1764 <span class="entry_type_enum_notes">This request is for a video recording
1765 usecase.<wbr></span>
1766 </li>
1767 <li>
1768 <span class="entry_type_enum_name">VIDEO_SNAPSHOT</span>
1769 <span class="entry_type_enum_notes">This request is for a video snapshot (still
1770 image while recording video) usecase</span>
1771 </li>
1772 <li>
1773 <span class="entry_type_enum_name">ZERO_SHUTTER_LAG</span>
1774 <span class="entry_type_enum_notes">This request is for a ZSL usecase; the
1775 application will stream full-resolution images and
1776 reprocess one or several later for a final
1777 capture</span>
1778 </li>
1779 </ul>
1780
1781 </td> <!-- entry_type -->
1782
1783 <td class="entry_description">
1784 Information to 3A routines about the purpose
1785 of this capture,<wbr> to help decide optimal 3A
1786 strategy
1787 </td>
1788
1789 <td class="entry_units">
1790 </td>
1791
1792 <td class="entry_range">
1793 all must be supported
1794 </td>
1795
1796 <td class="entry_notes">
1797 Only used if android.<wbr>control.<wbr>mode != OFF.<wbr>
1798 </td>
1799
1800 <td class="entry_tags">
1801 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001802 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001803 </ul>
1804 </td>
1805
1806 </tr> <!-- end of entry -->
1807
1808
1809 <tr class="entry" id="controls_android.control.effectMode">
1810 <td class="entry_name">android.<wbr>control.<wbr>effect<wbr>Mode</td>
1811 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001812 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001813
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001814 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001815
1816 <ul class="entry_type_enum">
1817 <li>
1818 <span class="entry_type_enum_name">OFF</span>
1819 </li>
1820 <li>
1821 <span class="entry_type_enum_name">MONO</span>
1822 <span class="entry_type_enum_optional">optional</span>
1823 </li>
1824 <li>
1825 <span class="entry_type_enum_name">NEGATIVE</span>
1826 <span class="entry_type_enum_optional">optional</span>
1827 </li>
1828 <li>
1829 <span class="entry_type_enum_name">SOLARIZE</span>
1830 <span class="entry_type_enum_optional">optional</span>
1831 </li>
1832 <li>
1833 <span class="entry_type_enum_name">SEPIA</span>
1834 <span class="entry_type_enum_optional">optional</span>
1835 </li>
1836 <li>
1837 <span class="entry_type_enum_name">POSTERIZE</span>
1838 <span class="entry_type_enum_optional">optional</span>
1839 </li>
1840 <li>
1841 <span class="entry_type_enum_name">WHITEBOARD</span>
1842 <span class="entry_type_enum_optional">optional</span>
1843 </li>
1844 <li>
1845 <span class="entry_type_enum_name">BLACKBOARD</span>
1846 <span class="entry_type_enum_optional">optional</span>
1847 </li>
1848 <li>
1849 <span class="entry_type_enum_name">AQUA</span>
1850 <span class="entry_type_enum_optional">optional</span>
1851 </li>
1852 </ul>
1853
1854 </td> <!-- entry_type -->
1855
1856 <td class="entry_description">
1857 Whether any special color effect is in use.<wbr>
1858 Only used if android.<wbr>control.<wbr>mode != OFF
1859 </td>
1860
1861 <td class="entry_units">
1862 </td>
1863
1864 <td class="entry_range">
1865 android.<wbr>control.<wbr>available<wbr>Effects
1866 </td>
1867
1868 <td class="entry_notes">
1869 </td>
1870
1871 <td class="entry_tags">
1872 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001873 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001874 </ul>
1875 </td>
1876
1877 </tr> <!-- end of entry -->
1878
1879
1880 <tr class="entry" id="controls_android.control.mode">
1881 <td class="entry_name">android.<wbr>control.<wbr>mode</td>
1882 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001883 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001884
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001885 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001886
1887 <ul class="entry_type_enum">
1888 <li>
1889 <span class="entry_type_enum_name">OFF</span>
1890 <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
1891 routines are disabled,<wbr> no other settings in
1892 android.<wbr>control.<wbr>* have any effect</span>
1893 </li>
1894 <li>
1895 <span class="entry_type_enum_name">AUTO</span>
1896 <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
1897 Manual control of capture parameters is disabled.<wbr> All
1898 controls in android.<wbr>control.<wbr>* besides sceneMode take
1899 effect</span>
1900 </li>
1901 <li>
1902 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
1903 <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
1904 control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
1905 controls; the HAL must ignore those settings while
1906 USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
1907 scene mode).<wbr> Other control entries are still active.<wbr>
1908 This setting can only be used if availableSceneModes !=
1909 UNSUPPORTED</span>
1910 </li>
1911 </ul>
1912
1913 </td> <!-- entry_type -->
1914
1915 <td class="entry_description">
1916 Overall mode of 3A control
1917 routines
1918 </td>
1919
1920 <td class="entry_units">
1921 </td>
1922
1923 <td class="entry_range">
1924 all must be supported
1925 </td>
1926
1927 <td class="entry_notes">
1928 </td>
1929
1930 <td class="entry_tags">
1931 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001932 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001933 </ul>
1934 </td>
1935
1936 </tr> <!-- end of entry -->
1937
1938
1939 <tr class="entry" id="controls_android.control.sceneMode">
1940 <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode</td>
1941 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001942 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001943
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001944 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001945
1946 <ul class="entry_type_enum">
1947 <li>
1948 <span class="entry_type_enum_name">UNSUPPORTED</span>
1949 <span class="entry_type_enum_value">0</span>
1950 </li>
1951 <li>
1952 <span class="entry_type_enum_name">FACE_PRIORITY</span>
1953 <span class="entry_type_enum_notes">if face detection support exists Use face
1954 detection data to drive 3A routines.<wbr> If face detection
1955 statistics are disabled,<wbr> should still operate correctly
1956 (but not return face detection statistics to the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001957 framework).<wbr>
1958
1959 Unlike the other scene modes,<wbr> aeMode,<wbr> awbMode,<wbr> and afMode
1960 remain active when FACE_<wbr>PRIORITY is set.<wbr> This is due to
1961 compatibility concerns with the old camera
1962 API</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001963 </li>
1964 <li>
1965 <span class="entry_type_enum_name">ACTION</span>
1966 <span class="entry_type_enum_optional">optional</span>
1967 </li>
1968 <li>
1969 <span class="entry_type_enum_name">PORTRAIT</span>
1970 <span class="entry_type_enum_optional">optional</span>
1971 </li>
1972 <li>
1973 <span class="entry_type_enum_name">LANDSCAPE</span>
1974 <span class="entry_type_enum_optional">optional</span>
1975 </li>
1976 <li>
1977 <span class="entry_type_enum_name">NIGHT</span>
1978 <span class="entry_type_enum_optional">optional</span>
1979 </li>
1980 <li>
1981 <span class="entry_type_enum_name">NIGHT_PORTRAIT</span>
1982 <span class="entry_type_enum_optional">optional</span>
1983 </li>
1984 <li>
1985 <span class="entry_type_enum_name">THEATRE</span>
1986 <span class="entry_type_enum_optional">optional</span>
1987 </li>
1988 <li>
1989 <span class="entry_type_enum_name">BEACH</span>
1990 <span class="entry_type_enum_optional">optional</span>
1991 </li>
1992 <li>
1993 <span class="entry_type_enum_name">SNOW</span>
1994 <span class="entry_type_enum_optional">optional</span>
1995 </li>
1996 <li>
1997 <span class="entry_type_enum_name">SUNSET</span>
1998 <span class="entry_type_enum_optional">optional</span>
1999 </li>
2000 <li>
2001 <span class="entry_type_enum_name">STEADYPHOTO</span>
2002 <span class="entry_type_enum_optional">optional</span>
2003 </li>
2004 <li>
2005 <span class="entry_type_enum_name">FIREWORKS</span>
2006 <span class="entry_type_enum_optional">optional</span>
2007 </li>
2008 <li>
2009 <span class="entry_type_enum_name">SPORTS</span>
2010 <span class="entry_type_enum_optional">optional</span>
2011 </li>
2012 <li>
2013 <span class="entry_type_enum_name">PARTY</span>
2014 <span class="entry_type_enum_optional">optional</span>
2015 </li>
2016 <li>
2017 <span class="entry_type_enum_name">CANDLELIGHT</span>
2018 <span class="entry_type_enum_optional">optional</span>
2019 </li>
2020 <li>
2021 <span class="entry_type_enum_name">BARCODE</span>
2022 <span class="entry_type_enum_optional">optional</span>
2023 </li>
2024 </ul>
2025
2026 </td> <!-- entry_type -->
2027
2028 <td class="entry_description">
2029 Which scene mode is active when
2030 android.<wbr>control.<wbr>mode = SCENE_<wbr>MODE
2031 </td>
2032
2033 <td class="entry_units">
2034 </td>
2035
2036 <td class="entry_range">
2037 android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes
2038 </td>
2039
2040 <td class="entry_notes">
2041 </td>
2042
2043 <td class="entry_tags">
2044 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002045 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002046 </ul>
2047 </td>
2048
2049 </tr> <!-- end of entry -->
2050
2051
2052 <tr class="entry" id="controls_android.control.videoStabilizationMode">
2053 <td class="entry_name">android.<wbr>control.<wbr>video<wbr>Stabilization<wbr>Mode</td>
2054 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002055 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002056
Igor Murashkinb8dc8812013-07-17 16:29:34 -07002057 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002058
2059 <ul class="entry_type_enum">
2060 <li>
2061 <span class="entry_type_enum_name">OFF</span>
2062 </li>
2063 <li>
2064 <span class="entry_type_enum_name">ON</span>
2065 </li>
2066 </ul>
2067
2068 </td> <!-- entry_type -->
2069
2070 <td class="entry_description">
2071 Whether video stabilization is
2072 active
2073 </td>
2074
2075 <td class="entry_units">
2076 </td>
2077
2078 <td class="entry_range">
2079 </td>
2080
2081 <td class="entry_notes">
2082 If enabled,<wbr> video stabilization can modify the
2083 android.<wbr>scaler.<wbr>crop<wbr>Region to keep the video stream
2084 stabilized
2085 </td>
2086
2087 <td class="entry_tags">
2088 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002089 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002090 </ul>
2091 </td>
2092
2093 </tr> <!-- end of entry -->
2094
2095
2096
2097 <!-- end of kind -->
2098 </tbody>
2099 <tr><td colspan="7" class="kind">static</td></tr>
2100
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002101 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002102 <tr>
2103 <th class="th_name">Property Name</th>
2104 <th class="th_type">Type</th>
2105 <th class="th_description">Description</th>
2106 <th class="th_units">Units</th>
2107 <th class="th_range">Range</th>
2108 <th class="th_notes">Notes</th>
2109 <th class="th_tags">Tags</th>
2110 </tr>
2111 </thead>
2112
2113 <tbody>
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124 <tr class="entry" id="static_android.control.aeAvailableAntibandingModes">
2125 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes</td>
2126 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002127 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002128 <span class="entry_type_container">x</span>
2129
2130 <span class="entry_type_array">
2131 n
2132 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002133 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002134 <div class="entry_type_notes">list of enums</div>
2135
2136
2137 </td> <!-- entry_type -->
2138
2139 <td class="entry_description">
2140 Which set of antibanding modes are
2141 supported
2142 </td>
2143
2144 <td class="entry_units">
2145 </td>
2146
2147 <td class="entry_range">
2148 </td>
2149
2150 <td class="entry_notes">
2151 </td>
2152
2153 <td class="entry_tags">
2154 </td>
2155
2156 </tr> <!-- end of entry -->
2157
2158
2159 <tr class="entry" id="static_android.control.aeAvailableModes">
2160 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes</td>
2161 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002162 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002163 <span class="entry_type_container">x</span>
2164
2165 <span class="entry_type_array">
2166 n
2167 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002168 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002169 <div class="entry_type_notes">list of enums</div>
2170
2171
2172 </td> <!-- entry_type -->
2173
2174 <td class="entry_description">
2175 Which subset of AE modes is
2176 supported
2177 </td>
2178
2179 <td class="entry_units">
2180 </td>
2181
2182 <td class="entry_range">
2183 OFF,<wbr> ON must be supported.<wbr>
2184 ON_<wbr>AUTO_<wbr>FLASH/<wbr>ON_<wbr>ALWAYS_<wbr>FLASH must be supported if flash
2185 unit is available
2186 </td>
2187
2188 <td class="entry_notes">
2189 </td>
2190
2191 <td class="entry_tags">
2192 </td>
2193
2194 </tr> <!-- end of entry -->
2195
2196
2197 <tr class="entry" id="static_android.control.aeAvailableTargetFpsRanges">
2198 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges</td>
2199 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002200 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002201 <span class="entry_type_container">x</span>
2202
2203 <span class="entry_type_array">
2204 2 x n
2205 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002207 <div class="entry_type_notes">list of pairs of frame rates</div>
2208
2209
2210 </td> <!-- entry_type -->
2211
2212 <td class="entry_description">
2213 List of frame rate ranges supported by the
2214 AE algorithm/<wbr>hardware
2215 </td>
2216
2217 <td class="entry_units">
2218 </td>
2219
2220 <td class="entry_range">
2221 </td>
2222
2223 <td class="entry_notes">
2224 </td>
2225
2226 <td class="entry_tags">
2227 </td>
2228
2229 </tr> <!-- end of entry -->
2230
2231
2232 <tr class="entry" id="static_android.control.aeCompensationRange">
2233 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Range</td>
2234 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002235 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002236 <span class="entry_type_container">x</span>
2237
2238 <span class="entry_type_array">
2239 2
2240 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002241 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002242
2243
2244 </td> <!-- entry_type -->
2245
2246 <td class="entry_description">
2247 Maximum and minimum exposure compensation
2248 setting,<wbr> in counts of
2249 android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step<wbr>Size
2250 </td>
2251
2252 <td class="entry_units">
2253 </td>
2254
2255 <td class="entry_range">
2256 At least (-2,<wbr>2)/<wbr>(exp compensation step
2257 size)
2258 </td>
2259
2260 <td class="entry_notes">
2261 </td>
2262
2263 <td class="entry_tags">
2264 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002265 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002266 </ul>
2267 </td>
2268
2269 </tr> <!-- end of entry -->
2270
2271
2272 <tr class="entry" id="static_android.control.aeCompensationStep">
2273 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step</td>
2274 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002275 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002276
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002277 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002278
2279
2280 </td> <!-- entry_type -->
2281
2282 <td class="entry_description">
2283 Smallest step by which exposure compensation
2284 can be changed
2285 </td>
2286
2287 <td class="entry_units">
2288 </td>
2289
2290 <td class="entry_range">
2291 <= 1/<wbr>2
2292 </td>
2293
2294 <td class="entry_notes">
2295 </td>
2296
2297 <td class="entry_tags">
2298 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002299 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002300 </ul>
2301 </td>
2302
2303 </tr> <!-- end of entry -->
2304
2305
2306 <tr class="entry" id="static_android.control.afAvailableModes">
2307 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Available<wbr>Modes</td>
2308 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002309 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002310 <span class="entry_type_container">x</span>
2311
2312 <span class="entry_type_array">
2313 n
2314 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002315 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002316 <div class="entry_type_notes">List of enums</div>
2317
2318
2319 </td> <!-- entry_type -->
2320
2321 <td class="entry_description">
2322 List of AF modes that can be
2323 selected
2324 </td>
2325
2326 <td class="entry_units">
2327 </td>
2328
2329 <td class="entry_range">
2330 OFF must be included.<wbr> AUTO must be supported if
2331 lens allows for changing focus
2332 </td>
2333
2334 <td class="entry_notes">
2335 </td>
2336
2337 <td class="entry_tags">
2338 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002339 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002340 </ul>
2341 </td>
2342
2343 </tr> <!-- end of entry -->
2344
2345
2346 <tr class="entry" id="static_android.control.availableEffects">
2347 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Effects</td>
2348 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002349 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002350 <span class="entry_type_container">x</span>
2351
2352 <span class="entry_type_array">
2353 n
2354 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002355 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002356 <div class="entry_type_notes">list of enums</div>
2357
2358
2359 </td> <!-- entry_type -->
2360
2361 <td class="entry_description">
2362 what subset of the full color effect enum
2363 list is supported
2364 </td>
2365
2366 <td class="entry_units">
2367 </td>
2368
2369 <td class="entry_range">
2370 OFF must be listed
2371 </td>
2372
2373 <td class="entry_notes">
2374 </td>
2375
2376 <td class="entry_tags">
2377 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002378 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002379 </ul>
2380 </td>
2381
2382 </tr> <!-- end of entry -->
2383
2384
2385 <tr class="entry" id="static_android.control.availableSceneModes">
2386 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes</td>
2387 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002388 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002389 <span class="entry_type_container">x</span>
2390
2391 <span class="entry_type_array">
2392 n
2393 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002394 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002395 <div class="entry_type_notes">list of enums from android.<wbr>control.<wbr>scene<wbr>Mode,<wbr> plus UNSUPPORTED to indicate no scene modes are supported</div>
2396
2397
2398 </td> <!-- entry_type -->
2399
2400 <td class="entry_description">
2401 what subset of the scene mode enum list is
2402 supported.<wbr>
2403 </td>
2404
2405 <td class="entry_units">
2406 </td>
2407
2408 <td class="entry_range">
2409 SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY must be supported if face
2410 detection is supported
2411 </td>
2412
2413 <td class="entry_notes">
2414 </td>
2415
2416 <td class="entry_tags">
2417 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002418 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002419 </ul>
2420 </td>
2421
2422 </tr> <!-- end of entry -->
2423
2424
2425 <tr class="entry" id="static_android.control.availableVideoStabilizationModes">
2426 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Video<wbr>Stabilization<wbr>Modes</td>
2427 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002428 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002429 <span class="entry_type_container">x</span>
2430
2431 <span class="entry_type_array">
2432 n
2433 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002434 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002435 <div class="entry_type_notes">List of enums.<wbr></div>
2436
2437
2438 </td> <!-- entry_type -->
2439
2440 <td class="entry_description">
2441 List of video stabilization modes that can
2442 be supported
2443 </td>
2444
2445 <td class="entry_units">
2446 </td>
2447
2448 <td class="entry_range">
2449 OFF must be included
2450 </td>
2451
2452 <td class="entry_notes">
2453 </td>
2454
2455 <td class="entry_tags">
2456 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002457 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002458 </ul>
2459 </td>
2460
2461 </tr> <!-- end of entry -->
2462
2463
2464 <tr class="entry" id="static_android.control.awbAvailableModes">
2465 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Available<wbr>Modes</td>
2466 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002467 <span class="entry_type_name">byte</span>
Alex Raya4251d92013-04-30 16:43:44 -07002468 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002469
Alex Raya4251d92013-04-30 16:43:44 -07002470 <span class="entry_type_array">
2471 n
2472 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002473 <span class="entry_type_visibility"> [public]</span>
Alex Raya4251d92013-04-30 16:43:44 -07002474 <div class="entry_type_notes">List of enums (android.<wbr>control.<wbr>awb<wbr>Mode)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002475
2476
2477 </td> <!-- entry_type -->
2478
2479 <td class="entry_description">
2480 </td>
2481
2482 <td class="entry_units">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002483 </td>
2484
2485 <td class="entry_range">
2486 OFF,<wbr> AUTO must be included
2487 </td>
2488
2489 <td class="entry_notes">
2490 </td>
2491
2492 <td class="entry_tags">
2493 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002494 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002495 </ul>
2496 </td>
2497
2498 </tr> <!-- end of entry -->
2499
2500
2501 <tr class="entry" id="static_android.control.maxRegions">
2502 <td class="entry_name">android.<wbr>control.<wbr>max<wbr>Regions</td>
2503 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002504 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002505
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002506 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002507
2508
2509 </td> <!-- entry_type -->
2510
2511 <td class="entry_description">
2512 For AE,<wbr> AWB,<wbr> and AF,<wbr> how many individual
2513 regions can be listed for metering?
2514 </td>
2515
2516 <td class="entry_units">
2517 </td>
2518
2519 <td class="entry_range">
2520 >= 1
2521 </td>
2522
2523 <td class="entry_notes">
2524 </td>
2525
2526 <td class="entry_tags">
2527 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002528 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002529 </ul>
2530 </td>
2531
2532 </tr> <!-- end of entry -->
2533
2534
2535 <tr class="entry" id="static_android.control.sceneModeOverrides">
2536 <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode<wbr>Overrides</td>
2537 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002538 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002539 <span class="entry_type_container">x</span>
2540
2541 <span class="entry_type_array">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002542 3 x length(availableSceneModes)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002543 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002544 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002545
2546
2547 </td> <!-- entry_type -->
2548
2549 <td class="entry_description">
2550 List of AE,<wbr> AWB,<wbr> and AF modes to use for
2551 each available scene mode
2552 </td>
2553
2554 <td class="entry_units">
2555 </td>
2556
2557 <td class="entry_range">
2558 For each listed scene mode,<wbr> lists the aeMode,<wbr>
2559 awbMode,<wbr> and afMode that the HAL wants to use for that
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002560 scene mode.<wbr>
2561
2562 For each entry,<wbr> the order is {aeMode,<wbr> awbMode,<wbr> afMode} in
2563 order of increasing index
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002564 </td>
2565
2566 <td class="entry_notes">
2567 When a scene mode is enabled,<wbr> the HAL is expected
2568 to override aeMode,<wbr> awbMode,<wbr> and afMode with its
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002569 preferred settings for that scene mode.<wbr>
2570<br>
2571<br> To simplify communication with old camera API applications,<wbr>
2572 the service wants this override list in the static metadata.<wbr>
2573 The order of this list matches that of availableSceneModes,<wbr>
2574 with 3 entires for each scene mode.<wbr> The overrides listed
2575 for SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY are ignored,<wbr> since for that
2576 mode,<wbr> the application-set aeMode,<wbr> awbMode,<wbr> and afMode are
2577 used instead,<wbr> like they are when android.<wbr>control.<wbr>mode is
2578 AUTO.<wbr>
2579<br>
2580<br> It is recommended that for FACE_<wbr>PRIORITY,<wbr> the overrides
2581 should be set to 0.<wbr> As an example,<wbr> if availableSceneModes is
2582 { FACE_<wbr>PRIORITY,<wbr> ACTION,<wbr> NIGHT },<wbr> then the service expects
2583 this field to have 9 entries; for example { 0 ,<wbr> 0,<wbr> 0,<wbr>
2584 ON_<wbr>AUTO_<wbr>FLASH,<wbr> AUTO,<wbr> CONTINUOUS_<wbr>PICTURE,<wbr> ON_<wbr>AUTO_<wbr>FLASH,<wbr>
2585 INCANDESCENT,<wbr> AUTO }
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002586 </td>
2587
2588 <td class="entry_tags">
2589 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002590 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002591 </ul>
2592 </td>
2593
2594 </tr> <!-- end of entry -->
2595
2596
2597
2598 <!-- end of kind -->
2599 </tbody>
2600 <tr><td colspan="7" class="kind">dynamic</td></tr>
2601
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002602 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002603 <tr>
2604 <th class="th_name">Property Name</th>
2605 <th class="th_type">Type</th>
2606 <th class="th_description">Description</th>
2607 <th class="th_units">Units</th>
2608 <th class="th_range">Range</th>
2609 <th class="th_notes">Notes</th>
2610 <th class="th_tags">Tags</th>
2611 </tr>
2612 </thead>
2613
2614 <tbody>
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625 <tr class="entry" id="dynamic_android.control.aePrecaptureId">
2626 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Id</td>
2627 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002628 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002629
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002630 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002631
2632
2633 </td> <!-- entry_type -->
2634
2635 <td class="entry_description">
2636 The ID sent with the latest
2637 CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING call
2638 </td>
2639
2640 <td class="entry_units">
2641 </td>
2642
2643 <td class="entry_range">
2644 </td>
2645
2646 <td class="entry_notes">
2647 Must be 0 if no
2648 CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING trigger received yet
2649 by HAL.<wbr> Always updated even if AE algorithm ignores the
2650 trigger
2651 </td>
2652
2653 <td class="entry_tags">
2654 </td>
2655
2656 </tr> <!-- end of entry -->
2657
2658
2659 <tr class="entry" id="dynamic_android.control.aeRegions">
2660 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
2661 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002662 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002663 <span class="entry_type_container">x</span>
2664
2665 <span class="entry_type_array">
2666 5 x area_count
2667 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002668 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002669
2670
2671 </td> <!-- entry_type -->
2672
2673 <td class="entry_description">
2674 List of areas to use for
2675 metering
2676 </td>
2677
2678 <td class="entry_units">
2679 </td>
2680
2681 <td class="entry_range">
2682 </td>
2683
2684 <td class="entry_notes">
2685 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002686 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
2687 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002688<br>
2689<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002690 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
2691 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
2692 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
2693 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002694 should be nonnegative.<wbr>
2695<br>
2696<br> If all regions have 0 weight,<wbr> then no specific metering area
2697 needs to be used by the HAL.<wbr> If the metering region is
2698 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
2699 should ignore the sections outside the region and output the
2700 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002701 </td>
2702
2703 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002704 <ul class="entry_tags">
2705 <li><a href="#tag_BC">BC</a></li>
2706 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002707 </td>
2708
2709 </tr> <!-- end of entry -->
2710
2711
2712 <tr class="entry" id="dynamic_android.control.aeState">
2713 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>State</td>
2714 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002715 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002716
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002717 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002718
2719 <ul class="entry_type_enum">
2720 <li>
2721 <span class="entry_type_enum_name">INACTIVE</span>
Alex Ray7aeb05e2013-03-27 16:26:41 -07002722 <span class="entry_type_enum_notes">AE is off.<wbr> When a camera device is opened,<wbr> it starts in
2723 this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002724 </li>
2725 <li>
2726 <span class="entry_type_enum_name">SEARCHING</span>
2727 <span class="entry_type_enum_notes">AE doesn't yet have a good set of control values
2728 for the current scene</span>
2729 </li>
2730 <li>
2731 <span class="entry_type_enum_name">CONVERGED</span>
2732 <span class="entry_type_enum_notes">AE has a good set of control values for the
2733 current scene</span>
2734 </li>
2735 <li>
2736 <span class="entry_type_enum_name">LOCKED</span>
2737 <span class="entry_type_enum_notes">AE has been locked (aeMode =
2738 LOCKED)</span>
2739 </li>
2740 <li>
2741 <span class="entry_type_enum_name">FLASH_REQUIRED</span>
2742 <span class="entry_type_enum_notes">AE has a good set of control values,<wbr> but flash
2743 needs to be fired for good quality still
2744 capture</span>
2745 </li>
2746 <li>
2747 <span class="entry_type_enum_name">PRECAPTURE</span>
2748 <span class="entry_type_enum_notes">AE has been asked to do a precapture sequence
2749 (through the
2750 trigger_<wbr>action(CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING)
2751 call),<wbr> and is currently executing it.<wbr> Once PRECAPTURE
2752 completes,<wbr> AE will transition to CONVERGED or
2753 FLASH_<wbr>REQUIRED as appropriate</span>
2754 </li>
2755 </ul>
2756
2757 </td> <!-- entry_type -->
2758
2759 <td class="entry_description">
2760 Current state of AE algorithm
2761 </td>
2762
2763 <td class="entry_units">
2764 </td>
2765
2766 <td class="entry_range">
2767 </td>
2768
2769 <td class="entry_notes">
2770 Whenever the AE algorithm state changes,<wbr> a
2771 MSG_<wbr>AUTOEXPOSURE notification must be send if a
2772 notification callback is registered.<wbr>
2773 </td>
2774
2775 <td class="entry_tags">
2776 </td>
2777
2778 </tr> <!-- end of entry -->
2779
2780
2781 <tr class="entry" id="dynamic_android.control.afMode">
2782 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
2783 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002784 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002785
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002786 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002787
2788 <ul class="entry_type_enum">
2789 <li>
2790 <span class="entry_type_enum_name">OFF</span>
2791 <span class="entry_type_enum_notes">The 3A routines do not control the lens;
Zhijun He69fc0ea2013-07-17 09:42:58 -07002792 android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002793 application</span>
2794 </li>
2795 <li>
2796 <span class="entry_type_enum_name">AUTO</span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002797 <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
2798
2799 Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
2800 is fixed focus In this mode,<wbr> the lens does not move unless
2801 the autofocus trigger action is called.<wbr> When that trigger
2802 is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
2803 the outcome of the scan (FOCUSED or
2804 NOT_<wbr>FOCUSED).<wbr>
2805
2806 Triggering cancel AF resets the lens position to default,<wbr>
2807 and sets the AF state to INACTIVE.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002808 </li>
2809 <li>
2810 <span class="entry_type_enum_name">MACRO</span>
2811 <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002812 autofocus trigger action is called.<wbr>
2813
2814 When that trigger is activated,<wbr> AF must transition to
2815 ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
2816 NOT_<wbr>FOCUSED).<wbr> Triggering cancel AF resets the lens
2817 position to default,<wbr> and sets the AF state to
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002818 INACTIVE.<wbr></span>
2819 </li>
2820 <li>
2821 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
2822 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
2823 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002824 constantly-in-focus image stream.<wbr>
2825
2826 The focusing behavior should be suitable for good quality
2827 video recording; typically this means slower focus
2828 movement and no overshoots.<wbr> When the AF trigger is not
2829 involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
2830 and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
2831 states as appropriate.<wbr> When the AF trigger is activated,<wbr>
2832 the algorithm should immediately transition into
2833 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
2834 lens position until a cancel AF trigger is received.<wbr>
2835
2836 Once cancel is received,<wbr> the algorithm should transition
2837 back to INACTIVE and resume passive scan.<wbr> Note that this
2838 behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
2839 ongoing PASSIVE_<wbr>SCAN must immediately be
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002840 canceled.<wbr></span>
2841 </li>
2842 <li>
2843 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
2844 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
2845 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002846 constantly-in-focus image stream.<wbr>
2847
2848 The focusing behavior should be suitable for still image
2849 capture; typically this means focusing as fast as
2850 possible.<wbr> When the AF trigger is not involved,<wbr> the AF
2851 algorithm should start in INACTIVE state,<wbr> and then
2852 transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
2853 appropriate as it attempts to maintain focus.<wbr> When the AF
2854 trigger is activated,<wbr> the algorithm should finish its
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002855 PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002856 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
2857 lens position until a cancel AF trigger is received.<wbr>
2858
2859 When the AF cancel trigger is activated,<wbr> the algorithm
2860 should transition back to INACTIVE and then act as if it
2861 has just been started.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002862 </li>
2863 <li>
2864 <span class="entry_type_enum_name">EDOF</span>
2865 <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
2866 trigger is ignored,<wbr> AF state should always be
2867 INACTIVE.<wbr></span>
2868 </li>
2869 </ul>
2870
2871 </td> <!-- entry_type -->
2872
2873 <td class="entry_description">
2874 Whether AF is currently enabled,<wbr> and what
2875 mode it is set to
2876 </td>
2877
2878 <td class="entry_units">
2879 </td>
2880
2881 <td class="entry_range">
2882 </td>
2883
2884 <td class="entry_notes">
2885 </td>
2886
2887 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002888 <ul class="entry_tags">
2889 <li><a href="#tag_BC">BC</a></li>
2890 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002891 </td>
2892
2893 </tr> <!-- end of entry -->
2894
2895
2896 <tr class="entry" id="dynamic_android.control.afRegions">
2897 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
2898 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002899 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002900 <span class="entry_type_container">x</span>
2901
2902 <span class="entry_type_array">
2903 5 x area_count
2904 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002905 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002906
2907
2908 </td> <!-- entry_type -->
2909
2910 <td class="entry_description">
2911 List of areas to use for focus
2912 estimation
2913 </td>
2914
2915 <td class="entry_units">
2916 </td>
2917
2918 <td class="entry_range">
2919 </td>
2920
2921 <td class="entry_notes">
2922 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002923 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
2924 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002925<br>
2926<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002927 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
2928 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
2929 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
2930 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002931 should be nonnegative.<wbr>
2932<br>
2933<br> If all regions have 0 weight,<wbr> then no specific focus area
2934 needs to be used by the HAL.<wbr> If the focusing region is
2935 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
2936 should ignore the sections outside the region and output the
2937 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002938 </td>
2939
2940 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002941 <ul class="entry_tags">
2942 <li><a href="#tag_BC">BC</a></li>
2943 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002944 </td>
2945
2946 </tr> <!-- end of entry -->
2947
2948
2949 <tr class="entry" id="dynamic_android.control.afState">
2950 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>State</td>
2951 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002952 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002953
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002954 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002955
2956 <ul class="entry_type_enum">
2957 <li>
2958 <span class="entry_type_enum_name">INACTIVE</span>
2959 <span class="entry_type_enum_notes">AF off or has not yet tried to scan/<wbr>been asked
Alex Ray7aeb05e2013-03-27 16:26:41 -07002960 to scan.<wbr> When a camera device is opened,<wbr> it starts in
2961 this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002962 </li>
2963 <li>
2964 <span class="entry_type_enum_name">PASSIVE_SCAN</span>
2965 <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported AF is
2966 currently doing an AF scan initiated by a continuous
2967 autofocus mode</span>
2968 </li>
2969 <li>
2970 <span class="entry_type_enum_name">PASSIVE_FOCUSED</span>
2971 <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported AF currently
2972 believes it is in focus,<wbr> but may restart scanning at
2973 any time.<wbr></span>
2974 </li>
2975 <li>
2976 <span class="entry_type_enum_name">ACTIVE_SCAN</span>
2977 <span class="entry_type_enum_notes">if AUTO or MACRO modes are supported AF is doing
2978 an AF scan because it was triggered by AF
2979 trigger</span>
2980 </li>
2981 <li>
2982 <span class="entry_type_enum_name">FOCUSED_LOCKED</span>
2983 <span class="entry_type_enum_notes">if any AF mode besides OFF is supported AF
2984 believes it is focused correctly and is
2985 locked</span>
2986 </li>
2987 <li>
2988 <span class="entry_type_enum_name">NOT_FOCUSED_LOCKED</span>
2989 <span class="entry_type_enum_notes">if any AF mode besides OFF is supported AF has
2990 failed to focus successfully and is
2991 locked</span>
2992 </li>
2993 </ul>
2994
2995 </td> <!-- entry_type -->
2996
2997 <td class="entry_description">
2998 Current state of AF algorithm
2999 </td>
3000
3001 <td class="entry_units">
3002 </td>
3003
3004 <td class="entry_range">
3005 </td>
3006
3007 <td class="entry_notes">
3008 Whenever the AF algorithm state changes,<wbr> a
3009 MSG_<wbr>AUTOFOCUS notification must be send if a notification
3010 callback is registered.<wbr>
3011 </td>
3012
3013 <td class="entry_tags">
3014 </td>
3015
3016 </tr> <!-- end of entry -->
3017
3018
3019 <tr class="entry" id="dynamic_android.control.afTriggerId">
3020 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger<wbr>Id</td>
3021 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003022 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003023
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003024 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003025
3026
3027 </td> <!-- entry_type -->
3028
3029 <td class="entry_description">
3030 The ID sent with the latest
3031 CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS call
3032 </td>
3033
3034 <td class="entry_units">
3035 </td>
3036
3037 <td class="entry_range">
3038 </td>
3039
3040 <td class="entry_notes">
3041 Must be 0 if no CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS trigger
3042 received yet by HAL.<wbr> Always updated even if AF algorithm
3043 ignores the trigger
3044 </td>
3045
3046 <td class="entry_tags">
3047 </td>
3048
3049 </tr> <!-- end of entry -->
3050
3051
3052 <tr class="entry" id="dynamic_android.control.awbMode">
3053 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
3054 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003055 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003056
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003057 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003058
3059 <ul class="entry_type_enum">
3060 <li>
3061 <span class="entry_type_enum_name">OFF</span>
3062 </li>
3063 <li>
3064 <span class="entry_type_enum_name">AUTO</span>
3065 </li>
3066 <li>
3067 <span class="entry_type_enum_name">INCANDESCENT</span>
3068 </li>
3069 <li>
3070 <span class="entry_type_enum_name">FLUORESCENT</span>
3071 </li>
3072 <li>
3073 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
3074 </li>
3075 <li>
3076 <span class="entry_type_enum_name">DAYLIGHT</span>
3077 </li>
3078 <li>
3079 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
3080 </li>
3081 <li>
3082 <span class="entry_type_enum_name">TWILIGHT</span>
3083 </li>
3084 <li>
3085 <span class="entry_type_enum_name">SHADE</span>
3086 </li>
3087 </ul>
3088
3089 </td> <!-- entry_type -->
3090
3091 <td class="entry_description">
3092 Whether AWB is currently setting the color
3093 transform fields,<wbr> and what its illumination target
3094 is
3095 </td>
3096
3097 <td class="entry_units">
3098 </td>
3099
3100 <td class="entry_range">
3101 </td>
3102
3103 <td class="entry_notes">
3104 [BC - AWB lock,<wbr>AWB modes]
3105 </td>
3106
3107 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003108 <ul class="entry_tags">
3109 <li><a href="#tag_BC">BC</a></li>
3110 <li><a href="#tag_AWB">AWB</a></li>
3111 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003112 </td>
3113
3114 </tr> <!-- end of entry -->
3115
3116
3117 <tr class="entry" id="dynamic_android.control.awbRegions">
3118 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
3119 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003120 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003121 <span class="entry_type_container">x</span>
3122
3123 <span class="entry_type_array">
3124 5 x area_count
3125 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003126 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003127
3128
3129 </td> <!-- entry_type -->
3130
3131 <td class="entry_description">
3132 List of areas to use for illuminant
3133 estimation
3134 </td>
3135
3136 <td class="entry_units">
3137 </td>
3138
3139 <td class="entry_range">
3140 </td>
3141
3142 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003143 Only used in AUTO mode.<wbr>
3144<br>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07003145<br> Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
3146 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
3147 specified coordinates.<wbr>
3148<br>
3149<br> The coordinate system is based on the active pixel array,<wbr>
3150 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
3151 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
3152 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
3153 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003154 should be nonnegative.<wbr>
3155<br>
3156<br> If all regions have 0 weight,<wbr> then no specific metering area
3157 needs to be used by the HAL.<wbr> If the metering region is
3158 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
3159 should ignore the sections outside the region and output the
3160 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003161 </td>
3162
3163 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003164 <ul class="entry_tags">
3165 <li><a href="#tag_BC">BC</a></li>
3166 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003167 </td>
3168
3169 </tr> <!-- end of entry -->
3170
3171
3172 <tr class="entry" id="dynamic_android.control.awbState">
3173 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>State</td>
3174 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003175 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003176
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003177 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003178
3179 <ul class="entry_type_enum">
3180 <li>
3181 <span class="entry_type_enum_name">INACTIVE</span>
Alex Ray7aeb05e2013-03-27 16:26:41 -07003182 <span class="entry_type_enum_notes">AWB is not in auto mode.<wbr> When a camera device is opened,<wbr> it
3183 starts in this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003184 </li>
3185 <li>
3186 <span class="entry_type_enum_name">SEARCHING</span>
3187 <span class="entry_type_enum_notes">AWB doesn't yet have a good set of control
3188 values for the current scene</span>
3189 </li>
3190 <li>
3191 <span class="entry_type_enum_name">CONVERGED</span>
3192 <span class="entry_type_enum_notes">AWB has a good set of control values for the
3193 current scene</span>
3194 </li>
3195 <li>
3196 <span class="entry_type_enum_name">LOCKED</span>
3197 <span class="entry_type_enum_notes">AE has been locked (aeMode =
3198 LOCKED)</span>
3199 </li>
3200 </ul>
3201
3202 </td> <!-- entry_type -->
3203
3204 <td class="entry_description">
3205 Current state of AWB algorithm
3206 </td>
3207
3208 <td class="entry_units">
3209 </td>
3210
3211 <td class="entry_range">
3212 </td>
3213
3214 <td class="entry_notes">
3215 Whenever the AWB algorithm state changes,<wbr> a
3216 MSG_<wbr>AUTOWHITEBALANCE notification must be send if a
3217 notification callback is registered.<wbr>
3218 </td>
3219
3220 <td class="entry_tags">
3221 </td>
3222
3223 </tr> <!-- end of entry -->
3224
3225
3226 <tr class="entry" id="dynamic_android.control.mode">
3227 <td class="entry_name">android.<wbr>control.<wbr>mode</td>
3228 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003229 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003230
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003231 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003232
3233 <ul class="entry_type_enum">
3234 <li>
3235 <span class="entry_type_enum_name">OFF</span>
3236 <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
3237 routines are disabled,<wbr> no other settings in
3238 android.<wbr>control.<wbr>* have any effect</span>
3239 </li>
3240 <li>
3241 <span class="entry_type_enum_name">AUTO</span>
3242 <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
3243 Manual control of capture parameters is disabled.<wbr> All
3244 controls in android.<wbr>control.<wbr>* besides sceneMode take
3245 effect</span>
3246 </li>
3247 <li>
3248 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
3249 <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
3250 control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
3251 controls; the HAL must ignore those settings while
3252 USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
3253 scene mode).<wbr> Other control entries are still active.<wbr>
3254 This setting can only be used if availableSceneModes !=
3255 UNSUPPORTED</span>
3256 </li>
3257 </ul>
3258
3259 </td> <!-- entry_type -->
3260
3261 <td class="entry_description">
3262 Overall mode of 3A control
3263 routines
3264 </td>
3265
3266 <td class="entry_units">
3267 </td>
3268
3269 <td class="entry_range">
3270 all must be supported
3271 </td>
3272
3273 <td class="entry_notes">
3274 </td>
3275
3276 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003277 <ul class="entry_tags">
3278 <li><a href="#tag_BC">BC</a></li>
3279 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003280 </td>
3281
3282 </tr> <!-- end of entry -->
3283
3284
3285
3286 <!-- end of kind -->
3287 </tbody>
3288
3289 <!-- end of section -->
3290 <tr><td colspan="7" id="section_demosaic" class="section">demosaic</td></tr>
3291
3292
3293 <tr><td colspan="7" class="kind">controls</td></tr>
3294
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003295 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003296 <tr>
3297 <th class="th_name">Property Name</th>
3298 <th class="th_type">Type</th>
3299 <th class="th_description">Description</th>
3300 <th class="th_units">Units</th>
3301 <th class="th_range">Range</th>
3302 <th class="th_notes">Notes</th>
3303 <th class="th_tags">Tags</th>
3304 </tr>
3305 </thead>
3306
3307 <tbody>
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318 <tr class="entry" id="controls_android.demosaic.mode">
3319 <td class="entry_name">android.<wbr>demosaic.<wbr>mode</td>
3320 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003321 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003322
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003323 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003324
3325 <ul class="entry_type_enum">
3326 <li>
3327 <span class="entry_type_enum_name">FAST</span>
3328 <span class="entry_type_enum_notes">Minimal or no slowdown of frame rate compared to
3329 Bayer RAW output</span>
3330 </li>
3331 <li>
3332 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3333 <span class="entry_type_enum_notes">High-quality may reduce output frame
3334 rate</span>
3335 </li>
3336 </ul>
3337
3338 </td> <!-- entry_type -->
3339
3340 <td class="entry_description">
3341 Controls the quality of the demosaicing
3342 processing
3343 </td>
3344
3345 <td class="entry_units">
3346 </td>
3347
3348 <td class="entry_range">
3349 </td>
3350
3351 <td class="entry_notes">
3352 </td>
3353
3354 <td class="entry_tags">
3355 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003356 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003357 </ul>
3358 </td>
3359
3360 </tr> <!-- end of entry -->
3361
3362
3363
3364 <!-- end of kind -->
3365 </tbody>
3366
3367 <!-- end of section -->
3368 <tr><td colspan="7" id="section_edge" class="section">edge</td></tr>
3369
3370
3371 <tr><td colspan="7" class="kind">controls</td></tr>
3372
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003373 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003374 <tr>
3375 <th class="th_name">Property Name</th>
3376 <th class="th_type">Type</th>
3377 <th class="th_description">Description</th>
3378 <th class="th_units">Units</th>
3379 <th class="th_range">Range</th>
3380 <th class="th_notes">Notes</th>
3381 <th class="th_tags">Tags</th>
3382 </tr>
3383 </thead>
3384
3385 <tbody>
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396 <tr class="entry" id="controls_android.edge.mode">
3397 <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
3398 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003399 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003400
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003401 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003402
3403 <ul class="entry_type_enum">
3404 <li>
3405 <span class="entry_type_enum_name">OFF</span>
3406 <span class="entry_type_enum_notes">No edge enhancement is applied</span>
3407 </li>
3408 <li>
3409 <span class="entry_type_enum_name">FAST</span>
3410 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
3411 bayer output</span>
3412 </li>
3413 <li>
3414 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3415 <span class="entry_type_enum_notes">Frame rate may be reduced by high
3416 quality</span>
3417 </li>
3418 </ul>
3419
3420 </td> <!-- entry_type -->
3421
3422 <td class="entry_description">
3423 Operation mode for edge
3424 enhancement
3425 </td>
3426
3427 <td class="entry_units">
3428 </td>
3429
3430 <td class="entry_range">
3431 </td>
3432
3433 <td class="entry_notes">
3434 </td>
3435
3436 <td class="entry_tags">
3437 </td>
3438
3439 </tr> <!-- end of entry -->
3440
3441
3442 <tr class="entry" id="controls_android.edge.strength">
3443 <td class="entry_name">android.<wbr>edge.<wbr>strength</td>
3444 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003445 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003446
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003447 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003448
3449
3450 </td> <!-- entry_type -->
3451
3452 <td class="entry_description">
3453 Control the amount of edge enhancement
3454 applied to the images
3455 </td>
3456
3457 <td class="entry_units">
3458 1-10; 10 is maximum sharpening
3459 </td>
3460
3461 <td class="entry_range">
3462 </td>
3463
3464 <td class="entry_notes">
3465 </td>
3466
3467 <td class="entry_tags">
3468 </td>
3469
3470 </tr> <!-- end of entry -->
3471
3472
3473
3474 <!-- end of kind -->
3475 </tbody>
3476 <tr><td colspan="7" class="kind">dynamic</td></tr>
3477
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003478 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003479 <tr>
3480 <th class="th_name">Property Name</th>
3481 <th class="th_type">Type</th>
3482 <th class="th_description">Description</th>
3483 <th class="th_units">Units</th>
3484 <th class="th_range">Range</th>
3485 <th class="th_notes">Notes</th>
3486 <th class="th_tags">Tags</th>
3487 </tr>
3488 </thead>
3489
3490 <tbody>
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501 <tr class="entry" id="dynamic_android.edge.mode">
3502 <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
3503 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003504 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003505
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003506 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003507
3508 <ul class="entry_type_enum">
3509 <li>
3510 <span class="entry_type_enum_name">OFF</span>
3511 <span class="entry_type_enum_notes">No edge enhancement is applied</span>
3512 </li>
3513 <li>
3514 <span class="entry_type_enum_name">FAST</span>
3515 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
3516 bayer output</span>
3517 </li>
3518 <li>
3519 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3520 <span class="entry_type_enum_notes">Frame rate may be reduced by high
3521 quality</span>
3522 </li>
3523 </ul>
3524
3525 </td> <!-- entry_type -->
3526
3527 <td class="entry_description">
3528 Operation mode for edge
3529 enhancement
3530 </td>
3531
3532 <td class="entry_units">
3533 </td>
3534
3535 <td class="entry_range">
3536 </td>
3537
3538 <td class="entry_notes">
3539 </td>
3540
3541 <td class="entry_tags">
3542 </td>
3543
3544 </tr> <!-- end of entry -->
3545
3546
3547
3548 <!-- end of kind -->
3549 </tbody>
3550
3551 <!-- end of section -->
3552 <tr><td colspan="7" id="section_flash" class="section">flash</td></tr>
3553
3554
3555 <tr><td colspan="7" class="kind">controls</td></tr>
3556
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003557 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003558 <tr>
3559 <th class="th_name">Property Name</th>
3560 <th class="th_type">Type</th>
3561 <th class="th_description">Description</th>
3562 <th class="th_units">Units</th>
3563 <th class="th_range">Range</th>
3564 <th class="th_notes">Notes</th>
3565 <th class="th_tags">Tags</th>
3566 </tr>
3567 </thead>
3568
3569 <tbody>
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580 <tr class="entry" id="controls_android.flash.firingPower">
3581 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
3582 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003583 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003584
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003585 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003586
3587
3588 </td> <!-- entry_type -->
3589
3590 <td class="entry_description">
3591 Power for flash firing/<wbr>torch
3592 </td>
3593
3594 <td class="entry_units">
3595 10 is max power; 0 is no flash.<wbr> Linear
3596 </td>
3597
3598 <td class="entry_range">
3599 0 - 10
3600 </td>
3601
3602 <td class="entry_notes">
3603 Power for snapshot may use a different scale than
3604 for torch mode.<wbr> Only one entry for torch mode will be
3605 used
3606 </td>
3607
3608 <td class="entry_tags">
3609 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003610 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003611 </ul>
3612 </td>
3613
3614 </tr> <!-- end of entry -->
3615
3616
3617 <tr class="entry" id="controls_android.flash.firingTime">
3618 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
3619 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003620 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003621
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003622 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003623
3624
3625 </td> <!-- entry_type -->
3626
3627 <td class="entry_description">
3628 Firing time of flash relative to start of
3629 exposure
3630 </td>
3631
3632 <td class="entry_units">
3633 nanoseconds
3634 </td>
3635
3636 <td class="entry_range">
3637 0-(exposure time-flash duration)
3638 </td>
3639
3640 <td class="entry_notes">
3641 Clamped to (0,<wbr> exposure time - flash
3642 duration).<wbr>
3643 </td>
3644
3645 <td class="entry_tags">
3646 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003647 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003648 </ul>
3649 </td>
3650
3651 </tr> <!-- end of entry -->
3652
3653
3654 <tr class="entry" id="controls_android.flash.mode">
3655 <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
3656 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003657 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003658
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003659 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003660
3661 <ul class="entry_type_enum">
3662 <li>
3663 <span class="entry_type_enum_name">OFF</span>
3664 <span class="entry_type_enum_notes">Do not fire the flash for this
3665 capture</span>
3666 </li>
3667 <li>
3668 <span class="entry_type_enum_name">SINGLE</span>
3669 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
3670 for this capture based on firingPower,<wbr>
3671 firingTime.<wbr></span>
3672 </li>
3673 <li>
3674 <span class="entry_type_enum_name">TORCH</span>
3675 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
3676 continuously on,<wbr> power set by
3677 firingPower</span>
3678 </li>
3679 </ul>
3680
3681 </td> <!-- entry_type -->
3682
3683 <td class="entry_description">
3684 Select flash operation mode
3685 </td>
3686
3687 <td class="entry_units">
3688 </td>
3689
3690 <td class="entry_range">
3691 </td>
3692
3693 <td class="entry_notes">
3694 </td>
3695
3696 <td class="entry_tags">
3697 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003698 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003699 </ul>
3700 </td>
3701
3702 </tr> <!-- end of entry -->
3703
3704
3705
3706 <!-- end of kind -->
3707 </tbody>
3708 <tr><td colspan="7" class="kind">static</td></tr>
3709
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003710 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003711 <tr>
3712 <th class="th_name">Property Name</th>
3713 <th class="th_type">Type</th>
3714 <th class="th_description">Description</th>
3715 <th class="th_units">Units</th>
3716 <th class="th_range">Range</th>
3717 <th class="th_notes">Notes</th>
3718 <th class="th_tags">Tags</th>
3719 </tr>
3720 </thead>
3721
3722 <tbody>
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735 <tr class="entry" id="static_android.flash.info.available">
3736 <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>available</td>
3737 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003738 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003739
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003740 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003741
3742
3743 </td> <!-- entry_type -->
3744
3745 <td class="entry_description">
3746 Whether this camera has a
3747 flash
3748 </td>
3749
3750 <td class="entry_units">
3751 boolean (0 = false,<wbr> otherwise true)
3752 </td>
3753
3754 <td class="entry_range">
3755 </td>
3756
3757 <td class="entry_notes">
3758 If no flash,<wbr> none of the flash controls do
3759 anything.<wbr> All other metadata should return 0
3760 </td>
3761
3762 <td class="entry_tags">
3763 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003764 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003765 </ul>
3766 </td>
3767
3768 </tr> <!-- end of entry -->
3769
3770
3771 <tr class="entry" id="static_android.flash.info.chargeDuration">
3772 <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>charge<wbr>Duration</td>
3773 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003774 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003775
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003776 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003777
3778
3779 </td> <!-- entry_type -->
3780
3781 <td class="entry_description">
3782 Time taken before flash can fire
3783 again
3784 </td>
3785
3786 <td class="entry_units">
3787 nanoseconds
3788 </td>
3789
3790 <td class="entry_range">
3791 0-1e9
3792 </td>
3793
3794 <td class="entry_notes">
3795 1 second too long/<wbr>too short for recharge? Should
3796 this be power-dependent?
3797 </td>
3798
3799 <td class="entry_tags">
3800 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003801 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003802 </ul>
3803 </td>
3804
3805 </tr> <!-- end of entry -->
3806
3807
3808
3809
3810
3811 <tr class="entry" id="static_android.flash.colorTemperature">
3812 <td class="entry_name">android.<wbr>flash.<wbr>color<wbr>Temperature</td>
3813 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003814 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003815
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003816 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003817
3818
3819 </td> <!-- entry_type -->
3820
3821 <td class="entry_description">
3822 The x,<wbr>y whitepoint of the
3823 flash
3824 </td>
3825
3826 <td class="entry_units">
3827 pair of floats
3828 </td>
3829
3830 <td class="entry_range">
3831 0-1 for both
3832 </td>
3833
3834 <td class="entry_notes">
3835 </td>
3836
3837 <td class="entry_tags">
3838 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003839 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003840 </ul>
3841 </td>
3842
3843 </tr> <!-- end of entry -->
3844
3845
3846 <tr class="entry" id="static_android.flash.maxEnergy">
3847 <td class="entry_name">android.<wbr>flash.<wbr>max<wbr>Energy</td>
3848 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003849 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003850
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003851 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003852
3853
3854 </td> <!-- entry_type -->
3855
3856 <td class="entry_description">
3857 Max energy output of the flash for a full
3858 power single flash
3859 </td>
3860
3861 <td class="entry_units">
3862 lumen-seconds
3863 </td>
3864
3865 <td class="entry_range">
3866 >= 0
3867 </td>
3868
3869 <td class="entry_notes">
3870 </td>
3871
3872 <td class="entry_tags">
3873 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003874 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003875 </ul>
3876 </td>
3877
3878 </tr> <!-- end of entry -->
3879
3880
3881
3882 <!-- end of kind -->
3883 </tbody>
3884 <tr><td colspan="7" class="kind">dynamic</td></tr>
3885
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003886 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003887 <tr>
3888 <th class="th_name">Property Name</th>
3889 <th class="th_type">Type</th>
3890 <th class="th_description">Description</th>
3891 <th class="th_units">Units</th>
3892 <th class="th_range">Range</th>
3893 <th class="th_notes">Notes</th>
3894 <th class="th_tags">Tags</th>
3895 </tr>
3896 </thead>
3897
3898 <tbody>
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909 <tr class="entry" id="dynamic_android.flash.firingPower">
3910 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
3911 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003912 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003913
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003914 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003915
3916
3917 </td> <!-- entry_type -->
3918
3919 <td class="entry_description">
3920 Power for flash firing/<wbr>torch
3921 </td>
3922
3923 <td class="entry_units">
3924 10 is max power; 0 is no flash.<wbr> Linear
3925 </td>
3926
3927 <td class="entry_range">
3928 0 - 10
3929 </td>
3930
3931 <td class="entry_notes">
3932 Power for snapshot may use a different scale than
3933 for torch mode.<wbr> Only one entry for torch mode will be
3934 used
3935 </td>
3936
3937 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003938 <ul class="entry_tags">
3939 <li><a href="#tag_V1">V1</a></li>
3940 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003941 </td>
3942
3943 </tr> <!-- end of entry -->
3944
3945
3946 <tr class="entry" id="dynamic_android.flash.firingTime">
3947 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
3948 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003949 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003950
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003951 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003952
3953
3954 </td> <!-- entry_type -->
3955
3956 <td class="entry_description">
3957 Firing time of flash relative to start of
3958 exposure
3959 </td>
3960
3961 <td class="entry_units">
3962 nanoseconds
3963 </td>
3964
3965 <td class="entry_range">
3966 0-(exposure time-flash duration)
3967 </td>
3968
3969 <td class="entry_notes">
3970 Clamped to (0,<wbr> exposure time - flash
3971 duration).<wbr>
3972 </td>
3973
3974 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003975 <ul class="entry_tags">
3976 <li><a href="#tag_V1">V1</a></li>
3977 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003978 </td>
3979
3980 </tr> <!-- end of entry -->
3981
3982
3983 <tr class="entry" id="dynamic_android.flash.mode">
3984 <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
3985 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003986 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003987
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003988 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003989
3990 <ul class="entry_type_enum">
3991 <li>
3992 <span class="entry_type_enum_name">OFF</span>
3993 <span class="entry_type_enum_notes">Do not fire the flash for this
3994 capture</span>
3995 </li>
3996 <li>
3997 <span class="entry_type_enum_name">SINGLE</span>
3998 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
3999 for this capture based on firingPower,<wbr>
4000 firingTime.<wbr></span>
4001 </li>
4002 <li>
4003 <span class="entry_type_enum_name">TORCH</span>
4004 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
4005 continuously on,<wbr> power set by
4006 firingPower</span>
4007 </li>
4008 </ul>
4009
4010 </td> <!-- entry_type -->
4011
4012 <td class="entry_description">
4013 Select flash operation mode
4014 </td>
4015
4016 <td class="entry_units">
4017 </td>
4018
4019 <td class="entry_range">
4020 </td>
4021
4022 <td class="entry_notes">
4023 </td>
4024
4025 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004026 <ul class="entry_tags">
4027 <li><a href="#tag_BC">BC</a></li>
4028 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004029 </td>
4030
4031 </tr> <!-- end of entry -->
4032
4033
4034 <tr class="entry" id="dynamic_android.flash.state">
4035 <td class="entry_name">android.<wbr>flash.<wbr>state</td>
4036 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004037 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004038
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004039 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004040
4041 <ul class="entry_type_enum">
4042 <li>
4043 <span class="entry_type_enum_name">UNAVAILABLE</span>
4044 <span class="entry_type_enum_notes">No flash on camera</span>
4045 </li>
4046 <li>
4047 <span class="entry_type_enum_name">CHARGING</span>
4048 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
4049 charging and cannot be fired</span>
4050 </li>
4051 <li>
4052 <span class="entry_type_enum_name">READY</span>
4053 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
4054 ready to fire</span>
4055 </li>
4056 <li>
4057 <span class="entry_type_enum_name">FIRED</span>
4058 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash fired
4059 for this capture</span>
4060 </li>
4061 </ul>
4062
4063 </td> <!-- entry_type -->
4064
4065 <td class="entry_description">
4066 Current state of the flash
4067 unit
4068 </td>
4069
4070 <td class="entry_units">
4071 </td>
4072
4073 <td class="entry_range">
4074 </td>
4075
4076 <td class="entry_notes">
4077 </td>
4078
4079 <td class="entry_tags">
4080 </td>
4081
4082 </tr> <!-- end of entry -->
4083
4084
4085
4086 <!-- end of kind -->
4087 </tbody>
4088
4089 <!-- end of section -->
4090 <tr><td colspan="7" id="section_geometric" class="section">geometric</td></tr>
4091
4092
4093 <tr><td colspan="7" class="kind">controls</td></tr>
4094
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004095 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004096 <tr>
4097 <th class="th_name">Property Name</th>
4098 <th class="th_type">Type</th>
4099 <th class="th_description">Description</th>
4100 <th class="th_units">Units</th>
4101 <th class="th_range">Range</th>
4102 <th class="th_notes">Notes</th>
4103 <th class="th_tags">Tags</th>
4104 </tr>
4105 </thead>
4106
4107 <tbody>
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118 <tr class="entry" id="controls_android.geometric.mode">
4119 <td class="entry_name">android.<wbr>geometric.<wbr>mode</td>
4120 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004121 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004122
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004123 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004124
4125 <ul class="entry_type_enum">
4126 <li>
4127 <span class="entry_type_enum_name">OFF</span>
4128 <span class="entry_type_enum_notes">No geometric correction is
4129 applied</span>
4130 </li>
4131 <li>
4132 <span class="entry_type_enum_name">FAST</span>
4133 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
4134 bayer output</span>
4135 </li>
4136 <li>
4137 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4138 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4139 quality</span>
4140 </li>
4141 </ul>
4142
4143 </td> <!-- entry_type -->
4144
4145 <td class="entry_description">
4146 Operating mode of geometric
4147 correction
4148 </td>
4149
4150 <td class="entry_units">
4151 </td>
4152
4153 <td class="entry_range">
4154 </td>
4155
4156 <td class="entry_notes">
4157 </td>
4158
4159 <td class="entry_tags">
4160 </td>
4161
4162 </tr> <!-- end of entry -->
4163
4164
4165 <tr class="entry" id="controls_android.geometric.strength">
4166 <td class="entry_name">android.<wbr>geometric.<wbr>strength</td>
4167 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004168 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004169
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004170 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004171
4172
4173 </td> <!-- entry_type -->
4174
4175 <td class="entry_description">
4176 Control the amount of shading correction
4177 applied to the images
4178 </td>
4179
4180 <td class="entry_units">
4181 unitless: 1-10; 10 is full shading
4182 compensation
4183 </td>
4184
4185 <td class="entry_range">
4186 </td>
4187
4188 <td class="entry_notes">
4189 </td>
4190
4191 <td class="entry_tags">
4192 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004193 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004194 </ul>
4195 </td>
4196
4197 </tr> <!-- end of entry -->
4198
4199
4200
4201 <!-- end of kind -->
4202 </tbody>
4203
4204 <!-- end of section -->
4205 <tr><td colspan="7" id="section_hotPixel" class="section">hotPixel</td></tr>
4206
4207
4208 <tr><td colspan="7" class="kind">controls</td></tr>
4209
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004210 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004211 <tr>
4212 <th class="th_name">Property Name</th>
4213 <th class="th_type">Type</th>
4214 <th class="th_description">Description</th>
4215 <th class="th_units">Units</th>
4216 <th class="th_range">Range</th>
4217 <th class="th_notes">Notes</th>
4218 <th class="th_tags">Tags</th>
4219 </tr>
4220 </thead>
4221
4222 <tbody>
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233 <tr class="entry" id="controls_android.hotPixel.mode">
4234 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
4235 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004236 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004237
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004238 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004239
4240 <ul class="entry_type_enum">
4241 <li>
4242 <span class="entry_type_enum_name">OFF</span>
4243 <span class="entry_type_enum_notes">No hot pixel correction can be
4244 applied</span>
4245 </li>
4246 <li>
4247 <span class="entry_type_enum_name">FAST</span>
4248 <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
4249 Bayer output</span>
4250 </li>
4251 <li>
4252 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4253 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4254 quality</span>
4255 </li>
4256 </ul>
4257
4258 </td> <!-- entry_type -->
4259
4260 <td class="entry_description">
4261 Set operational mode for hot pixel
4262 correction
4263 </td>
4264
4265 <td class="entry_units">
4266 </td>
4267
4268 <td class="entry_range">
4269 </td>
4270
4271 <td class="entry_notes">
4272 </td>
4273
4274 <td class="entry_tags">
4275 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004276 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004277 </ul>
4278 </td>
4279
4280 </tr> <!-- end of entry -->
4281
4282
4283
4284 <!-- end of kind -->
4285 </tbody>
4286 <tr><td colspan="7" class="kind">static</td></tr>
4287
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004288 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004289 <tr>
4290 <th class="th_name">Property Name</th>
4291 <th class="th_type">Type</th>
4292 <th class="th_description">Description</th>
4293 <th class="th_units">Units</th>
4294 <th class="th_range">Range</th>
4295 <th class="th_notes">Notes</th>
4296 <th class="th_tags">Tags</th>
4297 </tr>
4298 </thead>
4299
4300 <tbody>
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313 <tr class="entry" id="static_android.hotPixel.info.map">
4314 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>info.<wbr>map</td>
4315 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004316 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004317 <span class="entry_type_container">x</span>
4318
4319 <span class="entry_type_array">
4320 2 x n
4321 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004322 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004323 <div class="entry_type_notes">list of coordinates based on android.<wbr>sensor.<wbr>pixel<wbr>Array<wbr>Size</div>
4324
4325
4326 </td> <!-- entry_type -->
4327
4328 <td class="entry_description">
4329 Location of hot/<wbr>defective pixels on
4330 sensor
4331 </td>
4332
4333 <td class="entry_units">
4334 </td>
4335
4336 <td class="entry_range">
4337 </td>
4338
4339 <td class="entry_notes">
4340 </td>
4341
4342 <td class="entry_tags">
4343 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004344 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004345 </ul>
4346 </td>
4347
4348 </tr> <!-- end of entry -->
4349
4350
4351
4352
4353
4354
4355 <!-- end of kind -->
4356 </tbody>
4357 <tr><td colspan="7" class="kind">dynamic</td></tr>
4358
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004359 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004360 <tr>
4361 <th class="th_name">Property Name</th>
4362 <th class="th_type">Type</th>
4363 <th class="th_description">Description</th>
4364 <th class="th_units">Units</th>
4365 <th class="th_range">Range</th>
4366 <th class="th_notes">Notes</th>
4367 <th class="th_tags">Tags</th>
4368 </tr>
4369 </thead>
4370
4371 <tbody>
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382 <tr class="entry" id="dynamic_android.hotPixel.mode">
4383 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
4384 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004385 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004386
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004387 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004388
4389 <ul class="entry_type_enum">
4390 <li>
4391 <span class="entry_type_enum_name">OFF</span>
4392 <span class="entry_type_enum_notes">No hot pixel correction can be
4393 applied</span>
4394 </li>
4395 <li>
4396 <span class="entry_type_enum_name">FAST</span>
4397 <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
4398 Bayer output</span>
4399 </li>
4400 <li>
4401 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4402 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4403 quality</span>
4404 </li>
4405 </ul>
4406
4407 </td> <!-- entry_type -->
4408
4409 <td class="entry_description">
4410 Set operational mode for hot pixel
4411 correction
4412 </td>
4413
4414 <td class="entry_units">
4415 </td>
4416
4417 <td class="entry_range">
4418 </td>
4419
4420 <td class="entry_notes">
4421 </td>
4422
4423 <td class="entry_tags">
4424 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004425 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004426 </ul>
4427 </td>
4428
4429 </tr> <!-- end of entry -->
4430
4431
4432
4433 <!-- end of kind -->
4434 </tbody>
4435
4436 <!-- end of section -->
4437 <tr><td colspan="7" id="section_jpeg" class="section">jpeg</td></tr>
4438
4439
4440 <tr><td colspan="7" class="kind">controls</td></tr>
4441
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004442 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004443 <tr>
4444 <th class="th_name">Property Name</th>
4445 <th class="th_type">Type</th>
4446 <th class="th_description">Description</th>
4447 <th class="th_units">Units</th>
4448 <th class="th_range">Range</th>
4449 <th class="th_notes">Notes</th>
4450 <th class="th_tags">Tags</th>
4451 </tr>
4452 </thead>
4453
4454 <tbody>
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465 <tr class="entry" id="controls_android.jpeg.gpsCoordinates">
4466 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
4467 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004468 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004469 <span class="entry_type_container">x</span>
4470
4471 <span class="entry_type_array">
4472 3
4473 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004474 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004475 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
4476
4477
4478 </td> <!-- entry_type -->
4479
4480 <td class="entry_description">
4481 GPS coordinates to include in output JPEG
4482 EXIF
4483 </td>
4484
4485 <td class="entry_units">
4486 </td>
4487
4488 <td class="entry_range">
4489 (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
4490 </td>
4491
4492 <td class="entry_notes">
4493 </td>
4494
4495 <td class="entry_tags">
4496 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004497 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004498 </ul>
4499 </td>
4500
4501 </tr> <!-- end of entry -->
4502
4503
4504 <tr class="entry" id="controls_android.jpeg.gpsProcessingMethod">
4505 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
4506 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004507 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004508
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004509 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004510
4511
4512 </td> <!-- entry_type -->
4513
4514 <td class="entry_description">
4515 32 characters describing GPS algorithm to
4516 include in EXIF
4517 </td>
4518
4519 <td class="entry_units">
4520 UTF-8 null-terminated string
4521 </td>
4522
4523 <td class="entry_range">
4524 </td>
4525
4526 <td class="entry_notes">
4527 </td>
4528
4529 <td class="entry_tags">
4530 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004531 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004532 </ul>
4533 </td>
4534
4535 </tr> <!-- end of entry -->
4536
4537
4538 <tr class="entry" id="controls_android.jpeg.gpsTimestamp">
4539 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
4540 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004541 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004542
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004543 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004544
4545
4546 </td> <!-- entry_type -->
4547
4548 <td class="entry_description">
4549 Time GPS fix was made to include in
4550 EXIF
4551 </td>
4552
4553 <td class="entry_units">
4554 UTC in seconds since January 1,<wbr> 1970
4555 </td>
4556
4557 <td class="entry_range">
4558 </td>
4559
4560 <td class="entry_notes">
4561 </td>
4562
4563 <td class="entry_tags">
4564 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004565 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004566 </ul>
4567 </td>
4568
4569 </tr> <!-- end of entry -->
4570
4571
4572 <tr class="entry" id="controls_android.jpeg.orientation">
4573 <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
4574 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004575 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004576
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004577 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004578
4579
4580 </td> <!-- entry_type -->
4581
4582 <td class="entry_description">
4583 Orientation of JPEG image to
4584 write
4585 </td>
4586
4587 <td class="entry_units">
4588 Degrees in multiples of 90
4589 </td>
4590
4591 <td class="entry_range">
4592 0,<wbr> 90,<wbr> 180,<wbr> 270
4593 </td>
4594
4595 <td class="entry_notes">
4596 </td>
4597
4598 <td class="entry_tags">
4599 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004600 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004601 </ul>
4602 </td>
4603
4604 </tr> <!-- end of entry -->
4605
4606
4607 <tr class="entry" id="controls_android.jpeg.quality">
4608 <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
4609 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004610 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004611
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004612 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004613
4614
4615 </td> <!-- entry_type -->
4616
4617 <td class="entry_description">
4618 Compression quality of the final JPEG
4619 image
4620 </td>
4621
4622 <td class="entry_units">
4623 </td>
4624
4625 <td class="entry_range">
4626 1-100; larger is higher quality
4627 </td>
4628
4629 <td class="entry_notes">
4630 85-95 is typical usage range
4631 </td>
4632
4633 <td class="entry_tags">
4634 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004635 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004636 </ul>
4637 </td>
4638
4639 </tr> <!-- end of entry -->
4640
4641
4642 <tr class="entry" id="controls_android.jpeg.thumbnailQuality">
4643 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
4644 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004645 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004646
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004647 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004648
4649
4650 </td> <!-- entry_type -->
4651
4652 <td class="entry_description">
4653 Compression quality of JPEG
4654 thumbnail
4655 </td>
4656
4657 <td class="entry_units">
4658 </td>
4659
4660 <td class="entry_range">
4661 1-100; larger is higher quality
4662 </td>
4663
4664 <td class="entry_notes">
4665 </td>
4666
4667 <td class="entry_tags">
4668 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004669 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004670 </ul>
4671 </td>
4672
4673 </tr> <!-- end of entry -->
4674
4675
4676 <tr class="entry" id="controls_android.jpeg.thumbnailSize">
4677 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
4678 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004679 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004680 <span class="entry_type_container">x</span>
4681
4682 <span class="entry_type_array">
4683 2
4684 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004685 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004686
4687
4688 </td> <!-- entry_type -->
4689
4690 <td class="entry_description">
4691 Resolution of embedded JPEG
4692 thumbnail
4693 </td>
4694
4695 <td class="entry_units">
4696 </td>
4697
4698 <td class="entry_range">
4699 from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
4700 </td>
4701
4702 <td class="entry_notes">
4703 </td>
4704
4705 <td class="entry_tags">
4706 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004707 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004708 </ul>
4709 </td>
4710
4711 </tr> <!-- end of entry -->
4712
4713
4714
4715 <!-- end of kind -->
4716 </tbody>
4717 <tr><td colspan="7" class="kind">static</td></tr>
4718
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004719 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004720 <tr>
4721 <th class="th_name">Property Name</th>
4722 <th class="th_type">Type</th>
4723 <th class="th_description">Description</th>
4724 <th class="th_units">Units</th>
4725 <th class="th_range">Range</th>
4726 <th class="th_notes">Notes</th>
4727 <th class="th_tags">Tags</th>
4728 </tr>
4729 </thead>
4730
4731 <tbody>
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742 <tr class="entry" id="static_android.jpeg.availableThumbnailSizes">
4743 <td class="entry_name">android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes</td>
4744 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004745 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004746 <span class="entry_type_container">x</span>
4747
4748 <span class="entry_type_array">
4749 2 x n
4750 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004751 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004752 <div class="entry_type_notes">list of resolution pairs</div>
4753
4754
4755 </td> <!-- entry_type -->
4756
4757 <td class="entry_description">
4758 Supported resolutions for the JPEG
4759 thumbnail
4760 </td>
4761
4762 <td class="entry_units">
4763 </td>
4764
4765 <td class="entry_range">
4766 Must include at least one valid resolution,<wbr> plus
4767 (0,<wbr>0) for no thumbnail generation
4768 </td>
4769
4770 <td class="entry_notes">
4771 </td>
4772
4773 <td class="entry_tags">
4774 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004775 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004776 </ul>
4777 </td>
4778
4779 </tr> <!-- end of entry -->
4780
4781
4782 <tr class="entry" id="static_android.jpeg.maxSize">
4783 <td class="entry_name">android.<wbr>jpeg.<wbr>max<wbr>Size</td>
4784 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004785 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004786
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004787 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004788
4789
4790 </td> <!-- entry_type -->
4791
4792 <td class="entry_description">
4793 Maximum size in bytes for the compressed
4794 JPEG buffer
4795 </td>
4796
4797 <td class="entry_units">
4798 </td>
4799
4800 <td class="entry_range">
4801 Must be large enough to fit any JPEG produced by
4802 the camera
4803 </td>
4804
4805 <td class="entry_notes">
4806 This is used for sizing the gralloc buffers for
4807 JPEG
4808 </td>
4809
4810 <td class="entry_tags">
4811 </td>
4812
4813 </tr> <!-- end of entry -->
4814
4815
4816
4817 <!-- end of kind -->
4818 </tbody>
4819 <tr><td colspan="7" class="kind">dynamic</td></tr>
4820
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004821 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004822 <tr>
4823 <th class="th_name">Property Name</th>
4824 <th class="th_type">Type</th>
4825 <th class="th_description">Description</th>
4826 <th class="th_units">Units</th>
4827 <th class="th_range">Range</th>
4828 <th class="th_notes">Notes</th>
4829 <th class="th_tags">Tags</th>
4830 </tr>
4831 </thead>
4832
4833 <tbody>
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844 <tr class="entry" id="dynamic_android.jpeg.gpsCoordinates">
4845 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
4846 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004847 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004848 <span class="entry_type_container">x</span>
4849
4850 <span class="entry_type_array">
4851 3
4852 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004853 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004854 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
4855
4856
4857 </td> <!-- entry_type -->
4858
4859 <td class="entry_description">
4860 GPS coordinates to include in output JPEG
4861 EXIF
4862 </td>
4863
4864 <td class="entry_units">
4865 </td>
4866
4867 <td class="entry_range">
4868 (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
4869 </td>
4870
4871 <td class="entry_notes">
4872 </td>
4873
4874 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004875 <ul class="entry_tags">
4876 <li><a href="#tag_BC">BC</a></li>
4877 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004878 </td>
4879
4880 </tr> <!-- end of entry -->
4881
4882
4883 <tr class="entry" id="dynamic_android.jpeg.gpsProcessingMethod">
4884 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
4885 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004886 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004887
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004888 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004889
4890
4891 </td> <!-- entry_type -->
4892
4893 <td class="entry_description">
4894 32 characters describing GPS algorithm to
4895 include in EXIF
4896 </td>
4897
4898 <td class="entry_units">
4899 UTF-8 null-terminated string
4900 </td>
4901
4902 <td class="entry_range">
4903 </td>
4904
4905 <td class="entry_notes">
4906 </td>
4907
4908 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004909 <ul class="entry_tags">
4910 <li><a href="#tag_BC">BC</a></li>
4911 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004912 </td>
4913
4914 </tr> <!-- end of entry -->
4915
4916
4917 <tr class="entry" id="dynamic_android.jpeg.gpsTimestamp">
4918 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
4919 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004920 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004921
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004922 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004923
4924
4925 </td> <!-- entry_type -->
4926
4927 <td class="entry_description">
4928 Time GPS fix was made to include in
4929 EXIF
4930 </td>
4931
4932 <td class="entry_units">
4933 UTC in seconds since January 1,<wbr> 1970
4934 </td>
4935
4936 <td class="entry_range">
4937 </td>
4938
4939 <td class="entry_notes">
4940 </td>
4941
4942 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004943 <ul class="entry_tags">
4944 <li><a href="#tag_BC">BC</a></li>
4945 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004946 </td>
4947
4948 </tr> <!-- end of entry -->
4949
4950
4951 <tr class="entry" id="dynamic_android.jpeg.orientation">
4952 <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
4953 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004954 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004955
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004956 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004957
4958
4959 </td> <!-- entry_type -->
4960
4961 <td class="entry_description">
4962 Orientation of JPEG image to
4963 write
4964 </td>
4965
4966 <td class="entry_units">
4967 Degrees in multiples of 90
4968 </td>
4969
4970 <td class="entry_range">
4971 0,<wbr> 90,<wbr> 180,<wbr> 270
4972 </td>
4973
4974 <td class="entry_notes">
4975 </td>
4976
4977 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004978 <ul class="entry_tags">
4979 <li><a href="#tag_BC">BC</a></li>
4980 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004981 </td>
4982
4983 </tr> <!-- end of entry -->
4984
4985
4986 <tr class="entry" id="dynamic_android.jpeg.quality">
4987 <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
4988 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004989 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004990
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004991 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004992
4993
4994 </td> <!-- entry_type -->
4995
4996 <td class="entry_description">
4997 Compression quality of the final JPEG
4998 image
4999 </td>
5000
5001 <td class="entry_units">
5002 </td>
5003
5004 <td class="entry_range">
5005 1-100; larger is higher quality
5006 </td>
5007
5008 <td class="entry_notes">
5009 85-95 is typical usage range
5010 </td>
5011
5012 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005013 <ul class="entry_tags">
5014 <li><a href="#tag_BC">BC</a></li>
5015 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005016 </td>
5017
5018 </tr> <!-- end of entry -->
5019
5020
5021 <tr class="entry" id="dynamic_android.jpeg.size">
5022 <td class="entry_name">android.<wbr>jpeg.<wbr>size</td>
5023 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005024 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005025
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005026 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005027
5028
5029 </td> <!-- entry_type -->
5030
5031 <td class="entry_description">
5032 The size of the compressed JPEG image,<wbr> in
5033 bytes
5034 </td>
5035
5036 <td class="entry_units">
5037 </td>
5038
5039 <td class="entry_range">
5040 >= 0
5041 </td>
5042
5043 <td class="entry_notes">
5044 If no JPEG output is produced for the request,<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005045 this must be 0.<wbr>
5046<br>
5047<br> Otherwise,<wbr> this describes the real size of the compressed
5048 JPEG image placed in the output stream.<wbr> More specifically,<wbr>
5049 if android.<wbr>jpeg.<wbr>max<wbr>Size = 1000000,<wbr> and a specific capture
5050 has android.<wbr>jpeg.<wbr>size = 500000,<wbr> then the output buffer from
5051 the JPEG stream will be 1000000 bytes,<wbr> of which the first
5052 500000 make up the real data.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005053 </td>
5054
5055 <td class="entry_tags">
5056 </td>
5057
5058 </tr> <!-- end of entry -->
5059
5060
5061 <tr class="entry" id="dynamic_android.jpeg.thumbnailQuality">
5062 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
5063 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005064 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005065
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005066 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005067
5068
5069 </td> <!-- entry_type -->
5070
5071 <td class="entry_description">
5072 Compression quality of JPEG
5073 thumbnail
5074 </td>
5075
5076 <td class="entry_units">
5077 </td>
5078
5079 <td class="entry_range">
5080 1-100; larger is higher quality
5081 </td>
5082
5083 <td class="entry_notes">
5084 </td>
5085
5086 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005087 <ul class="entry_tags">
5088 <li><a href="#tag_BC">BC</a></li>
5089 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005090 </td>
5091
5092 </tr> <!-- end of entry -->
5093
5094
5095 <tr class="entry" id="dynamic_android.jpeg.thumbnailSize">
5096 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
5097 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005098 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005099 <span class="entry_type_container">x</span>
5100
5101 <span class="entry_type_array">
5102 2
5103 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005104 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005105
5106
5107 </td> <!-- entry_type -->
5108
5109 <td class="entry_description">
5110 Resolution of embedded JPEG
5111 thumbnail
5112 </td>
5113
5114 <td class="entry_units">
5115 </td>
5116
5117 <td class="entry_range">
5118 from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
5119 </td>
5120
5121 <td class="entry_notes">
5122 </td>
5123
5124 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005125 <ul class="entry_tags">
5126 <li><a href="#tag_BC">BC</a></li>
5127 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005128 </td>
5129
5130 </tr> <!-- end of entry -->
5131
5132
5133
5134 <!-- end of kind -->
5135 </tbody>
5136
5137 <!-- end of section -->
5138 <tr><td colspan="7" id="section_lens" class="section">lens</td></tr>
5139
5140
5141 <tr><td colspan="7" class="kind">controls</td></tr>
5142
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005143 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005144 <tr>
5145 <th class="th_name">Property Name</th>
5146 <th class="th_type">Type</th>
5147 <th class="th_description">Description</th>
5148 <th class="th_units">Units</th>
5149 <th class="th_range">Range</th>
5150 <th class="th_notes">Notes</th>
5151 <th class="th_tags">Tags</th>
5152 </tr>
5153 </thead>
5154
5155 <tbody>
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166 <tr class="entry" id="controls_android.lens.aperture">
5167 <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
5168 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005169 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005170
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005171 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005172
5173
5174 </td> <!-- entry_type -->
5175
5176 <td class="entry_description">
5177 Size of the lens aperture
5178 </td>
5179
5180 <td class="entry_units">
5181 f-number (f/<wbr>NNN)
5182 </td>
5183
5184 <td class="entry_range">
5185 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
5186 </td>
5187
5188 <td class="entry_notes">
5189 Will not be supported on most devices.<wbr> Can only
5190 pick from supported list
5191 </td>
5192
5193 <td class="entry_tags">
5194 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005195 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005196 </ul>
5197 </td>
5198
5199 </tr> <!-- end of entry -->
5200
5201
5202 <tr class="entry" id="controls_android.lens.filterDensity">
5203 <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
5204 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005205 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005206
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005207 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005208
5209
5210 </td> <!-- entry_type -->
5211
5212 <td class="entry_description">
5213 State of lens neutral density
5214 filter(s)
5215 </td>
5216
5217 <td class="entry_units">
5218 number of stops of filtering
5219 </td>
5220
5221 <td class="entry_range">
5222 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
5223 </td>
5224
5225 <td class="entry_notes">
5226 Will not be supported on most devices.<wbr> Can only
5227 pick from supported list
5228 </td>
5229
5230 <td class="entry_tags">
5231 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005232 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005233 </ul>
5234 </td>
5235
5236 </tr> <!-- end of entry -->
5237
5238
5239 <tr class="entry" id="controls_android.lens.focalLength">
5240 <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
5241 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005242 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005243
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005244 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005245
5246
5247 </td> <!-- entry_type -->
5248
5249 <td class="entry_description">
5250 Lens optical zoom setting
5251 </td>
5252
5253 <td class="entry_units">
5254 focal length in mm
5255 </td>
5256
5257 <td class="entry_range">
5258 > 0
5259 </td>
5260
5261 <td class="entry_notes">
5262 Will not be supported on most devices.<wbr>
5263 </td>
5264
5265 <td class="entry_tags">
5266 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005267 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005268 </ul>
5269 </td>
5270
5271 </tr> <!-- end of entry -->
5272
5273
5274 <tr class="entry" id="controls_android.lens.focusDistance">
5275 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
5276 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005277 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005278
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005279 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005280
5281
5282 </td> <!-- entry_type -->
5283
5284 <td class="entry_description">
5285 Distance to plane of sharpest focus,<wbr>
5286 measured from frontmost surface of the lens
5287 </td>
5288
5289 <td class="entry_units">
5290 diopters (1/<wbr>m)
5291 </td>
5292
5293 <td class="entry_range">
5294 >= 0
5295 </td>
5296
5297 <td class="entry_notes">
5298 0 = infinity focus.<wbr> Used value should be clamped
5299 to (0,<wbr>minimum focus distance)
5300 </td>
5301
5302 <td class="entry_tags">
5303 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005304 <li><a href="#tag_BC">BC</a></li>
5305 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005306 </ul>
5307 </td>
5308
5309 </tr> <!-- end of entry -->
5310
5311
5312 <tr class="entry" id="controls_android.lens.opticalStabilizationMode">
5313 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
5314 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005315 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005316
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005317 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005318
5319 <ul class="entry_type_enum">
5320 <li>
5321 <span class="entry_type_enum_name">OFF</span>
5322 </li>
5323 <li>
5324 <span class="entry_type_enum_name">ON</span>
5325 <span class="entry_type_enum_optional">optional</span>
5326 </li>
5327 </ul>
5328
5329 </td> <!-- entry_type -->
5330
5331 <td class="entry_description">
5332 Whether optical image stabilization is
5333 enabled.<wbr>
5334 </td>
5335
5336 <td class="entry_units">
5337 </td>
5338
5339 <td class="entry_range">
5340 android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
5341 </td>
5342
5343 <td class="entry_notes">
5344 Will not be supported on most devices.<wbr>
5345 </td>
5346
5347 <td class="entry_tags">
5348 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005349 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005350 </ul>
5351 </td>
5352
5353 </tr> <!-- end of entry -->
5354
5355
5356
5357 <!-- end of kind -->
5358 </tbody>
5359 <tr><td colspan="7" class="kind">static</td></tr>
5360
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005361 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005362 <tr>
5363 <th class="th_name">Property Name</th>
5364 <th class="th_type">Type</th>
5365 <th class="th_description">Description</th>
5366 <th class="th_units">Units</th>
5367 <th class="th_range">Range</th>
5368 <th class="th_notes">Notes</th>
5369 <th class="th_tags">Tags</th>
5370 </tr>
5371 </thead>
5372
5373 <tbody>
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386 <tr class="entry" id="static_android.lens.info.availableApertures">
5387 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures</td>
5388 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005389 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005390 <span class="entry_type_container">x</span>
5391
5392 <span class="entry_type_array">
5393 n
5394 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005395 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005396
5397
5398 </td> <!-- entry_type -->
5399
5400 <td class="entry_description">
5401 List of supported aperture
5402 values
5403 </td>
5404
5405 <td class="entry_units">
5406 </td>
5407
5408 <td class="entry_range">
5409 one entry required,<wbr> > 0
5410 </td>
5411
5412 <td class="entry_notes">
5413 If variable aperture not available,<wbr> only setting
5414 should be for the fixed aperture
5415 </td>
5416
5417 <td class="entry_tags">
5418 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005419 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005420 </ul>
5421 </td>
5422
5423 </tr> <!-- end of entry -->
5424
5425
5426 <tr class="entry" id="static_android.lens.info.availableFilterDensities">
5427 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities</td>
5428 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005429 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005430 <span class="entry_type_container">x</span>
5431
5432 <span class="entry_type_array">
5433 n
5434 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005435 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005436
5437
5438 </td> <!-- entry_type -->
5439
5440 <td class="entry_description">
5441 List of supported ND filter
5442 values
5443 </td>
5444
5445 <td class="entry_units">
5446 </td>
5447
5448 <td class="entry_range">
5449 one entry required,<wbr> >= 0
5450 </td>
5451
5452 <td class="entry_notes">
5453 If not available,<wbr> only setting is 0.<wbr> Otherwise,<wbr>
5454 lists the available exposure index values for dimming
5455 (2 would mean the filter is set to reduce incoming
5456 light by two stops)
5457 </td>
5458
5459 <td class="entry_tags">
5460 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005461 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005462 </ul>
5463 </td>
5464
5465 </tr> <!-- end of entry -->
5466
5467
5468 <tr class="entry" id="static_android.lens.info.availableFocalLengths">
5469 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Focal<wbr>Lengths</td>
5470 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005471 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005472 <span class="entry_type_container">x</span>
5473
5474 <span class="entry_type_array">
5475 n
5476 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005477 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005478 <div class="entry_type_notes">the list of available focal lengths</div>
5479
5480
5481 </td> <!-- entry_type -->
5482
5483 <td class="entry_description">
5484 If fitted with optical zoom,<wbr> what focal
5485 lengths are available.<wbr> If not,<wbr> the static focal
5486 length
5487 </td>
5488
5489 <td class="entry_units">
5490 </td>
5491
5492 <td class="entry_range">
5493 > 0
5494 </td>
5495
5496 <td class="entry_notes">
5497 If optical zoom not supported,<wbr> only one value
5498 should be reported
5499 </td>
5500
5501 <td class="entry_tags">
5502 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005503 <li><a href="#tag_BC">BC</a></li>
5504 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005505 </ul>
5506 </td>
5507
5508 </tr> <!-- end of entry -->
5509
5510
5511 <tr class="entry" id="static_android.lens.info.availableOpticalStabilization">
5512 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Optical<wbr>Stabilization</td>
5513 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005514 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005515 <span class="entry_type_container">x</span>
5516
5517 <span class="entry_type_array">
5518 n
5519 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005520 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005521 <div class="entry_type_notes">list of enums</div>
5522
5523
5524 </td> <!-- entry_type -->
5525
5526 <td class="entry_description">
5527 List of supported optical image
5528 stabilization modes
5529 </td>
5530
5531 <td class="entry_units">
5532 </td>
5533
5534 <td class="entry_range">
5535 </td>
5536
5537 <td class="entry_notes">
5538 </td>
5539
5540 <td class="entry_tags">
5541 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005542 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005543 </ul>
5544 </td>
5545
5546 </tr> <!-- end of entry -->
5547
5548
5549 <tr class="entry" id="static_android.lens.info.geometricCorrectionMap">
5550 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map</td>
5551 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005552 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005553 <span class="entry_type_container">x</span>
5554
5555 <span class="entry_type_array">
5556 2 x 3 x n x m
5557 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005558 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005559 <div class="entry_type_notes">2D array of destination coordinate pairs for uniform grid points in source image,<wbr> per color channel.<wbr> Size in the range of 2x3x40x30</div>
5560
5561
5562 </td> <!-- entry_type -->
5563
5564 <td class="entry_description">
5565 A low-resolution map for correction of
5566 geometric distortions and chromatic aberrations,<wbr> per
5567 color channel
5568 </td>
5569
5570 <td class="entry_units">
5571 </td>
5572
5573 <td class="entry_range">
5574 N,<wbr> M >= 2
5575 </td>
5576
5577 <td class="entry_notes">
5578 [DNG wants a function instead].<wbr> What's easiest
5579 for implementers? With an array size (M,<wbr> N),<wbr> entry (i,<wbr>
5580 j) provides the destination for pixel (i/<wbr>(M-1) * width,<wbr>
5581 j/<wbr>(N-1) * height).<wbr> Data is row-major,<wbr> with each array
5582 entry being ( (X,<wbr> Y)_<wbr>r,<wbr> (X,<wbr> Y)_<wbr>g,<wbr> (X,<wbr> Y)_<wbr>b ) )
5583 </td>
5584
5585 <td class="entry_tags">
5586 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005587 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005588 </ul>
5589 </td>
5590
5591 </tr> <!-- end of entry -->
5592
5593
5594 <tr class="entry" id="static_android.lens.info.geometricCorrectionMapSize">
5595 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map<wbr>Size</td>
5596 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005597 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005598 <span class="entry_type_container">x</span>
5599
5600 <span class="entry_type_array">
5601 2
5602 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005603 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005604 <div class="entry_type_notes">width and height of geometric correction map</div>
5605
5606
5607 </td> <!-- entry_type -->
5608
5609 <td class="entry_description">
5610 Dimensions of geometric correction
5611 map
5612 </td>
5613
5614 <td class="entry_units">
5615 </td>
5616
5617 <td class="entry_range">
5618 Both values >= 2
5619 </td>
5620
5621 <td class="entry_notes">
5622 </td>
5623
5624 <td class="entry_tags">
5625 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005626 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005627 </ul>
5628 </td>
5629
5630 </tr> <!-- end of entry -->
5631
5632
5633 <tr class="entry" id="static_android.lens.info.hyperfocalDistance">
5634 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>hyperfocal<wbr>Distance</td>
5635 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005636 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005637
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005638 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005639
5640
5641 </td> <!-- entry_type -->
5642
5643 <td class="entry_description">
5644 Hyperfocal distance for this lens; set to
5645 0 if fixed focus
5646 </td>
5647
5648 <td class="entry_units">
5649 diopters
5650 </td>
5651
5652 <td class="entry_range">
5653 >= 0
5654 </td>
5655
5656 <td class="entry_notes">
5657 The hyperfocal distance is used for the old
5658 API's 'fixed' setting
5659 </td>
5660
5661 <td class="entry_tags">
5662 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005663 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005664 </ul>
5665 </td>
5666
5667 </tr> <!-- end of entry -->
5668
5669
5670 <tr class="entry" id="static_android.lens.info.minimumFocusDistance">
5671 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>minimum<wbr>Focus<wbr>Distance</td>
5672 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005673 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005674
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005675 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005676
5677
5678 </td> <!-- entry_type -->
5679
5680 <td class="entry_description">
5681 Shortest distance from frontmost surface
5682 of the lens that can be focused correctly
5683 </td>
5684
5685 <td class="entry_units">
5686 diopters
5687 </td>
5688
5689 <td class="entry_range">
5690 >= 0
5691 </td>
5692
5693 <td class="entry_notes">
5694 If the lens is fixed-focus,<wbr> this should be
5695 0
5696 </td>
5697
5698 <td class="entry_tags">
5699 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005700 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005701 </ul>
5702 </td>
5703
5704 </tr> <!-- end of entry -->
5705
5706
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005707 <tr class="entry" id="static_android.lens.info.shadingMapSize">
5708 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>shading<wbr>Map<wbr>Size</td>
5709 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005710 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005711 <span class="entry_type_container">x</span>
5712
5713 <span class="entry_type_array">
5714 2
5715 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005716 <span class="entry_type_visibility"> [public as size]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07005717 <div class="entry_type_notes">width and height of lens shading map provided by the HAL.<wbr> (N,<wbr> M)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005718
5719
5720 </td> <!-- entry_type -->
5721
5722 <td class="entry_description">
5723 Dimensions of lens shading
5724 map
5725 </td>
5726
5727 <td class="entry_units">
5728 </td>
5729
5730 <td class="entry_range">
5731 Both values >= 1
5732 </td>
5733
5734 <td class="entry_notes">
5735 </td>
5736
5737 <td class="entry_tags">
5738 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005739 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005740 </ul>
5741 </td>
5742
5743 </tr> <!-- end of entry -->
5744
5745
5746
5747
5748
5749 <tr class="entry" id="static_android.lens.facing">
5750 <td class="entry_name">android.<wbr>lens.<wbr>facing</td>
5751 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005752 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005753
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005754 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005755
5756 <ul class="entry_type_enum">
5757 <li>
5758 <span class="entry_type_enum_name">FRONT</span>
5759 </li>
5760 <li>
5761 <span class="entry_type_enum_name">BACK</span>
5762 </li>
5763 </ul>
5764
5765 </td> <!-- entry_type -->
5766
5767 <td class="entry_description">
5768 Direction the camera faces relative to
5769 device screen
5770 </td>
5771
5772 <td class="entry_units">
5773 </td>
5774
5775 <td class="entry_range">
5776 </td>
5777
5778 <td class="entry_notes">
5779 </td>
5780
5781 <td class="entry_tags">
5782 </td>
5783
5784 </tr> <!-- end of entry -->
5785
5786
5787 <tr class="entry" id="static_android.lens.opticalAxisAngle">
5788 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Axis<wbr>Angle</td>
5789 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005790 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005791 <span class="entry_type_container">x</span>
5792
5793 <span class="entry_type_array">
5794 2
5795 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005796 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005797 <div class="entry_type_notes">degrees.<wbr> First defines the angle of separation between the perpendicular to the screen and the camera optical axis.<wbr> The second then defines the clockwise rotation of the optical axis from native device up.<wbr></div>
5798
5799
5800 </td> <!-- entry_type -->
5801
5802 <td class="entry_description">
5803 Relative angle of camera optical axis to the
5804 perpendicular axis from the display
5805 </td>
5806
5807 <td class="entry_units">
5808 </td>
5809
5810 <td class="entry_range">
5811 [0-90) for first angle,<wbr> [0-360) for second
5812 </td>
5813
5814 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005815 Examples:
5816<br>
5817<br> (0,<wbr>0) means that the camera optical axis
5818 is perpendicular to the display surface;
5819<br>
5820<br> (45,<wbr>0) means that the camera points 45 degrees up when
5821 device is held upright;
5822<br>
5823<br> (45,<wbr>90) means the camera points 45 degrees to the right when
5824 the device is held upright.<wbr>
5825<br>
5826<br> Use FACING field to determine perpendicular outgoing
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005827 direction
5828 </td>
5829
5830 <td class="entry_tags">
5831 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005832 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005833 </ul>
5834 </td>
5835
5836 </tr> <!-- end of entry -->
5837
5838
5839 <tr class="entry" id="static_android.lens.position">
5840 <td class="entry_name">android.<wbr>lens.<wbr>position</td>
5841 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005842 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005843 <span class="entry_type_container">x</span>
5844
5845 <span class="entry_type_array">
5846 3, location in mm, in the sensor coordinate
5847 system
5848 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005849 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005850
5851
5852 </td> <!-- entry_type -->
5853
5854 <td class="entry_description">
5855 Coordinates of camera optical axis on
5856 device
5857 </td>
5858
5859 <td class="entry_units">
5860 </td>
5861
5862 <td class="entry_range">
5863 </td>
5864
5865 <td class="entry_notes">
5866 </td>
5867
5868 <td class="entry_tags">
5869 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005870 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005871 </ul>
5872 </td>
5873
5874 </tr> <!-- end of entry -->
5875
5876
5877
5878 <!-- end of kind -->
5879 </tbody>
5880 <tr><td colspan="7" class="kind">dynamic</td></tr>
5881
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005882 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005883 <tr>
5884 <th class="th_name">Property Name</th>
5885 <th class="th_type">Type</th>
5886 <th class="th_description">Description</th>
5887 <th class="th_units">Units</th>
5888 <th class="th_range">Range</th>
5889 <th class="th_notes">Notes</th>
5890 <th class="th_tags">Tags</th>
5891 </tr>
5892 </thead>
5893
5894 <tbody>
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905 <tr class="entry" id="dynamic_android.lens.aperture">
5906 <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
5907 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005908 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005909
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005910 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005911
5912
5913 </td> <!-- entry_type -->
5914
5915 <td class="entry_description">
5916 Size of the lens aperture
5917 </td>
5918
5919 <td class="entry_units">
5920 f-number (f/<wbr>NNN)
5921 </td>
5922
5923 <td class="entry_range">
5924 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
5925 </td>
5926
5927 <td class="entry_notes">
5928 Will not be supported on most devices.<wbr> Can only
5929 pick from supported list
5930 </td>
5931
5932 <td class="entry_tags">
5933 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005934 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005935 </ul>
5936 </td>
5937
5938 </tr> <!-- end of entry -->
5939
5940
5941 <tr class="entry" id="dynamic_android.lens.filterDensity">
5942 <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
5943 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005944 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005945
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005946 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005947
5948
5949 </td> <!-- entry_type -->
5950
5951 <td class="entry_description">
5952 State of lens neutral density
5953 filter(s)
5954 </td>
5955
5956 <td class="entry_units">
5957 number of stops of filtering
5958 </td>
5959
5960 <td class="entry_range">
5961 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
5962 </td>
5963
5964 <td class="entry_notes">
5965 Will not be supported on most devices.<wbr> Can only
5966 pick from supported list
5967 </td>
5968
5969 <td class="entry_tags">
5970 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005971 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005972 </ul>
5973 </td>
5974
5975 </tr> <!-- end of entry -->
5976
5977
5978 <tr class="entry" id="dynamic_android.lens.focalLength">
5979 <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
5980 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005981 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005982
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005983 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005984
5985
5986 </td> <!-- entry_type -->
5987
5988 <td class="entry_description">
5989 Lens optical zoom setting
5990 </td>
5991
5992 <td class="entry_units">
5993 focal length in mm
5994 </td>
5995
5996 <td class="entry_range">
5997 > 0
5998 </td>
5999
6000 <td class="entry_notes">
6001 Will not be supported on most devices.<wbr>
6002 </td>
6003
6004 <td class="entry_tags">
6005 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006006 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006007 </ul>
6008 </td>
6009
6010 </tr> <!-- end of entry -->
6011
6012
6013 <tr class="entry" id="dynamic_android.lens.focusDistance">
6014 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
6015 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006016 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006017
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006018 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006019
6020
6021 </td> <!-- entry_type -->
6022
6023 <td class="entry_description">
6024 Distance to plane of sharpest focus,<wbr>
6025 measured from frontmost surface of the lens
6026 </td>
6027
6028 <td class="entry_units">
6029 diopters (1/<wbr>m)
6030 </td>
6031
6032 <td class="entry_range">
6033 >= 0
6034 </td>
6035
6036 <td class="entry_notes">
6037 Should be zero for fixed-focus cameras
6038 </td>
6039
6040 <td class="entry_tags">
6041 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006042 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006043 </ul>
6044 </td>
6045
6046 </tr> <!-- end of entry -->
6047
6048
6049 <tr class="entry" id="dynamic_android.lens.focusRange">
6050 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Range</td>
6051 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006052 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006053
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006054 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006055
6056
6057 </td> <!-- entry_type -->
6058
6059 <td class="entry_description">
6060 The range of scene distances that are in
6061 sharp focus (depth of field)
6062 </td>
6063
6064 <td class="entry_units">
6065 pair of focus distances in diopters: (near,<wbr>
6066 far)
6067 </td>
6068
6069 <td class="entry_range">
6070 >=0
6071 </td>
6072
6073 <td class="entry_notes">
6074 If variable focus not supported,<wbr> can still report
6075 fixed depth of field range
6076 </td>
6077
6078 <td class="entry_tags">
6079 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006080 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006081 </ul>
6082 </td>
6083
6084 </tr> <!-- end of entry -->
6085
6086
6087 <tr class="entry" id="dynamic_android.lens.opticalStabilizationMode">
6088 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
6089 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006090 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006091
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006092 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006093
6094 <ul class="entry_type_enum">
6095 <li>
6096 <span class="entry_type_enum_name">OFF</span>
6097 </li>
6098 <li>
6099 <span class="entry_type_enum_name">ON</span>
6100 <span class="entry_type_enum_optional">optional</span>
6101 </li>
6102 </ul>
6103
6104 </td> <!-- entry_type -->
6105
6106 <td class="entry_description">
6107 Whether optical image stabilization is
6108 enabled.<wbr>
6109 </td>
6110
6111 <td class="entry_units">
6112 </td>
6113
6114 <td class="entry_range">
6115 android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
6116 </td>
6117
6118 <td class="entry_notes">
6119 Will not be supported on most devices.<wbr>
6120 </td>
6121
6122 <td class="entry_tags">
6123 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006124 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006125 </ul>
6126 </td>
6127
6128 </tr> <!-- end of entry -->
6129
6130
6131 <tr class="entry" id="dynamic_android.lens.state">
6132 <td class="entry_name">android.<wbr>lens.<wbr>state</td>
6133 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006134 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006135
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006136 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006137
6138 <ul class="entry_type_enum">
6139 <li>
6140 <span class="entry_type_enum_name">STATIONARY</span>
6141 </li>
Igor Murashkin0e323a12013-09-06 11:50:48 -07006142 <li>
6143 <span class="entry_type_enum_name">MOVING</span>
6144 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006145 </ul>
6146
6147 </td> <!-- entry_type -->
6148
6149 <td class="entry_description">
6150 Current lens status
6151 </td>
6152
6153 <td class="entry_units">
6154 </td>
6155
6156 <td class="entry_range">
6157 </td>
6158
6159 <td class="entry_notes">
6160 </td>
6161
6162 <td class="entry_tags">
6163 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006164 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006165 </ul>
6166 </td>
6167
6168 </tr> <!-- end of entry -->
6169
6170
6171
6172 <!-- end of kind -->
6173 </tbody>
6174
6175 <!-- end of section -->
6176 <tr><td colspan="7" id="section_noiseReduction" class="section">noiseReduction</td></tr>
6177
6178
6179 <tr><td colspan="7" class="kind">controls</td></tr>
6180
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006181 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006182 <tr>
6183 <th class="th_name">Property Name</th>
6184 <th class="th_type">Type</th>
6185 <th class="th_description">Description</th>
6186 <th class="th_units">Units</th>
6187 <th class="th_range">Range</th>
6188 <th class="th_notes">Notes</th>
6189 <th class="th_tags">Tags</th>
6190 </tr>
6191 </thead>
6192
6193 <tbody>
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204 <tr class="entry" id="controls_android.noiseReduction.mode">
6205 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
6206 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006207 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006208
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006209 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006210
6211 <ul class="entry_type_enum">
6212 <li>
6213 <span class="entry_type_enum_name">OFF</span>
6214 <span class="entry_type_enum_notes">No noise reduction is applied</span>
6215 </li>
6216 <li>
6217 <span class="entry_type_enum_name">FAST</span>
6218 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
6219 bayer output</span>
6220 </li>
6221 <li>
6222 <span class="entry_type_enum_name">HIGH_QUALITY</span>
6223 <span class="entry_type_enum_notes">May slow down frame rate to provide highest
6224 quality</span>
6225 </li>
6226 </ul>
6227
6228 </td> <!-- entry_type -->
6229
6230 <td class="entry_description">
6231 Mode of operation for the noise reduction
6232 algorithm
6233 </td>
6234
6235 <td class="entry_units">
6236 </td>
6237
6238 <td class="entry_range">
6239 android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
6240 </td>
6241
6242 <td class="entry_notes">
6243 </td>
6244
6245 <td class="entry_tags">
6246 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006247 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006248 </ul>
6249 </td>
6250
6251 </tr> <!-- end of entry -->
6252
6253
6254 <tr class="entry" id="controls_android.noiseReduction.strength">
6255 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>strength</td>
6256 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006257 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006258
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006259 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006260
6261
6262 </td> <!-- entry_type -->
6263
6264 <td class="entry_description">
6265 Control the amount of noise reduction
6266 applied to the images
6267 </td>
6268
6269 <td class="entry_units">
6270 1-10; 10 is max noise reduction
6271 </td>
6272
6273 <td class="entry_range">
6274 1 - 10
6275 </td>
6276
6277 <td class="entry_notes">
6278 </td>
6279
6280 <td class="entry_tags">
6281 </td>
6282
6283 </tr> <!-- end of entry -->
6284
6285
6286
6287 <!-- end of kind -->
6288 </tbody>
6289 <tr><td colspan="7" class="kind">dynamic</td></tr>
6290
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006291 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006292 <tr>
6293 <th class="th_name">Property Name</th>
6294 <th class="th_type">Type</th>
6295 <th class="th_description">Description</th>
6296 <th class="th_units">Units</th>
6297 <th class="th_range">Range</th>
6298 <th class="th_notes">Notes</th>
6299 <th class="th_tags">Tags</th>
6300 </tr>
6301 </thead>
6302
6303 <tbody>
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314 <tr class="entry" id="dynamic_android.noiseReduction.mode">
6315 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
6316 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006317 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006318
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006319 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006320
6321 <ul class="entry_type_enum">
6322 <li>
6323 <span class="entry_type_enum_name">OFF</span>
6324 <span class="entry_type_enum_notes">No noise reduction is applied</span>
6325 </li>
6326 <li>
6327 <span class="entry_type_enum_name">FAST</span>
6328 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
6329 bayer output</span>
6330 </li>
6331 <li>
6332 <span class="entry_type_enum_name">HIGH_QUALITY</span>
6333 <span class="entry_type_enum_notes">May slow down frame rate to provide highest
6334 quality</span>
6335 </li>
6336 </ul>
6337
6338 </td> <!-- entry_type -->
6339
6340 <td class="entry_description">
6341 Mode of operation for the noise reduction
6342 algorithm
6343 </td>
6344
6345 <td class="entry_units">
6346 </td>
6347
6348 <td class="entry_range">
6349 android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
6350 </td>
6351
6352 <td class="entry_notes">
6353 </td>
6354
6355 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006356 <ul class="entry_tags">
6357 <li><a href="#tag_V1">V1</a></li>
6358 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006359 </td>
6360
6361 </tr> <!-- end of entry -->
6362
6363
6364
6365 <!-- end of kind -->
6366 </tbody>
6367
6368 <!-- end of section -->
6369 <tr><td colspan="7" id="section_quirks" class="section">quirks</td></tr>
6370
6371
6372 <tr><td colspan="7" class="kind">static</td></tr>
6373
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006374 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006375 <tr>
6376 <th class="th_name">Property Name</th>
6377 <th class="th_type">Type</th>
6378 <th class="th_description">Description</th>
6379 <th class="th_units">Units</th>
6380 <th class="th_range">Range</th>
6381 <th class="th_notes">Notes</th>
6382 <th class="th_tags">Tags</th>
6383 </tr>
6384 </thead>
6385
6386 <tbody>
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397 <tr class="entry" id="static_android.quirks.meteringCropRegion">
6398 <td class="entry_name">android.<wbr>quirks.<wbr>metering<wbr>Crop<wbr>Region</td>
6399 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006400 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006401
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006402 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006403
6404
6405 </td> <!-- entry_type -->
6406
6407 <td class="entry_description">
6408 If set to 1,<wbr> the camera service does not
6409 scale 'normalized' coordinates with respect to the crop
6410 region.<wbr> This applies to metering input (a{e,<wbr>f,<wbr>wb}Region
6411 and output (face rectangles).<wbr>
6412 </td>
6413
6414 <td class="entry_units">
6415 </td>
6416
6417 <td class="entry_range">
6418 </td>
6419
6420 <td class="entry_notes">
6421 Normalized coordinates refer to those in the
6422 (-1000,<wbr>1000) range mentioned in the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006423 android.<wbr>hardware.<wbr><wbr>Camera API.<wbr>
6424<br>
6425<br> HAL implementations should instead always use and emit
6426 sensor array-relative coordinates for all region data.<wbr> Does
6427 not need to be listed in static metadata.<wbr> Support will be
6428 removed in future versions of camera service.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006429 </td>
6430
6431 <td class="entry_tags">
6432 </td>
6433
6434 </tr> <!-- end of entry -->
6435
6436
6437 <tr class="entry" id="static_android.quirks.triggerAfWithAuto">
6438 <td class="entry_name">android.<wbr>quirks.<wbr>trigger<wbr>Af<wbr>With<wbr>Auto</td>
6439 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006440 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006441
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006442 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006443
6444
6445 </td> <!-- entry_type -->
6446
6447 <td class="entry_description">
6448 If set to 1,<wbr> then the camera service always
6449 switches to FOCUS_<wbr>MODE_<wbr>AUTO before issuing a AF
6450 trigger.<wbr>
6451 </td>
6452
6453 <td class="entry_units">
6454 </td>
6455
6456 <td class="entry_range">
6457 </td>
6458
6459 <td class="entry_notes">
6460 HAL implementations should implement AF trigger
6461 modes for AUTO,<wbr> MACRO,<wbr> CONTINUOUS_<wbr>FOCUS,<wbr> and
6462 CONTINUOUS_<wbr>PICTURE modes instead of using this flag.<wbr> Does
6463 not need to be listed in static metadata.<wbr> Support will be
6464 removed in future versions of camera service
6465 </td>
6466
6467 <td class="entry_tags">
6468 </td>
6469
6470 </tr> <!-- end of entry -->
6471
6472
6473 <tr class="entry" id="static_android.quirks.useZslFormat">
6474 <td class="entry_name">android.<wbr>quirks.<wbr>use<wbr>Zsl<wbr>Format</td>
6475 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006476 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006477
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006478 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006479
6480
6481 </td> <!-- entry_type -->
6482
6483 <td class="entry_description">
6484 If set to 1,<wbr> the camera service uses
6485 CAMERA2_<wbr>PIXEL_<wbr>FORMAT_<wbr>ZSL instead of
6486 HAL_<wbr>PIXEL_<wbr>FORMAT_<wbr>IMPLEMENTATION_<wbr>DEFINED for the zero
6487 shutter lag stream
6488 </td>
6489
6490 <td class="entry_units">
6491 </td>
6492
6493 <td class="entry_range">
6494 </td>
6495
6496 <td class="entry_notes">
6497 HAL implementations should use gralloc usage flags
6498 to determine that a stream will be used for
6499 zero-shutter-lag,<wbr> instead of relying on an explicit
6500 format setting.<wbr> Does not need to be listed in static
6501 metadata.<wbr> Support will be removed in future versions of
6502 camera service.<wbr>
6503 </td>
6504
6505 <td class="entry_tags">
6506 </td>
6507
6508 </tr> <!-- end of entry -->
6509
6510
6511
6512 <!-- end of kind -->
6513 </tbody>
6514
6515 <!-- end of section -->
6516 <tr><td colspan="7" id="section_request" class="section">request</td></tr>
6517
6518
6519 <tr><td colspan="7" class="kind">controls</td></tr>
6520
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006521 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006522 <tr>
6523 <th class="th_name">Property Name</th>
6524 <th class="th_type">Type</th>
6525 <th class="th_description">Description</th>
6526 <th class="th_units">Units</th>
6527 <th class="th_range">Range</th>
6528 <th class="th_notes">Notes</th>
6529 <th class="th_tags">Tags</th>
6530 </tr>
6531 </thead>
6532
6533 <tbody>
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544 <tr class="entry" id="controls_android.request.frameCount">
6545 <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
6546 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006547 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006548
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006549 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006550
6551
6552 </td> <!-- entry_type -->
6553
6554 <td class="entry_description">
6555 A frame counter set by the framework.<wbr> Must
6556 be maintained unchanged in output frame
6557 </td>
6558
6559 <td class="entry_units">
6560 incrementing integer
6561 </td>
6562
6563 <td class="entry_range">
6564 Any int
6565 </td>
6566
6567 <td class="entry_notes">
6568 </td>
6569
6570 <td class="entry_tags">
6571 </td>
6572
6573 </tr> <!-- end of entry -->
6574
6575
6576 <tr class="entry" id="controls_android.request.id">
6577 <td class="entry_name">android.<wbr>request.<wbr>id</td>
6578 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006579 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006580
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006581 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006582
6583
6584 </td> <!-- entry_type -->
6585
6586 <td class="entry_description">
6587 An application-specified ID for the current
6588 request.<wbr> Must be maintained unchanged in output
6589 frame
6590 </td>
6591
6592 <td class="entry_units">
6593 arbitrary integer assigned by application
6594 </td>
6595
6596 <td class="entry_range">
6597 Any int
6598 </td>
6599
6600 <td class="entry_notes">
6601 </td>
6602
6603 <td class="entry_tags">
6604 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006605 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006606 </ul>
6607 </td>
6608
6609 </tr> <!-- end of entry -->
6610
6611
6612 <tr class="entry" id="controls_android.request.inputStreams">
6613 <td class="entry_name">android.<wbr>request.<wbr>input<wbr>Streams</td>
6614 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006615 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006616 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006617
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006618 <span class="entry_type_array">
6619 n
6620 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006621 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006622
6623
6624 </td> <!-- entry_type -->
6625
6626 <td class="entry_description">
6627 List which camera reprocess stream is used
6628 for the source of reprocessing data.<wbr>
6629 </td>
6630
6631 <td class="entry_units">
6632 List of camera reprocess stream IDs
6633 </td>
6634
6635 <td class="entry_range">
6636 Typically,<wbr> only one entry allowed,<wbr> must be a valid
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006637 reprocess stream ID.<wbr>
6638
6639 If android.<wbr>jpeg.<wbr>needs<wbr>Thumbnail is set,<wbr> then multiple
6640 reprocess streams may be included in a single request; they
6641 must be different scaled versions of the same image.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006642 </td>
6643
6644 <td class="entry_notes">
6645 Only meaningful when android.<wbr>request.<wbr>type ==
6646 REPROCESS.<wbr> Ignored otherwise
6647 </td>
6648
6649 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006650 <ul class="entry_tags">
6651 <li><a href="#tag_HAL2">HAL2</a></li>
6652 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006653 </td>
6654
6655 </tr> <!-- end of entry -->
6656
6657
6658 <tr class="entry" id="controls_android.request.metadataMode">
6659 <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
6660 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006661 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006662
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006663 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006664
6665 <ul class="entry_type_enum">
6666 <li>
6667 <span class="entry_type_enum_name">NONE</span>
6668 <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
6669 for application-bound buffer data.<wbr> If no
6670 application-bound streams exist,<wbr> no frame should be
6671 placed in the output frame queue.<wbr> If such streams
6672 exist,<wbr> a frame should be placed on the output queue
6673 with null metadata but with the necessary output buffer
6674 information.<wbr> Timestamp information should still be
6675 included with any output stream buffers</span>
6676 </li>
6677 <li>
6678 <span class="entry_type_enum_name">FULL</span>
6679 <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
6680 only be produced if they are separately
6681 enabled</span>
6682 </li>
6683 </ul>
6684
6685 </td> <!-- entry_type -->
6686
6687 <td class="entry_description">
6688 How much metadata to produce on
6689 output
6690 </td>
6691
6692 <td class="entry_units">
6693 </td>
6694
6695 <td class="entry_range">
6696 </td>
6697
6698 <td class="entry_notes">
6699 </td>
6700
6701 <td class="entry_tags">
6702 </td>
6703
6704 </tr> <!-- end of entry -->
6705
6706
6707 <tr class="entry" id="controls_android.request.outputStreams">
6708 <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
6709 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006710 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006711 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006712
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006713 <span class="entry_type_array">
6714 n
6715 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006716 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006717
6718
6719 </td> <!-- entry_type -->
6720
6721 <td class="entry_description">
6722 Lists which camera output streams image data
6723 from this capture must be sent to
6724 </td>
6725
6726 <td class="entry_units">
6727 List of camera stream IDs
6728 </td>
6729
6730 <td class="entry_range">
6731 List must only include streams that have been
6732 created
6733 </td>
6734
6735 <td class="entry_notes">
6736 If no output streams are listed,<wbr> then the image
6737 data should simply be discarded.<wbr> The image data must
6738 still be captured for metadata and statistics production,<wbr>
6739 and the lens and flash must operate as requested.<wbr>
6740 </td>
6741
6742 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006743 <ul class="entry_tags">
6744 <li><a href="#tag_HAL2">HAL2</a></li>
6745 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006746 </td>
6747
6748 </tr> <!-- end of entry -->
6749
6750
6751 <tr class="entry" id="controls_android.request.type">
6752 <td class="entry_name">android.<wbr>request.<wbr>type</td>
6753 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006754 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006755
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006756 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006757
6758 <ul class="entry_type_enum">
6759 <li>
6760 <span class="entry_type_enum_name">CAPTURE</span>
6761 <span class="entry_type_enum_notes">Capture a new image from the imaging hardware,<wbr>
6762 and process it according to the
6763 settings</span>
6764 </li>
6765 <li>
6766 <span class="entry_type_enum_name">REPROCESS</span>
6767 <span class="entry_type_enum_notes">Process previously captured data; the
6768 android.<wbr>request.<wbr>input<wbr>Stream parameter determines the
6769 source reprocessing stream.<wbr> TODO: Mark dynamic metadata
6770 needed for reprocessing with [RP]</span>
6771 </li>
6772 </ul>
6773
6774 </td> <!-- entry_type -->
6775
6776 <td class="entry_description">
6777 The type of the request; either CAPTURE or
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006778 REPROCESS.<wbr> For HAL3,<wbr> this tag is redundant.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006779 </td>
6780
6781 <td class="entry_units">
6782 </td>
6783
6784 <td class="entry_range">
6785 </td>
6786
6787 <td class="entry_notes">
6788 </td>
6789
6790 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006791 <ul class="entry_tags">
6792 <li><a href="#tag_HAL2">HAL2</a></li>
6793 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006794 </td>
6795
6796 </tr> <!-- end of entry -->
6797
6798
6799
6800 <!-- end of kind -->
6801 </tbody>
6802 <tr><td colspan="7" class="kind">static</td></tr>
6803
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006804 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006805 <tr>
6806 <th class="th_name">Property Name</th>
6807 <th class="th_type">Type</th>
6808 <th class="th_description">Description</th>
6809 <th class="th_units">Units</th>
6810 <th class="th_range">Range</th>
6811 <th class="th_notes">Notes</th>
6812 <th class="th_tags">Tags</th>
6813 </tr>
6814 </thead>
6815
6816 <tbody>
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827 <tr class="entry" id="static_android.request.maxNumOutputStreams">
6828 <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Output<wbr>Streams</td>
6829 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006830 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006831 <span class="entry_type_container">x</span>
6832
6833 <span class="entry_type_array">
6834 3
6835 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006836 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006837
6838
6839 </td> <!-- entry_type -->
6840
6841 <td class="entry_description">
6842 How many output streams can be allocated at
6843 the same time for each type of stream
6844 </td>
6845
6846 <td class="entry_units">
6847 The number of raw sensor streams; the number of
6848 processed,<wbr> uncompressed streams; and the number of
6849 JPEG-compressed streams
6850 </td>
6851
6852 <td class="entry_range">
6853 >=1 for Raw and JPEG-compressed stream.<wbr> >= 3
6854 for processed,<wbr> uncompressed streams
6855 </td>
6856
6857 <td class="entry_notes">
6858 Video snapshot with preview callbacks requires 3
6859 processed streams (preview,<wbr> record,<wbr> app callbacks) and
6860 one JPEG stream (snapshot)
6861 </td>
6862
6863 <td class="entry_tags">
6864 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006865 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006866 </ul>
6867 </td>
6868
6869 </tr> <!-- end of entry -->
6870
6871
6872 <tr class="entry" id="static_android.request.maxNumReprocessStreams">
6873 <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Reprocess<wbr>Streams</td>
6874 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006875 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006876 <span class="entry_type_container">x</span>
6877
6878 <span class="entry_type_array">
6879 1
6880 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006881 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006882
6883
6884 </td> <!-- entry_type -->
6885
6886 <td class="entry_description">
6887 How many reprocessing streams of any type
6888 can be allocated at the same time
6889 </td>
6890
6891 <td class="entry_units">
6892 </td>
6893
6894 <td class="entry_range">
6895 >= 1
6896 </td>
6897
6898 <td class="entry_notes">
6899 </td>
6900
6901 <td class="entry_tags">
6902 </td>
6903
6904 </tr> <!-- end of entry -->
6905
6906
6907
6908 <!-- end of kind -->
6909 </tbody>
6910 <tr><td colspan="7" class="kind">dynamic</td></tr>
6911
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006912 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006913 <tr>
6914 <th class="th_name">Property Name</th>
6915 <th class="th_type">Type</th>
6916 <th class="th_description">Description</th>
6917 <th class="th_units">Units</th>
6918 <th class="th_range">Range</th>
6919 <th class="th_notes">Notes</th>
6920 <th class="th_tags">Tags</th>
6921 </tr>
6922 </thead>
6923
6924 <tbody>
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935 <tr class="entry" id="dynamic_android.request.frameCount">
6936 <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
6937 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006938 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006939
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006940 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006941
6942
6943 </td> <!-- entry_type -->
6944
6945 <td class="entry_description">
6946 Number of frames captured since
6947 open()
6948 </td>
6949
6950 <td class="entry_units">
6951 count of frames
6952 </td>
6953
6954 <td class="entry_range">
6955 > 0
6956 </td>
6957
6958 <td class="entry_notes">
6959 Reset on release()
6960 </td>
6961
6962 <td class="entry_tags">
6963 </td>
6964
6965 </tr> <!-- end of entry -->
6966
6967
6968 <tr class="entry" id="dynamic_android.request.id">
6969 <td class="entry_name">android.<wbr>request.<wbr>id</td>
6970 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006971 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006972
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006973 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006974
6975
6976 </td> <!-- entry_type -->
6977
6978 <td class="entry_description">
6979 An application-specified ID for the current
6980 request.<wbr> Must be maintained unchanged in output
6981 frame
6982 </td>
6983
6984 <td class="entry_units">
6985 arbitrary integer assigned by application
6986 </td>
6987
6988 <td class="entry_range">
6989 Any int
6990 </td>
6991
6992 <td class="entry_notes">
6993 </td>
6994
6995 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006996 <ul class="entry_tags">
6997 <li><a href="#tag_V1">V1</a></li>
6998 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006999 </td>
7000
7001 </tr> <!-- end of entry -->
7002
7003
7004 <tr class="entry" id="dynamic_android.request.metadataMode">
7005 <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
7006 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007007 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007008
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007009 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007010
7011 <ul class="entry_type_enum">
7012 <li>
7013 <span class="entry_type_enum_name">NONE</span>
7014 <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
7015 for application-bound buffer data.<wbr> If no
7016 application-bound streams exist,<wbr> no frame should be
7017 placed in the output frame queue.<wbr> If such streams
7018 exist,<wbr> a frame should be placed on the output queue
7019 with null metadata but with the necessary output buffer
7020 information.<wbr> Timestamp information should still be
7021 included with any output stream buffers</span>
7022 </li>
7023 <li>
7024 <span class="entry_type_enum_name">FULL</span>
7025 <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
7026 only be produced if they are separately
7027 enabled</span>
7028 </li>
7029 </ul>
7030
7031 </td> <!-- entry_type -->
7032
7033 <td class="entry_description">
7034 How much metadata to produce on
7035 output
7036 </td>
7037
7038 <td class="entry_units">
7039 </td>
7040
7041 <td class="entry_range">
7042 </td>
7043
7044 <td class="entry_notes">
7045 </td>
7046
7047 <td class="entry_tags">
7048 </td>
7049
7050 </tr> <!-- end of entry -->
7051
7052
7053 <tr class="entry" id="dynamic_android.request.outputStreams">
7054 <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
7055 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07007056 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007057 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007058
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007059 <span class="entry_type_array">
7060 n
7061 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007062 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007063
7064
7065 </td> <!-- entry_type -->
7066
7067 <td class="entry_description">
7068 Lists which camera output streams image data
7069 from this capture must be sent to
7070 </td>
7071
7072 <td class="entry_units">
7073 List of camera stream IDs
7074 </td>
7075
7076 <td class="entry_range">
7077 List must only include streams that have been
7078 created
7079 </td>
7080
7081 <td class="entry_notes">
7082 If no output streams are listed,<wbr> then the image
7083 data should simply be discarded.<wbr> The image data must
7084 still be captured for metadata and statistics production,<wbr>
7085 and the lens and flash must operate as requested.<wbr>
7086 </td>
7087
7088 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007089 <ul class="entry_tags">
7090 <li><a href="#tag_HAL2">HAL2</a></li>
7091 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007092 </td>
7093
7094 </tr> <!-- end of entry -->
7095
7096
7097
7098 <!-- end of kind -->
7099 </tbody>
7100
7101 <!-- end of section -->
7102 <tr><td colspan="7" id="section_scaler" class="section">scaler</td></tr>
7103
7104
7105 <tr><td colspan="7" class="kind">controls</td></tr>
7106
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007107 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007108 <tr>
7109 <th class="th_name">Property Name</th>
7110 <th class="th_type">Type</th>
7111 <th class="th_description">Description</th>
7112 <th class="th_units">Units</th>
7113 <th class="th_range">Range</th>
7114 <th class="th_notes">Notes</th>
7115 <th class="th_tags">Tags</th>
7116 </tr>
7117 </thead>
7118
7119 <tbody>
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130 <tr class="entry" id="controls_android.scaler.cropRegion">
7131 <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
7132 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007133 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007134 <span class="entry_type_container">x</span>
7135
7136 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007137 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007138 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007139 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007140
7141
7142 </td> <!-- entry_type -->
7143
7144 <td class="entry_description">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007145 (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
7146<br>
7147<br> A rectangle with the top-level corner of (x,<wbr>y) and size
7148 (width,<wbr> height).<wbr> The region of the sensor that is used for
7149 output.<wbr> Each stream must use this rectangle to produce its
7150 output,<wbr> cropping to a smaller region if necessary to
7151 maintain the stream's aspect ratio.<wbr>
7152<br>
7153<br> HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007154 </td>
7155
7156 <td class="entry_units">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007157 (x,<wbr>y) of top-left corner,<wbr> width and height of region
7158 in pixels; (0,<wbr>0) is top-left corner of
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007159 android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007160 </td>
7161
7162 <td class="entry_range">
7163 </td>
7164
7165 <td class="entry_notes">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007166
7167 Any additional per-stream cropping must be done to
7168 maximize the final pixel area of the stream.<wbr>
7169<br>
7170<br> For example,<wbr> if the crop region is set to a 4:3 aspect
7171 ratio,<wbr> then 4:3 streams should use the exact crop
7172 region.<wbr> 16:9 streams should further crop vertically
7173 (letterbox).<wbr>
7174<br>
7175<br> Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
7176 outputs should crop horizontally (pillarbox),<wbr> and 16:9
7177 streams should match exactly.<wbr> These additional crops must
7178 be centered within the crop region.<wbr>
7179<br>
7180<br> The output streams must maintain square pixels at all
7181 times,<wbr> no matter what the relative aspect ratios of the
7182 crop region and the stream are.<wbr> Negative values for
7183 corner are allowed for raw output if full pixel array is
7184 larger than active pixel array.<wbr> Width and height may be
7185 rounded to nearest larger supportable width,<wbr> especially
7186 for raw output,<wbr> where only a few fixed scales may be
7187 possible.<wbr> The width and height of the crop region cannot
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007188 be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007189 android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007190 activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007191 respectively.<wbr>
7192
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007193 </td>
7194
7195 <td class="entry_tags">
7196 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007197 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007198 </ul>
7199 </td>
7200
7201 </tr> <!-- end of entry -->
7202
7203
7204
7205 <!-- end of kind -->
7206 </tbody>
7207 <tr><td colspan="7" class="kind">static</td></tr>
7208
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007209 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007210 <tr>
7211 <th class="th_name">Property Name</th>
7212 <th class="th_type">Type</th>
7213 <th class="th_description">Description</th>
7214 <th class="th_units">Units</th>
7215 <th class="th_range">Range</th>
7216 <th class="th_notes">Notes</th>
7217 <th class="th_tags">Tags</th>
7218 </tr>
7219 </thead>
7220
7221 <tbody>
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232 <tr class="entry" id="static_android.scaler.availableFormats">
7233 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Formats</td>
7234 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007235 <span class="entry_type_name entry_type_name_enum">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007236 <span class="entry_type_container">x</span>
7237
7238 <span class="entry_type_array">
7239 n
7240 </span>
Eino-Ville Talvalad4e240a2013-08-08 12:56:37 -07007241 <span class="entry_type_visibility"> [public as imageFormat]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007242 <div class="entry_type_notes">values from HAL_<wbr>PIXEL_<wbr>FORMAT_<wbr>* in /<wbr>system/<wbr>core/<wbr>include/<wbr>system/<wbr>graphics.<wbr>h</div>
7243
7244 <ul class="entry_type_enum">
7245 <li>
7246 <span class="entry_type_enum_name">RAW_SENSOR</span>
7247 <span class="entry_type_enum_value">0x20</span>
7248 </li>
7249 <li>
7250 <span class="entry_type_enum_name">YV12</span>
7251 <span class="entry_type_enum_value">0x32315659</span>
7252 <span class="entry_type_enum_notes">YCrCb 4:2:0 Planar</span>
7253 </li>
7254 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007255 <span class="entry_type_enum_name">YCrCb_420_SP</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007256 <span class="entry_type_enum_value">0x11</span>
7257 <span class="entry_type_enum_notes">NV21</span>
7258 </li>
7259 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007260 <span class="entry_type_enum_name">IMPLEMENTATION_DEFINED</span>
7261 <span class="entry_type_enum_value">0x22</span>
7262 <span class="entry_type_enum_notes">Hal Implementation Defined</span>
7263 </li>
7264 <li>
7265 <span class="entry_type_enum_name">YCbCr_420_888</span>
7266 <span class="entry_type_enum_value">0x23</span>
7267 <span class="entry_type_enum_notes">Flexible YUV420 Format</span>
7268 </li>
7269 <li>
7270 <span class="entry_type_enum_name">BLOB</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007271 <span class="entry_type_enum_value">0x21</span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007272 <span class="entry_type_enum_notes">JPEG</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007273 </li>
7274 </ul>
7275
7276 </td> <!-- entry_type -->
7277
7278 <td class="entry_description">
7279 List of app-visible formats
7280 </td>
7281
7282 <td class="entry_units">
7283 </td>
7284
7285 <td class="entry_range">
7286 </td>
7287
7288 <td class="entry_notes">
7289 </td>
7290
7291 <td class="entry_tags">
7292 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007293 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007294 </ul>
7295 </td>
7296
7297 </tr> <!-- end of entry -->
7298
7299
7300 <tr class="entry" id="static_android.scaler.availableJpegMinDurations">
7301 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations</td>
7302 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007303 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007304 <span class="entry_type_container">x</span>
7305
7306 <span class="entry_type_array">
7307 n
7308 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007309 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007310
7311
7312 </td> <!-- entry_type -->
7313
7314 <td class="entry_description">
7315 The minimum frame duration that is supported
7316 for each resolution in availableJpegSizes.<wbr> Should
7317 correspond to the frame duration when only that JPEG
Zhijun He69fc0ea2013-07-17 09:42:58 -07007318 stream is active and captured in a burst,<wbr> with all
7319 processing set to FAST
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007320 </td>
7321
7322 <td class="entry_units">
7323 </td>
7324
7325 <td class="entry_range">
7326 </td>
7327
7328 <td class="entry_notes">
7329 When multiple streams are configured,<wbr> the minimum
7330 frame duration will be >= max(individual stream min
7331 durations)
7332 </td>
7333
7334 <td class="entry_tags">
7335 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007336 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007337 </ul>
7338 </td>
7339
7340 </tr> <!-- end of entry -->
7341
7342
7343 <tr class="entry" id="static_android.scaler.availableJpegSizes">
7344 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Sizes</td>
7345 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007346 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007347 <span class="entry_type_container">x</span>
7348
7349 <span class="entry_type_array">
7350 n x 2
7351 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007352 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007353
7354
7355 </td> <!-- entry_type -->
7356
7357 <td class="entry_description">
7358 The resolutions available for output from
7359 the JPEG block.<wbr> Listed as width x height
7360 </td>
7361
7362 <td class="entry_units">
7363 </td>
7364
7365 <td class="entry_range">
7366 Must include: - sensor maximum resolution Should
7367 include: - half/<wbr>quarter max resolution
7368 </td>
7369
7370 <td class="entry_notes">
7371 </td>
7372
7373 <td class="entry_tags">
7374 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007375 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007376 </ul>
7377 </td>
7378
7379 </tr> <!-- end of entry -->
7380
7381
7382 <tr class="entry" id="static_android.scaler.availableMaxDigitalZoom">
7383 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Max<wbr>Digital<wbr>Zoom</td>
7384 <td class="entry_type">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007385 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007386
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007387 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007388
7389
7390 </td> <!-- entry_type -->
7391
7392 <td class="entry_description">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007393 The maximum ratio between active area width
7394 and crop region width,<wbr> or between active area height and
7395 crop region height,<wbr> if the crop region height is larger
7396 than width
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007397 </td>
7398
7399 <td class="entry_units">
7400 </td>
7401
7402 <td class="entry_range">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007403 >=1
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007404 </td>
7405
7406 <td class="entry_notes">
7407 </td>
7408
7409 <td class="entry_tags">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007410 <ul class="entry_tags">
7411 <li><a href="#tag_BC">BC</a></li>
7412 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007413 </td>
7414
7415 </tr> <!-- end of entry -->
7416
7417
7418 <tr class="entry" id="static_android.scaler.availableProcessedMinDurations">
7419 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations</td>
7420 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007421 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007422 <span class="entry_type_container">x</span>
7423
7424 <span class="entry_type_array">
7425 n
7426 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007427 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007428
7429
7430 </td> <!-- entry_type -->
7431
7432 <td class="entry_description">
7433 The minimum frame duration that is supported
7434 for each resolution in availableProcessedSizes.<wbr> Should
7435 correspond to the frame duration when only that processed
7436 stream is active,<wbr> with all processing set to
7437 FAST
7438 </td>
7439
7440 <td class="entry_units">
7441 </td>
7442
7443 <td class="entry_range">
7444 </td>
7445
7446 <td class="entry_notes">
7447 When multiple streams are configured,<wbr> the minimum
7448 frame duration will be >= max(individual stream min
7449 durations)
7450 </td>
7451
7452 <td class="entry_tags">
7453 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007454 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007455 </ul>
7456 </td>
7457
7458 </tr> <!-- end of entry -->
7459
7460
7461 <tr class="entry" id="static_android.scaler.availableProcessedSizes">
7462 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Sizes</td>
7463 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007464 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007465 <span class="entry_type_container">x</span>
7466
7467 <span class="entry_type_array">
7468 n x 2
7469 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007470 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007471
7472
7473 </td> <!-- entry_type -->
7474
7475 <td class="entry_description">
7476 The resolutions available for use with
7477 processed output streams,<wbr> such as YV12,<wbr> NV12,<wbr> and
7478 platform opaque YUV/<wbr>RGB streams to the GPU or video
7479 encoders.<wbr> Listed as width,<wbr> height
7480 </td>
7481
7482 <td class="entry_units">
7483 </td>
7484
7485 <td class="entry_range">
7486 Must include: - sensor maximum resolution -
7487 standard QCIF,<wbr> 240p,<wbr> 480p,<wbr> 720p,<wbr> and 1080p
7488 resolutions
7489 </td>
7490
7491 <td class="entry_notes">
Zhijun He15cc3112013-09-17 12:38:34 -07007492 The actual supported resolution list may be limited by
7493 consumer end points for different use cases.<wbr> For example,<wbr> for
7494 recording use case,<wbr> the largest supported resolution may be
7495 limited by max supported size from encoder,<wbr> for preview use
7496 case,<wbr> the largest supported resolution may be limited by max
7497 resolution SurfaceTexture/<wbr>SurfaceView can support.<wbr>
7498
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007499 </td>
7500
7501 <td class="entry_tags">
7502 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007503 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007504 </ul>
7505 </td>
7506
7507 </tr> <!-- end of entry -->
7508
7509
7510 <tr class="entry" id="static_android.scaler.availableRawMinDurations">
7511 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations</td>
7512 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007513 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007514 <span class="entry_type_container">x</span>
7515
7516 <span class="entry_type_array">
7517 n
7518 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007519 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007520
7521
7522 </td> <!-- entry_type -->
7523
7524 <td class="entry_description">
7525 The minimum frame duration that is supported
7526 for each raw resolution in availableRawSizes.<wbr> Should
7527 correspond to the frame duration when only the raw stream
7528 is active.<wbr>
7529 </td>
7530
7531 <td class="entry_units">
7532 </td>
7533
7534 <td class="entry_range">
7535 </td>
7536
7537 <td class="entry_notes">
7538 When multiple streams are configured,<wbr> the minimum
7539 frame duration will be >= max(individual stream min
7540 durations)
7541 </td>
7542
7543 <td class="entry_tags">
7544 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007545 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007546 </ul>
7547 </td>
7548
7549 </tr> <!-- end of entry -->
7550
7551
7552 <tr class="entry" id="static_android.scaler.availableRawSizes">
7553 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Sizes</td>
7554 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007555 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007556 <span class="entry_type_container">x</span>
7557
7558 <span class="entry_type_array">
7559 n x 2
7560 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007561 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007562
7563
7564 </td> <!-- entry_type -->
7565
7566 <td class="entry_description">
7567 The resolutions available for use with raw
7568 sensor output streams,<wbr> listed as width,<wbr>
7569 height
7570 </td>
7571
7572 <td class="entry_units">
7573 </td>
7574
7575 <td class="entry_range">
7576 Must include: - sensor maximum resolution
7577 </td>
7578
7579 <td class="entry_notes">
7580 </td>
7581
7582 <td class="entry_tags">
7583 </td>
7584
7585 </tr> <!-- end of entry -->
7586
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007587
7588
7589 <!-- end of kind -->
7590 </tbody>
7591 <tr><td colspan="7" class="kind">dynamic</td></tr>
7592
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007593 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007594 <tr>
7595 <th class="th_name">Property Name</th>
7596 <th class="th_type">Type</th>
7597 <th class="th_description">Description</th>
7598 <th class="th_units">Units</th>
7599 <th class="th_range">Range</th>
7600 <th class="th_notes">Notes</th>
7601 <th class="th_tags">Tags</th>
7602 </tr>
7603 </thead>
7604
7605 <tbody>
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616 <tr class="entry" id="dynamic_android.scaler.cropRegion">
7617 <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
7618 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007619 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007620 <span class="entry_type_container">x</span>
7621
7622 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007623 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007624 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007625 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007626
7627
7628 </td> <!-- entry_type -->
7629
7630 <td class="entry_description">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007631 (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
7632<br>
7633<br> A rectangle with the top-level corner of (x,<wbr>y) and size
7634 (width,<wbr> height).<wbr> The region of the sensor that is used for
7635 output.<wbr> Each stream must use this rectangle to produce its
7636 output,<wbr> cropping to a smaller region if necessary to
7637 maintain the stream's aspect ratio.<wbr>
7638<br>
7639<br> HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007640 </td>
7641
7642 <td class="entry_units">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007643 (x,<wbr>y) of top-left corner,<wbr> width and height of region
7644 in pixels; (0,<wbr>0) is top-left corner of
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007645 android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007646 </td>
7647
7648 <td class="entry_range">
7649 </td>
7650
7651 <td class="entry_notes">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007652
7653 Any additional per-stream cropping must be done to
7654 maximize the final pixel area of the stream.<wbr>
7655<br>
7656<br> For example,<wbr> if the crop region is set to a 4:3 aspect
7657 ratio,<wbr> then 4:3 streams should use the exact crop
7658 region.<wbr> 16:9 streams should further crop vertically
7659 (letterbox).<wbr>
7660<br>
7661<br> Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
7662 outputs should crop horizontally (pillarbox),<wbr> and 16:9
7663 streams should match exactly.<wbr> These additional crops must
7664 be centered within the crop region.<wbr>
7665<br>
7666<br> The output streams must maintain square pixels at all
7667 times,<wbr> no matter what the relative aspect ratios of the
7668 crop region and the stream are.<wbr> Negative values for
7669 corner are allowed for raw output if full pixel array is
7670 larger than active pixel array.<wbr> Width and height may be
7671 rounded to nearest larger supportable width,<wbr> especially
7672 for raw output,<wbr> where only a few fixed scales may be
7673 possible.<wbr> The width and height of the crop region cannot
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007674 be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007675 android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007676 activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007677 respectively.<wbr>
7678
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007679 </td>
7680
7681 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007682 <ul class="entry_tags">
7683 <li><a href="#tag_BC">BC</a></li>
7684 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007685 </td>
7686
7687 </tr> <!-- end of entry -->
7688
7689
7690
7691 <!-- end of kind -->
7692 </tbody>
7693
7694 <!-- end of section -->
7695 <tr><td colspan="7" id="section_sensor" class="section">sensor</td></tr>
7696
7697
7698 <tr><td colspan="7" class="kind">controls</td></tr>
7699
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007700 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007701 <tr>
7702 <th class="th_name">Property Name</th>
7703 <th class="th_type">Type</th>
7704 <th class="th_description">Description</th>
7705 <th class="th_units">Units</th>
7706 <th class="th_range">Range</th>
7707 <th class="th_notes">Notes</th>
7708 <th class="th_tags">Tags</th>
7709 </tr>
7710 </thead>
7711
7712 <tbody>
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723 <tr class="entry" id="controls_android.sensor.exposureTime">
7724 <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
7725 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007726 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007727
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007728 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007729
7730
7731 </td> <!-- entry_type -->
7732
7733 <td class="entry_description">
7734 Duration each pixel is exposed to
Igor Murashkin656aa5a2013-08-13 14:23:39 -07007735 light.<wbr>
7736<br>
7737<br> If the sensor can't expose this exact duration,<wbr> it should shorten the
7738 duration exposed to the nearest possible value (rather than expose longer).<wbr>
7739
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007740 </td>
7741
7742 <td class="entry_units">
7743 nanoseconds
7744 </td>
7745
7746 <td class="entry_range">
7747 android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
7748 </td>
7749
7750 <td class="entry_notes">
7751 1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
7752 </td>
7753
7754 <td class="entry_tags">
7755 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007756 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007757 </ul>
7758 </td>
7759
7760 </tr> <!-- end of entry -->
7761
7762
7763 <tr class="entry" id="controls_android.sensor.frameDuration">
7764 <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
7765 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007766 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007767
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007768 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007769
7770
7771 </td> <!-- entry_type -->
7772
7773 <td class="entry_description">
7774 Duration from start of frame exposure to
7775 start of next frame exposure
7776 </td>
7777
7778 <td class="entry_units">
7779 nanoseconds
7780 </td>
7781
7782 <td class="entry_range">
7783 see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
7784 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
7785 </td>
7786
7787 <td class="entry_notes">
7788 Exposure time has priority,<wbr> so duration is set to
7789 max(duration,<wbr> exposure time + overhead)
7790 </td>
7791
7792 <td class="entry_tags">
7793 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007794 <li><a href="#tag_V1">V1</a></li>
7795 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007796 </ul>
7797 </td>
7798
7799 </tr> <!-- end of entry -->
7800
7801
7802 <tr class="entry" id="controls_android.sensor.sensitivity">
7803 <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
7804 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007805 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007806
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007807 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007808
7809
7810 </td> <!-- entry_type -->
7811
7812 <td class="entry_description">
7813 Gain applied to image data.<wbr> Must be
7814 implemented through analog gain only if set to values
7815 below 'maximum analog sensitivity'.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07007816<br>
7817<br> If the sensor can't apply this exact gain,<wbr> it should lessen the
7818 gain to the nearest possible value (rather than gain more).<wbr>
7819
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007820 </td>
7821
7822 <td class="entry_units">
7823 ISO arithmetic units
7824 </td>
7825
7826 <td class="entry_range">
7827 android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
7828 </td>
7829
7830 <td class="entry_notes">
7831 ISO 12232:2006 REI method
7832 </td>
7833
7834 <td class="entry_tags">
7835 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007836 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007837 </ul>
7838 </td>
7839
7840 </tr> <!-- end of entry -->
7841
7842
7843
7844 <!-- end of kind -->
7845 </tbody>
7846 <tr><td colspan="7" class="kind">static</td></tr>
7847
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007848 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007849 <tr>
7850 <th class="th_name">Property Name</th>
7851 <th class="th_type">Type</th>
7852 <th class="th_description">Description</th>
7853 <th class="th_units">Units</th>
7854 <th class="th_range">Range</th>
7855 <th class="th_notes">Notes</th>
7856 <th class="th_tags">Tags</th>
7857 </tr>
7858 </thead>
7859
7860 <tbody>
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873 <tr class="entry" id="static_android.sensor.info.activeArraySize">
7874 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size</td>
7875 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007876 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007877 <span class="entry_type_container">x</span>
7878
7879 <span class="entry_type_array">
7880 4
7881 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007882 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007883 <div class="entry_type_notes">Four ints defining the active pixel rectangle</div>
7884
7885
7886 </td> <!-- entry_type -->
7887
7888 <td class="entry_description">
7889 Area of raw data which corresponds to only
7890 active pixels; smaller or equal to
7891 pixelArraySize.<wbr>
7892 </td>
7893
7894 <td class="entry_units">
7895 xmin,<wbr> ymin,<wbr> width,<wbr> height.<wbr> Top left of full
7896 pixel array is (0,<wbr>0)
7897 </td>
7898
7899 <td class="entry_range">
7900 </td>
7901
7902 <td class="entry_notes">
7903 </td>
7904
7905 <td class="entry_tags">
7906 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007907 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007908 </ul>
7909 </td>
7910
7911 </tr> <!-- end of entry -->
7912
7913
Zhijun He69fc0ea2013-07-17 09:42:58 -07007914 <tr class="entry" id="static_android.sensor.info.sensitivityRange">
7915 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range</td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007916 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007917 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007918 <span class="entry_type_container">x</span>
7919
7920 <span class="entry_type_array">
Zhijun He69fc0ea2013-07-17 09:42:58 -07007921 2
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007922 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007923 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07007924 <div class="entry_type_notes">Range of supported sensitivities</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007925
7926
7927 </td> <!-- entry_type -->
7928
7929 <td class="entry_description">
7930 Range of valid sensitivities
7931 </td>
7932
7933 <td class="entry_units">
7934 </td>
7935
7936 <td class="entry_range">
Zhijun He69fc0ea2013-07-17 09:42:58 -07007937 Min <= 100,<wbr> Max >= 1600
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007938 </td>
7939
7940 <td class="entry_notes">
7941 </td>
7942
7943 <td class="entry_tags">
7944 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007945 <li><a href="#tag_BC">BC</a></li>
7946 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007947 </ul>
7948 </td>
7949
7950 </tr> <!-- end of entry -->
7951
7952
7953 <tr class="entry" id="static_android.sensor.info.colorFilterArrangement">
7954 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>color<wbr>Filter<wbr>Arrangement</td>
7955 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007956 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007957
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007958 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007959
7960 <ul class="entry_type_enum">
7961 <li>
7962 <span class="entry_type_enum_name">RGGB</span>
7963 </li>
7964 <li>
7965 <span class="entry_type_enum_name">GRBG</span>
7966 </li>
7967 <li>
7968 <span class="entry_type_enum_name">GBRG</span>
7969 </li>
7970 <li>
7971 <span class="entry_type_enum_name">BGGR</span>
7972 </li>
7973 <li>
7974 <span class="entry_type_enum_name">RGB</span>
7975 <span class="entry_type_enum_notes">Sensor is not Bayer; output has 3 16-bit
7976 values for each pixel,<wbr> instead of just 1 16-bit value
7977 per pixel.<wbr></span>
7978 </li>
7979 </ul>
7980
7981 </td> <!-- entry_type -->
7982
7983 <td class="entry_description">
7984 Arrangement of color filters on sensor;
7985 represents the colors in the top-left 2x2 section of
7986 the sensor,<wbr> in reading order
7987 </td>
7988
7989 <td class="entry_units">
7990 </td>
7991
7992 <td class="entry_range">
7993 </td>
7994
7995 <td class="entry_notes">
7996 </td>
7997
7998 <td class="entry_tags">
7999 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008000 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008001 </ul>
8002 </td>
8003
8004 </tr> <!-- end of entry -->
8005
8006
8007 <tr class="entry" id="static_android.sensor.info.exposureTimeRange">
8008 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range</td>
8009 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008010 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008011 <span class="entry_type_container">x</span>
8012
8013 <span class="entry_type_array">
8014 2
8015 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008016 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008017 <div class="entry_type_notes">nanoseconds</div>
8018
8019
8020 </td> <!-- entry_type -->
8021
8022 <td class="entry_description">
8023 Range of valid exposure
8024 times
8025 </td>
8026
8027 <td class="entry_units">
8028 </td>
8029
8030 <td class="entry_range">
8031 Min <= 100e3 (100 us),<wbr> Max >= 30e9 (30
8032 sec)
8033 </td>
8034
8035 <td class="entry_notes">
8036 </td>
8037
8038 <td class="entry_tags">
8039 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008040 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008041 </ul>
8042 </td>
8043
8044 </tr> <!-- end of entry -->
8045
8046
8047 <tr class="entry" id="static_android.sensor.info.maxFrameDuration">
8048 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration</td>
8049 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008050 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008051
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008052 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008053
8054
8055 </td> <!-- entry_type -->
8056
8057 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -07008058 Maximum possible frame duration (minimum frame
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008059 rate)
8060 </td>
8061
8062 <td class="entry_units">
8063 nanoseconds
8064 </td>
8065
8066 <td class="entry_range">
8067 >= 30e9
8068 </td>
8069
8070 <td class="entry_notes">
8071 Minimum duration is a function of resolution,<wbr>
8072 processing settings.<wbr> See
Zhijun He69fc0ea2013-07-17 09:42:58 -07008073 android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations
8074 android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations
8075 android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008076 </td>
8077
8078 <td class="entry_tags">
8079 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008080 <li><a href="#tag_BC">BC</a></li>
8081 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008082 </ul>
8083 </td>
8084
8085 </tr> <!-- end of entry -->
8086
8087
8088 <tr class="entry" id="static_android.sensor.info.physicalSize">
8089 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>physical<wbr>Size</td>
8090 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008091 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008092 <span class="entry_type_container">x</span>
8093
8094 <span class="entry_type_array">
8095 2
8096 </span>
Timothy Knightec817d52013-08-16 16:15:29 -07008097 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008098 <div class="entry_type_notes">width x height in millimeters</div>
8099
8100
8101 </td> <!-- entry_type -->
8102
8103 <td class="entry_description">
8104 The physical dimensions of the full pixel
8105 array
8106 </td>
8107
8108 <td class="entry_units">
8109 </td>
8110
8111 <td class="entry_range">
8112 </td>
8113
8114 <td class="entry_notes">
8115 Needed for FOV calculation for old API
8116 </td>
8117
8118 <td class="entry_tags">
8119 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008120 <li><a href="#tag_V1">V1</a></li>
8121 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008122 </ul>
8123 </td>
8124
8125 </tr> <!-- end of entry -->
8126
8127
8128 <tr class="entry" id="static_android.sensor.info.pixelArraySize">
8129 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>pixel<wbr>Array<wbr>Size</td>
8130 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008131 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008132 <span class="entry_type_container">x</span>
8133
8134 <span class="entry_type_array">
8135 2
8136 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07008137 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008138
8139
8140 </td> <!-- entry_type -->
8141
8142 <td class="entry_description">
8143 Dimensions of full pixel array,<wbr> possibly
8144 including black calibration pixels
8145 </td>
8146
8147 <td class="entry_units">
8148 </td>
8149
8150 <td class="entry_range">
8151 </td>
8152
8153 <td class="entry_notes">
8154 Maximum output resolution for raw format must
8155 match this in
8156 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Sizes<wbr>Per<wbr>Format
8157 </td>
8158
8159 <td class="entry_tags">
8160 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008161 <li><a href="#tag_DNG">DNG</a></li>
8162 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008163 </ul>
8164 </td>
8165
8166 </tr> <!-- end of entry -->
8167
8168
8169 <tr class="entry" id="static_android.sensor.info.whiteLevel">
8170 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level</td>
8171 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008172 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008173
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008174 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008175
8176
8177 </td> <!-- entry_type -->
8178
8179 <td class="entry_description">
8180 Maximum raw value output by
8181 sensor
8182 </td>
8183
8184 <td class="entry_units">
8185 </td>
8186
8187 <td class="entry_range">
8188 > 1024 (10-bit output)
8189 </td>
8190
8191 <td class="entry_notes">
8192 Defines sensor bit depth (10-14 bits is
8193 expected)
8194 </td>
8195
8196 <td class="entry_tags">
8197 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008198 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008199 </ul>
8200 </td>
8201
8202 </tr> <!-- end of entry -->
8203
8204
8205
8206
8207
8208 <tr class="entry" id="static_android.sensor.baseGainFactor">
8209 <td class="entry_name">android.<wbr>sensor.<wbr>base<wbr>Gain<wbr>Factor</td>
8210 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008211 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008212
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008213 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008214
8215
8216 </td> <!-- entry_type -->
8217
8218 <td class="entry_description">
8219 Gain factor from electrons to raw units when
8220 ISO=100
8221 </td>
8222
8223 <td class="entry_units">
8224 </td>
8225
8226 <td class="entry_range">
8227 </td>
8228
8229 <td class="entry_notes">
8230 </td>
8231
8232 <td class="entry_tags">
8233 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008234 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008235 </ul>
8236 </td>
8237
8238 </tr> <!-- end of entry -->
8239
8240
8241 <tr class="entry" id="static_android.sensor.blackLevelPattern">
8242 <td class="entry_name">android.<wbr>sensor.<wbr>black<wbr>Level<wbr>Pattern</td>
8243 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008244 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008245 <span class="entry_type_container">x</span>
8246
8247 <span class="entry_type_array">
8248 4
8249 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008250 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008251 <div class="entry_type_notes">2x2 raw count block</div>
8252
8253
8254 </td> <!-- entry_type -->
8255
8256 <td class="entry_description">
8257 A fixed black level offset for each of the
8258 Bayer mosaic channels
8259 </td>
8260
8261 <td class="entry_units">
8262 </td>
8263
8264 <td class="entry_range">
8265 >= 0 each
8266 </td>
8267
8268 <td class="entry_notes">
8269 As per DNG BlackLevelRepeatDim /<wbr> BlackLevel
8270 tags
8271 </td>
8272
8273 <td class="entry_tags">
8274 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008275 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008276 </ul>
8277 </td>
8278
8279 </tr> <!-- end of entry -->
8280
8281
8282 <tr class="entry" id="static_android.sensor.calibrationTransform1">
8283 <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform1</td>
8284 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008285 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008286 <span class="entry_type_container">x</span>
8287
8288 <span class="entry_type_array">
8289 9
8290 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008291 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008292 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8293
8294
8295 </td> <!-- entry_type -->
8296
8297 <td class="entry_description">
8298 Per-device calibration on top of color space
8299 transform 1
8300 </td>
8301
8302 <td class="entry_units">
8303 </td>
8304
8305 <td class="entry_range">
8306 </td>
8307
8308 <td class="entry_notes">
8309 </td>
8310
8311 <td class="entry_tags">
8312 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008313 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008314 </ul>
8315 </td>
8316
8317 </tr> <!-- end of entry -->
8318
8319
8320 <tr class="entry" id="static_android.sensor.calibrationTransform2">
8321 <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform2</td>
8322 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008323 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008324 <span class="entry_type_container">x</span>
8325
8326 <span class="entry_type_array">
8327 9
8328 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008329 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008330 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8331
8332
8333 </td> <!-- entry_type -->
8334
8335 <td class="entry_description">
8336 Per-device calibration on top of color space
8337 transform 2
8338 </td>
8339
8340 <td class="entry_units">
8341 </td>
8342
8343 <td class="entry_range">
8344 </td>
8345
8346 <td class="entry_notes">
8347 </td>
8348
8349 <td class="entry_tags">
8350 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008351 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008352 </ul>
8353 </td>
8354
8355 </tr> <!-- end of entry -->
8356
8357
8358 <tr class="entry" id="static_android.sensor.colorTransform1">
8359 <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform1</td>
8360 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008361 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008362 <span class="entry_type_container">x</span>
8363
8364 <span class="entry_type_array">
8365 9
8366 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008367 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008368 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8369
8370
8371 </td> <!-- entry_type -->
8372
8373 <td class="entry_description">
8374 Linear mapping from XYZ (D50) color space to
8375 reference linear sensor color,<wbr> for first reference
8376 illuminant
8377 </td>
8378
8379 <td class="entry_units">
8380 </td>
8381
8382 <td class="entry_range">
8383 </td>
8384
8385 <td class="entry_notes">
8386 Use as follows XYZ = inv(transform) * clip( (raw -
8387 black level(raw) ) /<wbr> ( white level - max black level) ).<wbr>
8388 At least in the simple case
8389 </td>
8390
8391 <td class="entry_tags">
8392 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008393 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008394 </ul>
8395 </td>
8396
8397 </tr> <!-- end of entry -->
8398
8399
8400 <tr class="entry" id="static_android.sensor.colorTransform2">
8401 <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform2</td>
8402 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008403 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008404 <span class="entry_type_container">x</span>
8405
8406 <span class="entry_type_array">
8407 9
8408 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008409 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008410 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8411
8412
8413 </td> <!-- entry_type -->
8414
8415 <td class="entry_description">
8416 Linear mapping from XYZ (D50) color space to
8417 reference linear sensor color,<wbr> for second reference
8418 illuminant
8419 </td>
8420
8421 <td class="entry_units">
8422 </td>
8423
8424 <td class="entry_range">
8425 </td>
8426
8427 <td class="entry_notes">
8428 </td>
8429
8430 <td class="entry_tags">
8431 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008432 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008433 </ul>
8434 </td>
8435
8436 </tr> <!-- end of entry -->
8437
8438
8439 <tr class="entry" id="static_android.sensor.forwardMatrix1">
8440 <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix1</td>
8441 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008442 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008443 <span class="entry_type_container">x</span>
8444
8445 <span class="entry_type_array">
8446 9
8447 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008448 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008449 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8450
8451
8452 </td> <!-- entry_type -->
8453
8454 <td class="entry_description">
8455 Used by DNG for better WB
8456 adaptation
8457 </td>
8458
8459 <td class="entry_units">
8460 </td>
8461
8462 <td class="entry_range">
8463 </td>
8464
8465 <td class="entry_notes">
8466 </td>
8467
8468 <td class="entry_tags">
8469 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008470 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008471 </ul>
8472 </td>
8473
8474 </tr> <!-- end of entry -->
8475
8476
8477 <tr class="entry" id="static_android.sensor.forwardMatrix2">
8478 <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix2</td>
8479 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008480 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008481 <span class="entry_type_container">x</span>
8482
8483 <span class="entry_type_array">
8484 9
8485 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008486 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008487 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8488
8489
8490 </td> <!-- entry_type -->
8491
8492 <td class="entry_description">
8493 Used by DNG for better WB
8494 adaptation
8495 </td>
8496
8497 <td class="entry_units">
8498 </td>
8499
8500 <td class="entry_range">
8501 </td>
8502
8503 <td class="entry_notes">
8504 </td>
8505
8506 <td class="entry_tags">
8507 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008508 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008509 </ul>
8510 </td>
8511
8512 </tr> <!-- end of entry -->
8513
8514
8515 <tr class="entry" id="static_android.sensor.maxAnalogSensitivity">
8516 <td class="entry_name">android.<wbr>sensor.<wbr>max<wbr>Analog<wbr>Sensitivity</td>
8517 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008518 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008519
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008520 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008521
8522
8523 </td> <!-- entry_type -->
8524
8525 <td class="entry_description">
8526 Maximum sensitivity that is implemented
8527 purely through analog gain
8528 </td>
8529
8530 <td class="entry_units">
8531 </td>
8532
8533 <td class="entry_range">
8534 </td>
8535
8536 <td class="entry_notes">
8537 For android.<wbr>sensor.<wbr>sensitivity values less than or
8538 equal to this,<wbr> all applied gain must be analog.<wbr> For
8539 values above this,<wbr> it can be a mix of analog and
8540 digital
8541 </td>
8542
8543 <td class="entry_tags">
8544 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008545 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008546 </ul>
8547 </td>
8548
8549 </tr> <!-- end of entry -->
8550
8551
8552 <tr class="entry" id="static_android.sensor.noiseModelCoefficients">
8553 <td class="entry_name">android.<wbr>sensor.<wbr>noise<wbr>Model<wbr>Coefficients</td>
8554 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008555 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008556 <span class="entry_type_container">x</span>
8557
8558 <span class="entry_type_array">
8559 2
8560 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008561 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008562 <div class="entry_type_notes">float constants A,<wbr> B for the noise variance model</div>
8563
8564
8565 </td> <!-- entry_type -->
8566
8567 <td class="entry_description">
8568 Estimation of sensor noise
8569 characteristics
8570 </td>
8571
8572 <td class="entry_units">
8573 var(raw pixel value) = electrons * (baseGainFactor
8574 * iso/<wbr>100)^2 + A * (baseGainFactor * iso/<wbr>100)^2 +
8575 B
8576 </td>
8577
8578 <td class="entry_range">
8579 </td>
8580
8581 <td class="entry_notes">
8582 A represents sensor read noise before analog
8583 amplification; B represents noise from A/<wbr>D conversion and
8584 other circuits after amplification.<wbr> Both noise sources
8585 are assumed to be gaussian,<wbr> independent,<wbr> and not to vary
8586 across the sensor
8587 </td>
8588
8589 <td class="entry_tags">
8590 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008591 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008592 </ul>
8593 </td>
8594
8595 </tr> <!-- end of entry -->
8596
8597
8598 <tr class="entry" id="static_android.sensor.orientation">
8599 <td class="entry_name">android.<wbr>sensor.<wbr>orientation</td>
8600 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008601 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008602
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008603 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008604
8605
8606 </td> <!-- entry_type -->
8607
8608 <td class="entry_description">
8609 Clockwise angle through which the output
8610 image needs to be rotated to be upright on the device
8611 screen in its native orientation.<wbr> Also defines the
8612 direction of rolling shutter readout,<wbr> which is from top
8613 to bottom in the sensor's coordinate system
8614 </td>
8615
8616 <td class="entry_units">
8617 degrees clockwise rotation,<wbr> only multiples of
8618 90
8619 </td>
8620
8621 <td class="entry_range">
8622 0,<wbr>90,<wbr>180,<wbr>270
8623 </td>
8624
8625 <td class="entry_notes">
8626 </td>
8627
8628 <td class="entry_tags">
8629 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008630 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008631 </ul>
8632 </td>
8633
8634 </tr> <!-- end of entry -->
8635
8636
8637 <tr class="entry" id="static_android.sensor.referenceIlluminant1">
8638 <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant1</td>
8639 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008640 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008641
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008642 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008643
8644 <ul class="entry_type_enum">
8645 <li>
8646 <span class="entry_type_enum_name">DAYLIGHT</span>
8647 <span class="entry_type_enum_value">1</span>
8648 </li>
8649 <li>
8650 <span class="entry_type_enum_name">FLUORESCENT</span>
8651 <span class="entry_type_enum_value">2</span>
8652 </li>
8653 <li>
8654 <span class="entry_type_enum_name">TUNGSTEN</span>
8655 <span class="entry_type_enum_value">3</span>
8656 <span class="entry_type_enum_notes">Incandescent light</span>
8657 </li>
8658 <li>
8659 <span class="entry_type_enum_name">FLASH</span>
8660 <span class="entry_type_enum_value">4</span>
8661 </li>
8662 <li>
8663 <span class="entry_type_enum_name">FINE_WEATHER</span>
8664 <span class="entry_type_enum_value">9</span>
8665 </li>
8666 <li>
8667 <span class="entry_type_enum_name">CLOUDY_WEATHER</span>
8668 <span class="entry_type_enum_value">10</span>
8669 </li>
8670 <li>
8671 <span class="entry_type_enum_name">SHADE</span>
8672 <span class="entry_type_enum_value">11</span>
8673 </li>
8674 <li>
8675 <span class="entry_type_enum_name">DAYLIGHT_FLUORESCENT</span>
8676 <span class="entry_type_enum_value">12</span>
8677 <span class="entry_type_enum_notes">D 5700 - 7100K</span>
8678 </li>
8679 <li>
8680 <span class="entry_type_enum_name">DAY_WHITE_FLUORESCENT</span>
8681 <span class="entry_type_enum_value">13</span>
8682 <span class="entry_type_enum_notes">N 4600 - 5400K</span>
8683 </li>
8684 <li>
8685 <span class="entry_type_enum_name">COOL_WHITE_FLUORESCENT</span>
8686 <span class="entry_type_enum_value">14</span>
8687 <span class="entry_type_enum_notes">W 3900 - 4500K</span>
8688 </li>
8689 <li>
8690 <span class="entry_type_enum_name">WHITE_FLUORESCENT</span>
8691 <span class="entry_type_enum_value">15</span>
8692 <span class="entry_type_enum_notes">WW 3200 - 3700K</span>
8693 </li>
8694 <li>
8695 <span class="entry_type_enum_name">STANDARD_A</span>
8696 <span class="entry_type_enum_value">17</span>
8697 </li>
8698 <li>
8699 <span class="entry_type_enum_name">STANDARD_B</span>
8700 <span class="entry_type_enum_value">18</span>
8701 </li>
8702 <li>
8703 <span class="entry_type_enum_name">STANDARD_C</span>
8704 <span class="entry_type_enum_value">19</span>
8705 </li>
8706 <li>
8707 <span class="entry_type_enum_name">D55</span>
8708 <span class="entry_type_enum_value">20</span>
8709 </li>
8710 <li>
8711 <span class="entry_type_enum_name">D65</span>
8712 <span class="entry_type_enum_value">21</span>
8713 </li>
8714 <li>
8715 <span class="entry_type_enum_name">D75</span>
8716 <span class="entry_type_enum_value">22</span>
8717 </li>
8718 <li>
8719 <span class="entry_type_enum_name">D50</span>
8720 <span class="entry_type_enum_value">23</span>
8721 </li>
8722 <li>
8723 <span class="entry_type_enum_name">ISO_STUDIO_TUNGSTEN</span>
8724 <span class="entry_type_enum_value">24</span>
8725 </li>
8726 </ul>
8727
8728 </td> <!-- entry_type -->
8729
8730 <td class="entry_description">
8731 Light source used to define transform
8732 1
8733 </td>
8734
8735 <td class="entry_units">
8736 </td>
8737
8738 <td class="entry_range">
8739 </td>
8740
8741 <td class="entry_notes">
8742 [EXIF LightSource tag] Must all these be
8743 supported? Need CCT for each!
8744 </td>
8745
8746 <td class="entry_tags">
8747 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008748 <li><a href="#tag_DNG">DNG</a></li>
8749 <li><a href="#tag_EXIF">EXIF</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008750 </ul>
8751 </td>
8752
8753 </tr> <!-- end of entry -->
8754
8755
8756 <tr class="entry" id="static_android.sensor.referenceIlluminant2">
8757 <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant2</td>
8758 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008759 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008760
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008761 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008762
8763
8764 </td> <!-- entry_type -->
8765
8766 <td class="entry_description">
8767 Light source used to define transform
8768 2
8769 </td>
8770
8771 <td class="entry_units">
8772 Same as illuminant 1
8773 </td>
8774
8775 <td class="entry_range">
8776 </td>
8777
8778 <td class="entry_notes">
8779 </td>
8780
8781 <td class="entry_tags">
8782 </td>
8783
8784 </tr> <!-- end of entry -->
8785
8786
8787
8788 <!-- end of kind -->
8789 </tbody>
8790 <tr><td colspan="7" class="kind">dynamic</td></tr>
8791
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008792 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008793 <tr>
8794 <th class="th_name">Property Name</th>
8795 <th class="th_type">Type</th>
8796 <th class="th_description">Description</th>
8797 <th class="th_units">Units</th>
8798 <th class="th_range">Range</th>
8799 <th class="th_notes">Notes</th>
8800 <th class="th_tags">Tags</th>
8801 </tr>
8802 </thead>
8803
8804 <tbody>
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815 <tr class="entry" id="dynamic_android.sensor.exposureTime">
8816 <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
8817 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008818 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008819
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008820 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008821
8822
8823 </td> <!-- entry_type -->
8824
8825 <td class="entry_description">
8826 Duration each pixel is exposed to
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008827 light.<wbr>
8828<br>
8829<br> If the sensor can't expose this exact duration,<wbr> it should shorten the
8830 duration exposed to the nearest possible value (rather than expose longer).<wbr>
8831
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008832 </td>
8833
8834 <td class="entry_units">
8835 nanoseconds
8836 </td>
8837
8838 <td class="entry_range">
8839 android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
8840 </td>
8841
8842 <td class="entry_notes">
8843 1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
8844 </td>
8845
8846 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008847 <ul class="entry_tags">
8848 <li><a href="#tag_V1">V1</a></li>
8849 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008850 </td>
8851
8852 </tr> <!-- end of entry -->
8853
8854
8855 <tr class="entry" id="dynamic_android.sensor.frameDuration">
8856 <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
8857 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008858 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008859
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008860 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008861
8862
8863 </td> <!-- entry_type -->
8864
8865 <td class="entry_description">
8866 Duration from start of frame exposure to
8867 start of next frame exposure
8868 </td>
8869
8870 <td class="entry_units">
8871 nanoseconds
8872 </td>
8873
8874 <td class="entry_range">
8875 see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
8876 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
8877 </td>
8878
8879 <td class="entry_notes">
8880 Exposure time has priority,<wbr> so duration is set to
8881 max(duration,<wbr> exposure time + overhead)
8882 </td>
8883
8884 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008885 <ul class="entry_tags">
8886 <li><a href="#tag_V1">V1</a></li>
8887 <li><a href="#tag_BC">BC</a></li>
8888 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008889 </td>
8890
8891 </tr> <!-- end of entry -->
8892
8893
8894 <tr class="entry" id="dynamic_android.sensor.sensitivity">
8895 <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
8896 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008897 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008898
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008899 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008900
8901
8902 </td> <!-- entry_type -->
8903
8904 <td class="entry_description">
8905 Gain applied to image data.<wbr> Must be
8906 implemented through analog gain only if set to values
8907 below 'maximum analog sensitivity'.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008908<br>
8909<br> If the sensor can't apply this exact gain,<wbr> it should lessen the
8910 gain to the nearest possible value (rather than gain more).<wbr>
8911
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008912 </td>
8913
8914 <td class="entry_units">
8915 ISO arithmetic units
8916 </td>
8917
8918 <td class="entry_range">
8919 android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
8920 </td>
8921
8922 <td class="entry_notes">
8923 ISO 12232:2006 REI method
8924 </td>
8925
8926 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008927 <ul class="entry_tags">
8928 <li><a href="#tag_V1">V1</a></li>
8929 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008930 </td>
8931
8932 </tr> <!-- end of entry -->
8933
8934
8935 <tr class="entry" id="dynamic_android.sensor.timestamp">
8936 <td class="entry_name">android.<wbr>sensor.<wbr>timestamp</td>
8937 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008938 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008939
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008940 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008941
8942
8943 </td> <!-- entry_type -->
8944
8945 <td class="entry_description">
8946 Time at start of exposure of first
8947 row
8948 </td>
8949
8950 <td class="entry_units">
8951 nanoseconds
8952 </td>
8953
8954 <td class="entry_range">
8955 > 0
8956 </td>
8957
8958 <td class="entry_notes">
8959 Monotonic,<wbr> should be synced to other timestamps in
8960 system
8961 </td>
8962
8963 <td class="entry_tags">
8964 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008965 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008966 </ul>
8967 </td>
8968
8969 </tr> <!-- end of entry -->
8970
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008971
8972 <tr class="entry" id="dynamic_android.sensor.temperature">
8973 <td class="entry_name">android.<wbr>sensor.<wbr>temperature</td>
8974 <td class="entry_type">
8975 <span class="entry_type_name">float</span>
8976
8977 <span class="entry_type_visibility"> [public]</span>
8978
8979
8980 </td> <!-- entry_type -->
8981
8982 <td class="entry_description">
8983 The temperature of the sensor,<wbr> sampled at the time
8984 exposure began for this frame.<wbr>
8985<br>
8986<br> The thermal diode being queried should be inside the sensor PCB,<wbr> or
8987 somewhere close to it.<wbr>
8988
8989 </td>
8990
8991 <td class="entry_units">
8992 celsius
8993 </td>
8994
8995 <td class="entry_range">
8996 Optional.<wbr> This value is missing if no temperature is available.<wbr>
8997 </td>
8998
8999 <td class="entry_notes">
9000 </td>
9001
9002 <td class="entry_tags">
9003 </td>
9004
9005 </tr> <!-- end of entry -->
9006
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009007
9008
9009 <!-- end of kind -->
9010 </tbody>
9011
9012 <!-- end of section -->
9013 <tr><td colspan="7" id="section_shading" class="section">shading</td></tr>
9014
9015
9016 <tr><td colspan="7" class="kind">controls</td></tr>
9017
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009018 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009019 <tr>
9020 <th class="th_name">Property Name</th>
9021 <th class="th_type">Type</th>
9022 <th class="th_description">Description</th>
9023 <th class="th_units">Units</th>
9024 <th class="th_range">Range</th>
9025 <th class="th_notes">Notes</th>
9026 <th class="th_tags">Tags</th>
9027 </tr>
9028 </thead>
9029
9030 <tbody>
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041 <tr class="entry" id="controls_android.shading.mode">
9042 <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
9043 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009044 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009045
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009046 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009047
9048 <ul class="entry_type_enum">
9049 <li>
9050 <span class="entry_type_enum_name">OFF</span>
9051 <span class="entry_type_enum_notes">No shading correction is applied</span>
9052 </li>
9053 <li>
9054 <span class="entry_type_enum_name">FAST</span>
9055 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
9056 bayer output</span>
9057 </li>
9058 <li>
9059 <span class="entry_type_enum_name">HIGH_QUALITY</span>
9060 <span class="entry_type_enum_notes">Frame rate may be reduced by high
9061 quality</span>
9062 </li>
9063 </ul>
9064
9065 </td> <!-- entry_type -->
9066
9067 <td class="entry_description">
9068 Quality of lens shading correction applied
9069 to the image data
9070 </td>
9071
9072 <td class="entry_units">
9073 </td>
9074
9075 <td class="entry_range">
9076 </td>
9077
9078 <td class="entry_notes">
9079 </td>
9080
9081 <td class="entry_tags">
9082 </td>
9083
9084 </tr> <!-- end of entry -->
9085
9086
9087 <tr class="entry" id="controls_android.shading.strength">
9088 <td class="entry_name">android.<wbr>shading.<wbr>strength</td>
9089 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009090 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009091
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009092 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009093
9094
9095 </td> <!-- entry_type -->
9096
9097 <td class="entry_description">
9098 Control the amount of shading correction
9099 applied to the images
9100 </td>
9101
9102 <td class="entry_units">
9103 unitless: 1-10; 10 is full shading
9104 compensation
9105 </td>
9106
9107 <td class="entry_range">
9108 </td>
9109
9110 <td class="entry_notes">
9111 </td>
9112
9113 <td class="entry_tags">
9114 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009115 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009116 </ul>
9117 </td>
9118
9119 </tr> <!-- end of entry -->
9120
9121
9122
9123 <!-- end of kind -->
9124 </tbody>
9125 <tr><td colspan="7" class="kind">dynamic</td></tr>
9126
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009127 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009128 <tr>
9129 <th class="th_name">Property Name</th>
9130 <th class="th_type">Type</th>
9131 <th class="th_description">Description</th>
9132 <th class="th_units">Units</th>
9133 <th class="th_range">Range</th>
9134 <th class="th_notes">Notes</th>
9135 <th class="th_tags">Tags</th>
9136 </tr>
9137 </thead>
9138
9139 <tbody>
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150 <tr class="entry" id="dynamic_android.shading.mode">
9151 <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
9152 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009153 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009154
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009155 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009156
9157 <ul class="entry_type_enum">
9158 <li>
9159 <span class="entry_type_enum_name">OFF</span>
9160 <span class="entry_type_enum_notes">No shading correction is applied</span>
9161 </li>
9162 <li>
9163 <span class="entry_type_enum_name">FAST</span>
9164 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
9165 bayer output</span>
9166 </li>
9167 <li>
9168 <span class="entry_type_enum_name">HIGH_QUALITY</span>
9169 <span class="entry_type_enum_notes">Frame rate may be reduced by high
9170 quality</span>
9171 </li>
9172 </ul>
9173
9174 </td> <!-- entry_type -->
9175
9176 <td class="entry_description">
9177 Quality of lens shading correction applied
9178 to the image data
9179 </td>
9180
9181 <td class="entry_units">
9182 </td>
9183
9184 <td class="entry_range">
9185 </td>
9186
9187 <td class="entry_notes">
9188 </td>
9189
9190 <td class="entry_tags">
9191 </td>
9192
9193 </tr> <!-- end of entry -->
9194
9195
9196
9197 <!-- end of kind -->
9198 </tbody>
9199
9200 <!-- end of section -->
9201 <tr><td colspan="7" id="section_statistics" class="section">statistics</td></tr>
9202
9203
9204 <tr><td colspan="7" class="kind">controls</td></tr>
9205
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009206 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009207 <tr>
9208 <th class="th_name">Property Name</th>
9209 <th class="th_type">Type</th>
9210 <th class="th_description">Description</th>
9211 <th class="th_units">Units</th>
9212 <th class="th_range">Range</th>
9213 <th class="th_notes">Notes</th>
9214 <th class="th_tags">Tags</th>
9215 </tr>
9216 </thead>
9217
9218 <tbody>
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229 <tr class="entry" id="controls_android.statistics.faceDetectMode">
9230 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
9231 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009232 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009233
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009234 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009235
9236 <ul class="entry_type_enum">
9237 <li>
9238 <span class="entry_type_enum_name">OFF</span>
9239 </li>
9240 <li>
9241 <span class="entry_type_enum_name">SIMPLE</span>
9242 <span class="entry_type_enum_notes">Optional Return rectangle and confidence
9243 only</span>
9244 </li>
9245 <li>
9246 <span class="entry_type_enum_name">FULL</span>
9247 <span class="entry_type_enum_notes">Optional Return all face
9248 metadata</span>
9249 </li>
9250 </ul>
9251
9252 </td> <!-- entry_type -->
9253
9254 <td class="entry_description">
9255 State of the face detector
9256 unit
9257 </td>
9258
9259 <td class="entry_units">
9260 </td>
9261
9262 <td class="entry_range">
9263
Zhijun He69fc0ea2013-07-17 09:42:58 -07009264 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009265 </td>
9266
9267 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009268 Whether face detection is enabled,<wbr> and whether it
9269 should output just the basic fields or the full set of
9270 fields.<wbr> Value must be one of the
9271 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009272 </td>
9273
9274 <td class="entry_tags">
9275 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009276 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009277 </ul>
9278 </td>
9279
9280 </tr> <!-- end of entry -->
9281
9282
9283 <tr class="entry" id="controls_android.statistics.histogramMode">
9284 <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
9285 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009286 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009287
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009288 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009289
9290 <ul class="entry_type_enum">
9291 <li>
9292 <span class="entry_type_enum_name">OFF</span>
9293 </li>
9294 <li>
9295 <span class="entry_type_enum_name">ON</span>
9296 </li>
9297 </ul>
9298
9299 </td> <!-- entry_type -->
9300
9301 <td class="entry_description">
9302 Operating mode for histogram
9303 generation
9304 </td>
9305
9306 <td class="entry_units">
9307 </td>
9308
9309 <td class="entry_range">
9310 </td>
9311
9312 <td class="entry_notes">
9313 </td>
9314
9315 <td class="entry_tags">
9316 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009317 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009318 </ul>
9319 </td>
9320
9321 </tr> <!-- end of entry -->
9322
9323
9324 <tr class="entry" id="controls_android.statistics.sharpnessMapMode">
9325 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
9326 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009327 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009328
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009329 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009330
9331 <ul class="entry_type_enum">
9332 <li>
9333 <span class="entry_type_enum_name">OFF</span>
9334 </li>
9335 <li>
9336 <span class="entry_type_enum_name">ON</span>
9337 </li>
9338 </ul>
9339
9340 </td> <!-- entry_type -->
9341
9342 <td class="entry_description">
9343 Operating mode for sharpness map
9344 generation
9345 </td>
9346
9347 <td class="entry_units">
9348 </td>
9349
9350 <td class="entry_range">
9351 </td>
9352
9353 <td class="entry_notes">
9354 </td>
9355
9356 <td class="entry_tags">
9357 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009358 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009359 </ul>
9360 </td>
9361
9362 </tr> <!-- end of entry -->
9363
Zhijun He69fc0ea2013-07-17 09:42:58 -07009364
9365 <tr class="entry" id="controls_android.statistics.lensShadingMapMode">
9366 <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map<wbr>Mode</td>
9367 <td class="entry_type">
9368 <span class="entry_type_name entry_type_name_enum">byte</span>
9369
9370 <span class="entry_type_visibility"> [public]</span>
9371
9372 <ul class="entry_type_enum">
9373 <li>
9374 <span class="entry_type_enum_name">OFF</span>
9375 </li>
9376 <li>
9377 <span class="entry_type_enum_name">ON</span>
9378 </li>
9379 </ul>
9380
9381 </td> <!-- entry_type -->
9382
9383 <td class="entry_description">
9384 Whether the HAL needs to output the lens
9385 shading map in output result metadata
9386 </td>
9387
9388 <td class="entry_units">
9389 </td>
9390
9391 <td class="entry_range">
9392 </td>
9393
9394 <td class="entry_notes">
9395 When set to ON,<wbr>
9396 android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map must be provided in
9397 the output result metdata.<wbr>
9398 </td>
9399
9400 <td class="entry_tags">
9401 </td>
9402
9403 </tr> <!-- end of entry -->
9404
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009405
9406
9407 <!-- end of kind -->
9408 </tbody>
9409 <tr><td colspan="7" class="kind">static</td></tr>
9410
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009411 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009412 <tr>
9413 <th class="th_name">Property Name</th>
9414 <th class="th_type">Type</th>
9415 <th class="th_description">Description</th>
9416 <th class="th_units">Units</th>
9417 <th class="th_range">Range</th>
9418 <th class="th_notes">Notes</th>
9419 <th class="th_tags">Tags</th>
9420 </tr>
9421 </thead>
9422
9423 <tbody>
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436 <tr class="entry" id="static_android.statistics.info.availableFaceDetectModes">
9437 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes</td>
9438 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009439 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009440 <span class="entry_type_container">x</span>
9441
9442 <span class="entry_type_array">
9443 n
9444 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009445 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07009446 <div class="entry_type_notes">List of enums from android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009447
9448
9449 </td> <!-- entry_type -->
9450
9451 <td class="entry_description">
9452 Which face detection modes are available,<wbr>
9453 if any
9454 </td>
9455
9456 <td class="entry_units">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009457 List of enum:
9458 OFF
9459 SIMPLE
9460 FULL
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009461 </td>
9462
9463 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009464 </td>
9465
9466 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009467 OFF means face detection is disabled,<wbr> it must
9468 be included in the list.<wbr>
9469<br>
9470<br> SIMPLE means the device supports the
9471 android.<wbr>statistics.<wbr>face<wbr>Rectangles and
9472 android.<wbr>statistics.<wbr>face<wbr>Scores outputs.<wbr>
9473<br>
9474<br> FULL means the device additionally supports the
9475 android.<wbr>statistics.<wbr>face<wbr>Ids and
9476 android.<wbr>statistics.<wbr>face<wbr>Landmarks outputs.<wbr>
9477
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009478 </td>
9479
9480 <td class="entry_tags">
9481 </td>
9482
9483 </tr> <!-- end of entry -->
9484
9485
9486 <tr class="entry" id="static_android.statistics.info.histogramBucketCount">
9487 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>histogram<wbr>Bucket<wbr>Count</td>
9488 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009489 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009490
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009491 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009492
9493
9494 </td> <!-- entry_type -->
9495
9496 <td class="entry_description">
9497 Number of histogram buckets
9498 supported
9499 </td>
9500
9501 <td class="entry_units">
9502 </td>
9503
9504 <td class="entry_range">
9505 >= 64
9506 </td>
9507
9508 <td class="entry_notes">
9509 </td>
9510
9511 <td class="entry_tags">
9512 </td>
9513
9514 </tr> <!-- end of entry -->
9515
9516
9517 <tr class="entry" id="static_android.statistics.info.maxFaceCount">
9518 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Face<wbr>Count</td>
9519 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009520 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009521
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009522 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009523
9524
9525 </td> <!-- entry_type -->
9526
9527 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009528 Maximum number of simultaneously detectable
9529 faces
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009530 </td>
9531
9532 <td class="entry_units">
9533 </td>
9534
9535 <td class="entry_range">
9536 >= 4 if availableFaceDetectionModes lists
9537 modes besides OFF,<wbr> otherwise 0
9538 </td>
9539
9540 <td class="entry_notes">
9541 </td>
9542
9543 <td class="entry_tags">
9544 </td>
9545
9546 </tr> <!-- end of entry -->
9547
9548
9549 <tr class="entry" id="static_android.statistics.info.maxHistogramCount">
9550 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Histogram<wbr>Count</td>
9551 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009552 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009553
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009554 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009555
9556
9557 </td> <!-- entry_type -->
9558
9559 <td class="entry_description">
9560 Maximum value possible for a histogram
9561 bucket
9562 </td>
9563
9564 <td class="entry_units">
9565 </td>
9566
9567 <td class="entry_range">
9568 </td>
9569
9570 <td class="entry_notes">
9571 </td>
9572
9573 <td class="entry_tags">
9574 </td>
9575
9576 </tr> <!-- end of entry -->
9577
9578
9579 <tr class="entry" id="static_android.statistics.info.maxSharpnessMapValue">
9580 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Sharpness<wbr>Map<wbr>Value</td>
9581 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009582 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009583
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009584 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009585
9586
9587 </td> <!-- entry_type -->
9588
9589 <td class="entry_description">
9590 Maximum value possible for a sharpness map
9591 region.<wbr>
9592 </td>
9593
9594 <td class="entry_units">
9595 </td>
9596
9597 <td class="entry_range">
9598 </td>
9599
9600 <td class="entry_notes">
9601 </td>
9602
9603 <td class="entry_tags">
9604 </td>
9605
9606 </tr> <!-- end of entry -->
9607
9608
9609 <tr class="entry" id="static_android.statistics.info.sharpnessMapSize">
9610 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>sharpness<wbr>Map<wbr>Size</td>
9611 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009612 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009613 <span class="entry_type_container">x</span>
9614
9615 <span class="entry_type_array">
9616 2
9617 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009618 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009619 <div class="entry_type_notes">width x height</div>
9620
9621
9622 </td> <!-- entry_type -->
9623
9624 <td class="entry_description">
9625 Dimensions of the sharpness
9626 map
9627 </td>
9628
9629 <td class="entry_units">
9630 </td>
9631
9632 <td class="entry_range">
9633 Must be at least 32 x 32
9634 </td>
9635
9636 <td class="entry_notes">
9637 </td>
9638
9639 <td class="entry_tags">
9640 </td>
9641
9642 </tr> <!-- end of entry -->
9643
9644
9645
9646
9647
9648
9649 <!-- end of kind -->
9650 </tbody>
9651 <tr><td colspan="7" class="kind">dynamic</td></tr>
9652
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009653 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009654 <tr>
9655 <th class="th_name">Property Name</th>
9656 <th class="th_type">Type</th>
9657 <th class="th_description">Description</th>
9658 <th class="th_units">Units</th>
9659 <th class="th_range">Range</th>
9660 <th class="th_notes">Notes</th>
9661 <th class="th_tags">Tags</th>
9662 </tr>
9663 </thead>
9664
9665 <tbody>
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676 <tr class="entry" id="dynamic_android.statistics.faceDetectMode">
9677 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
9678 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009679 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009680
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009681 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009682
9683 <ul class="entry_type_enum">
9684 <li>
9685 <span class="entry_type_enum_name">OFF</span>
9686 </li>
9687 <li>
9688 <span class="entry_type_enum_name">SIMPLE</span>
9689 <span class="entry_type_enum_notes">Optional Return rectangle and confidence
9690 only</span>
9691 </li>
9692 <li>
9693 <span class="entry_type_enum_name">FULL</span>
9694 <span class="entry_type_enum_notes">Optional Return all face
9695 metadata</span>
9696 </li>
9697 </ul>
9698
9699 </td> <!-- entry_type -->
9700
9701 <td class="entry_description">
9702 State of the face detector
9703 unit
9704 </td>
9705
9706 <td class="entry_units">
9707 </td>
9708
9709 <td class="entry_range">
9710
Zhijun He69fc0ea2013-07-17 09:42:58 -07009711 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009712 </td>
9713
9714 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009715 Whether face detection is enabled,<wbr> and whether it
9716 should output just the basic fields or the full set of
9717 fields.<wbr> Value must be one of the
9718 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009719 </td>
9720
9721 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009722 <ul class="entry_tags">
9723 <li><a href="#tag_BC">BC</a></li>
9724 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009725 </td>
9726
9727 </tr> <!-- end of entry -->
9728
9729
9730 <tr class="entry" id="dynamic_android.statistics.faceIds">
9731 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Ids</td>
9732 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009733 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009734 <span class="entry_type_container">x</span>
9735
9736 <span class="entry_type_array">
9737 n
9738 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009739 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009740
9741
9742 </td> <!-- entry_type -->
9743
9744 <td class="entry_description">
9745 List of unique IDs for detected
9746 faces
9747 </td>
9748
9749 <td class="entry_units">
9750 </td>
9751
9752 <td class="entry_range">
9753 </td>
9754
9755 <td class="entry_notes">
9756 Only available if faceDetectMode == FULL
9757 </td>
9758
9759 <td class="entry_tags">
9760 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009761 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009762 </ul>
9763 </td>
9764
9765 </tr> <!-- end of entry -->
9766
9767
9768 <tr class="entry" id="dynamic_android.statistics.faceLandmarks">
9769 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Landmarks</td>
9770 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009771 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009772 <span class="entry_type_container">x</span>
9773
9774 <span class="entry_type_array">
9775 n x 6
9776 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009777 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009778 <div class="entry_type_notes">(leftEyeX,<wbr> leftEyeY,<wbr> rightEyeX,<wbr> rightEyeY,<wbr> mouthX,<wbr> mouthY)</div>
9779
9780
9781 </td> <!-- entry_type -->
9782
9783 <td class="entry_description">
9784 List of landmarks for detected
9785 faces
9786 </td>
9787
9788 <td class="entry_units">
9789 </td>
9790
9791 <td class="entry_range">
9792 </td>
9793
9794 <td class="entry_notes">
9795 Only available if faceDetectMode == FULL
9796 </td>
9797
9798 <td class="entry_tags">
9799 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009800 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009801 </ul>
9802 </td>
9803
9804 </tr> <!-- end of entry -->
9805
9806
9807 <tr class="entry" id="dynamic_android.statistics.faceRectangles">
9808 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Rectangles</td>
9809 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009810 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009811 <span class="entry_type_container">x</span>
9812
9813 <span class="entry_type_array">
9814 n x 4
9815 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009816 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009817 <div class="entry_type_notes">(xmin,<wbr> ymin,<wbr> xmax,<wbr> ymax).<wbr> (0,<wbr>0) is top-left of active pixel area</div>
9818
9819
9820 </td> <!-- entry_type -->
9821
9822 <td class="entry_description">
9823 List of the bounding rectangles for detected
9824 faces
9825 </td>
9826
9827 <td class="entry_units">
9828 </td>
9829
9830 <td class="entry_range">
9831 </td>
9832
9833 <td class="entry_notes">
9834 Only available if faceDetectMode != OFF
9835 </td>
9836
9837 <td class="entry_tags">
9838 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009839 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009840 </ul>
9841 </td>
9842
9843 </tr> <!-- end of entry -->
9844
9845
9846 <tr class="entry" id="dynamic_android.statistics.faceScores">
9847 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Scores</td>
9848 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009849 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009850 <span class="entry_type_container">x</span>
9851
9852 <span class="entry_type_array">
9853 n
9854 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009855 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009856
9857
9858 </td> <!-- entry_type -->
9859
9860 <td class="entry_description">
9861 List of the face confidence scores for
9862 detected faces
9863 </td>
9864
9865 <td class="entry_units">
9866 </td>
9867
9868 <td class="entry_range">
9869 0-100
9870 </td>
9871
9872 <td class="entry_notes">
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009873 Only available if faceDetectMode != OFF.<wbr> The value should be
9874 meaningful (for example,<wbr> setting 100 at all times is illegal).<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009875 </td>
9876
9877 <td class="entry_tags">
9878 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009879 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009880 </ul>
9881 </td>
9882
9883 </tr> <!-- end of entry -->
9884
9885
9886 <tr class="entry" id="dynamic_android.statistics.histogram">
9887 <td class="entry_name">android.<wbr>statistics.<wbr>histogram</td>
9888 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009889 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009890 <span class="entry_type_container">x</span>
9891
9892 <span class="entry_type_array">
9893 n x 3
9894 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009895 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009896 <div class="entry_type_notes">count of pixels for each color channel that fall into each histogram bucket,<wbr> scaled to be between 0 and maxHistogramCount</div>
9897
9898
9899 </td> <!-- entry_type -->
9900
9901 <td class="entry_description">
9902 A 3-channel histogram based on the raw
9903 sensor data
9904 </td>
9905
9906 <td class="entry_units">
9907 </td>
9908
9909 <td class="entry_range">
9910 </td>
9911
9912 <td class="entry_notes">
9913 The k'th bucket (0-based) covers the input range
9914 (with w = android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level) of [ k * w/<wbr>N,<wbr>
9915 (k + 1) * w /<wbr> N ).<wbr> If only a monochrome sharpness map is
9916 supported,<wbr> all channels should have the same data
9917 </td>
9918
9919 <td class="entry_tags">
9920 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009921 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009922 </ul>
9923 </td>
9924
9925 </tr> <!-- end of entry -->
9926
9927
9928 <tr class="entry" id="dynamic_android.statistics.histogramMode">
9929 <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
9930 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009931 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009932
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009933 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009934
9935 <ul class="entry_type_enum">
9936 <li>
9937 <span class="entry_type_enum_name">OFF</span>
9938 </li>
9939 <li>
9940 <span class="entry_type_enum_name">ON</span>
9941 </li>
9942 </ul>
9943
9944 </td> <!-- entry_type -->
9945
9946 <td class="entry_description">
9947 Operating mode for histogram
9948 generation
9949 </td>
9950
9951 <td class="entry_units">
9952 </td>
9953
9954 <td class="entry_range">
9955 </td>
9956
9957 <td class="entry_notes">
9958 </td>
9959
9960 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009961 <ul class="entry_tags">
9962 <li><a href="#tag_V1">V1</a></li>
9963 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009964 </td>
9965
9966 </tr> <!-- end of entry -->
9967
9968
9969 <tr class="entry" id="dynamic_android.statistics.sharpnessMap">
9970 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map</td>
9971 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009972 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009973 <span class="entry_type_container">x</span>
9974
9975 <span class="entry_type_array">
9976 n x m x 3
9977 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009978 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009979 <div class="entry_type_notes">estimated sharpness for each region of the input image.<wbr> Normalized to be between 0 and maxSharpnessMapValue.<wbr> Higher values mean sharper (better focused)</div>
9980
9981
9982 </td> <!-- entry_type -->
9983
9984 <td class="entry_description">
9985 A 3-channel sharpness map,<wbr> based on the raw
9986 sensor data
9987 </td>
9988
9989 <td class="entry_units">
9990 </td>
9991
9992 <td class="entry_range">
9993 </td>
9994
9995 <td class="entry_notes">
9996 If only a monochrome sharpness map is supported,<wbr>
9997 all channels should have the same data
9998 </td>
9999
10000 <td class="entry_tags">
10001 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010002 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010003 </ul>
10004 </td>
10005
10006 </tr> <!-- end of entry -->
10007
10008
10009 <tr class="entry" id="dynamic_android.statistics.sharpnessMapMode">
10010 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
10011 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010012 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010013
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010014 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010015
10016 <ul class="entry_type_enum">
10017 <li>
10018 <span class="entry_type_enum_name">OFF</span>
10019 </li>
10020 <li>
10021 <span class="entry_type_enum_name">ON</span>
10022 </li>
10023 </ul>
10024
10025 </td> <!-- entry_type -->
10026
10027 <td class="entry_description">
10028 Operating mode for sharpness map
10029 generation
10030 </td>
10031
10032 <td class="entry_units">
10033 </td>
10034
10035 <td class="entry_range">
10036 </td>
10037
10038 <td class="entry_notes">
10039 </td>
10040
10041 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010042 <ul class="entry_tags">
10043 <li><a href="#tag_V1">V1</a></li>
10044 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010045 </td>
10046
10047 </tr> <!-- end of entry -->
10048
Zhijun He69fc0ea2013-07-17 09:42:58 -070010049
10050 <tr class="entry" id="dynamic_android.statistics.lensShadingMap">
10051 <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map</td>
10052 <td class="entry_type">
10053 <span class="entry_type_name">float</span>
10054 <span class="entry_type_container">x</span>
10055
10056 <span class="entry_type_array">
10057 4 x n x m
10058 </span>
10059 <span class="entry_type_visibility"> [public]</span>
10060 <div class="entry_type_notes">2D array of float gain factors per channel to correct lens shading</div>
10061
10062
10063 </td> <!-- entry_type -->
10064
10065 <td class="entry_description">
10066 A low-resolution map of lens shading,<wbr> per
10067 color channel
10068 </td>
10069
10070 <td class="entry_units">
10071 </td>
10072
10073 <td class="entry_range">
10074 Each gain factor is >= 1
10075 </td>
10076
10077 <td class="entry_notes">
10078 Assume bilinear interpolation of map.<wbr> The least
10079 shaded section of the image should have a gain factor
10080 of 1; all other sections should have gains above 1.<wbr>
10081 the map should be on the order of 30-40 rows,<wbr> and
10082 must be smaller than 64x64.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010083<br>
10084<br> When android.<wbr>color<wbr>Correction.<wbr>mode = TRANSFORM_<wbr>MATRIX,<wbr> the map
10085 must take into account the colorCorrection settings.<wbr>
10086
Zhijun He69fc0ea2013-07-17 09:42:58 -070010087 </td>
10088
10089 <td class="entry_tags">
10090 </td>
10091
10092 </tr> <!-- end of entry -->
10093
10094
10095 <tr class="entry" id="dynamic_android.statistics.predictedColorGains">
10096 <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Gains</td>
10097 <td class="entry_type">
10098 <span class="entry_type_name">float</span>
10099 <span class="entry_type_container">x</span>
10100
10101 <span class="entry_type_array">
10102 4
10103 </span>
10104 <span class="entry_type_visibility"> [public]</span>
10105 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
10106
10107
10108 </td> <!-- entry_type -->
10109
10110 <td class="entry_description">
10111 The best-fit color channel gains calculated
10112 by the HAL's statistics units for the current output frame
10113
10114 </td>
10115
10116 <td class="entry_units">
10117 </td>
10118
10119 <td class="entry_range">
10120 </td>
10121
10122 <td class="entry_notes">
10123
10124 This may be different than the gains used for this frame,<wbr>
10125 since statistics processing on data from a new frame
10126 typically completes after the transform has already been
10127 applied to that frame.<wbr>
10128<br>
10129<br> The 4 channel gains are defined in Bayer domain,<wbr>
10130 see android.<wbr>color<wbr>Correction.<wbr>gains for details.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010131<br>
10132<br> This value should always be calculated by the AWB block,<wbr>
10133 regardless of the android.<wbr>control.<wbr>* current values.<wbr>
10134
Zhijun He69fc0ea2013-07-17 09:42:58 -070010135 </td>
10136
10137 <td class="entry_tags">
10138 </td>
10139
10140 </tr> <!-- end of entry -->
10141
10142
10143 <tr class="entry" id="dynamic_android.statistics.predictedColorTransform">
10144 <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Transform</td>
10145 <td class="entry_type">
10146 <span class="entry_type_name">rational</span>
10147 <span class="entry_type_container">x</span>
10148
10149 <span class="entry_type_array">
10150 3 x 3
10151 </span>
10152 <span class="entry_type_visibility"> [public]</span>
10153 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
10154
10155
10156 </td> <!-- entry_type -->
10157
10158 <td class="entry_description">
10159 The best-fit color transform matrix estimate
10160 calculated by the HAL's statistics units for the current
10161 output frame
10162 </td>
10163
10164 <td class="entry_units">
10165 </td>
10166
10167 <td class="entry_range">
10168 </td>
10169
10170 <td class="entry_notes">
10171 The HAL must provide the estimate from its
10172 statistics unit on the white balance transforms to use
10173 for the next frame.<wbr> These are the values the HAL believes
10174 are the best fit for the current output frame.<wbr> This may
10175 be different than the transform used for this frame,<wbr> since
10176 statistics processing on data from a new frame typically
10177 completes after the transform has already been applied to
10178 that frame.<wbr>
10179<br>
10180<br> These estimates must be provided for all frames,<wbr> even if
10181 capture settings and color transforms are set by the application.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010182<br>
10183<br> This value should always be calculated by the AWB block,<wbr>
10184 regardless of the android.<wbr>control.<wbr>* current values.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010185
10186 </td>
10187
10188 <td class="entry_tags">
10189 </td>
10190
10191 </tr> <!-- end of entry -->
10192
10193
10194 <tr class="entry" id="dynamic_android.statistics.sceneFlicker">
10195 <td class="entry_name">android.<wbr>statistics.<wbr>scene<wbr>Flicker</td>
10196 <td class="entry_type">
10197 <span class="entry_type_name entry_type_name_enum">byte</span>
10198
10199 <span class="entry_type_visibility"> [public]</span>
10200
10201 <ul class="entry_type_enum">
10202 <li>
10203 <span class="entry_type_enum_name">NONE</span>
10204 </li>
10205 <li>
10206 <span class="entry_type_enum_name">50HZ</span>
10207 </li>
10208 <li>
10209 <span class="entry_type_enum_name">60HZ</span>
10210 </li>
10211 </ul>
10212
10213 </td> <!-- entry_type -->
10214
10215 <td class="entry_description">
10216 The HAL estimated scene illumination lighting
10217 frequency
10218 </td>
10219
10220 <td class="entry_units">
10221 </td>
10222
10223 <td class="entry_range">
10224 </td>
10225
10226 <td class="entry_notes">
10227 Report NONE if there doesn't appear to be flickering
10228 illumination
10229 </td>
10230
10231 <td class="entry_tags">
10232 </td>
10233
10234 </tr> <!-- end of entry -->
10235
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010236
10237
10238 <!-- end of kind -->
10239 </tbody>
10240
10241 <!-- end of section -->
10242 <tr><td colspan="7" id="section_tonemap" class="section">tonemap</td></tr>
10243
10244
10245 <tr><td colspan="7" class="kind">controls</td></tr>
10246
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010247 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010248 <tr>
10249 <th class="th_name">Property Name</th>
10250 <th class="th_type">Type</th>
10251 <th class="th_description">Description</th>
10252 <th class="th_units">Units</th>
10253 <th class="th_range">Range</th>
10254 <th class="th_notes">Notes</th>
10255 <th class="th_tags">Tags</th>
10256 </tr>
10257 </thead>
10258
10259 <tbody>
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270 <tr class="entry" id="controls_android.tonemap.curveBlue">
10271 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
10272 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010273 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010274 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010275
Zhijun He704d1282013-08-19 15:26:33 -070010276 <span class="entry_type_array">
10277 n x 2
10278 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010279 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010280 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010281
10282
10283 </td> <!-- entry_type -->
10284
10285 <td class="entry_description">
10286 Table mapping blue input values to output
10287 values
10288 </td>
10289
10290 <td class="entry_units">
10291 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10292 </td>
10293
10294 <td class="entry_range">
10295 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10296 </td>
10297
10298 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010299 Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
10300 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10301<br>
10302<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010303 </td>
10304
10305 <td class="entry_tags">
10306 </td>
10307
10308 </tr> <!-- end of entry -->
10309
10310
10311 <tr class="entry" id="controls_android.tonemap.curveGreen">
10312 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
10313 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010314 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010315 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010316
Zhijun He704d1282013-08-19 15:26:33 -070010317 <span class="entry_type_array">
10318 n x 2
10319 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010320 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010321 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010322
10323
10324 </td> <!-- entry_type -->
10325
10326 <td class="entry_description">
10327 Table mapping green input values to output
10328 values
10329 </td>
10330
10331 <td class="entry_units">
10332 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10333 </td>
10334
10335 <td class="entry_range">
10336 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10337 </td>
10338
10339 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010340 Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
10341 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10342<br>
10343<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010344 </td>
10345
10346 <td class="entry_tags">
10347 </td>
10348
10349 </tr> <!-- end of entry -->
10350
10351
10352 <tr class="entry" id="controls_android.tonemap.curveRed">
10353 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
10354 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010355 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010356 <span class="entry_type_container">x</span>
10357
10358 <span class="entry_type_array">
10359 n x 2
10360 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010361 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010362 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010363
10364
10365 </td> <!-- entry_type -->
10366
10367 <td class="entry_description">
10368 Table mapping red input values to output
10369 values
10370 </td>
10371
10372 <td class="entry_units">
10373 </td>
10374
10375 <td class="entry_range">
Zhijun He704d1282013-08-19 15:26:33 -070010376 0-1 on input and output coordinates.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010377 </td>
10378
10379 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010380 Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
10381 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10382<br>
10383<br> Since the input and output ranges may vary depending on
10384 the camera pipeline,<wbr> the input and output pixel values
10385 are represented by normalized floating-point values
10386 between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
10387<br>
10388<br> The curve should be linearly interpolated between the
10389 defined points.<wbr> The points will be listed in increasing
10390 order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010391 0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
10392 for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
10393 0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
10394 </td>
10395
10396 <td class="entry_tags">
10397 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010398 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010399 </ul>
10400 </td>
10401
10402 </tr> <!-- end of entry -->
10403
10404
10405 <tr class="entry" id="controls_android.tonemap.mode">
10406 <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
10407 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010408 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010409
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010410 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010411
10412 <ul class="entry_type_enum">
10413 <li>
10414 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
10415 <span class="entry_type_enum_notes">Use the tone mapping curve specified in
10416 android.<wbr>tonemap.<wbr>curve</span>
10417 </li>
10418 <li>
10419 <span class="entry_type_enum_name">FAST</span>
10420 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
10421 bayer output</span>
10422 </li>
10423 <li>
10424 <span class="entry_type_enum_name">HIGH_QUALITY</span>
10425 <span class="entry_type_enum_notes">Frame rate may be reduced by high
10426 quality</span>
10427 </li>
10428 </ul>
10429
10430 </td> <!-- entry_type -->
10431
10432 <td class="entry_description">
10433 </td>
10434
10435 <td class="entry_units">
10436 </td>
10437
10438 <td class="entry_range">
10439 </td>
10440
10441 <td class="entry_notes">
10442 </td>
10443
10444 <td class="entry_tags">
10445 </td>
10446
10447 </tr> <!-- end of entry -->
10448
10449
10450
10451 <!-- end of kind -->
10452 </tbody>
10453 <tr><td colspan="7" class="kind">static</td></tr>
10454
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010455 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010456 <tr>
10457 <th class="th_name">Property Name</th>
10458 <th class="th_type">Type</th>
10459 <th class="th_description">Description</th>
10460 <th class="th_units">Units</th>
10461 <th class="th_range">Range</th>
10462 <th class="th_notes">Notes</th>
10463 <th class="th_tags">Tags</th>
10464 </tr>
10465 </thead>
10466
10467 <tbody>
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478 <tr class="entry" id="static_android.tonemap.maxCurvePoints">
10479 <td class="entry_name">android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points</td>
10480 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010481 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010482
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010483 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010484
10485
10486 </td> <!-- entry_type -->
10487
10488 <td class="entry_description">
10489 Maximum number of supported points in the
10490 tonemap curve
10491 </td>
10492
10493 <td class="entry_units">
10494 </td>
10495
10496 <td class="entry_range">
10497 >= 128
10498 </td>
10499
10500 <td class="entry_notes">
10501 </td>
10502
10503 <td class="entry_tags">
10504 </td>
10505
10506 </tr> <!-- end of entry -->
10507
10508
10509
10510 <!-- end of kind -->
10511 </tbody>
10512 <tr><td colspan="7" class="kind">dynamic</td></tr>
10513
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010514 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010515 <tr>
10516 <th class="th_name">Property Name</th>
10517 <th class="th_type">Type</th>
10518 <th class="th_description">Description</th>
10519 <th class="th_units">Units</th>
10520 <th class="th_range">Range</th>
10521 <th class="th_notes">Notes</th>
10522 <th class="th_tags">Tags</th>
10523 </tr>
10524 </thead>
10525
10526 <tbody>
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537 <tr class="entry" id="dynamic_android.tonemap.curveBlue">
10538 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
10539 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010540 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010541 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010542
Zhijun He704d1282013-08-19 15:26:33 -070010543 <span class="entry_type_array">
10544 n x 2
10545 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010546 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010547 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010548
10549
10550 </td> <!-- entry_type -->
10551
10552 <td class="entry_description">
10553 Table mapping blue input values to output
10554 values
10555 </td>
10556
10557 <td class="entry_units">
10558 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10559 </td>
10560
10561 <td class="entry_range">
10562 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10563 </td>
10564
10565 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010566 Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
10567 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10568<br>
10569<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010570 </td>
10571
10572 <td class="entry_tags">
10573 </td>
10574
10575 </tr> <!-- end of entry -->
10576
10577
10578 <tr class="entry" id="dynamic_android.tonemap.curveGreen">
10579 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
10580 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010581 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010582 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010583
Zhijun He704d1282013-08-19 15:26:33 -070010584 <span class="entry_type_array">
10585 n x 2
10586 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010587 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010588 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010589
10590
10591 </td> <!-- entry_type -->
10592
10593 <td class="entry_description">
10594 Table mapping green input values to output
10595 values
10596 </td>
10597
10598 <td class="entry_units">
10599 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10600 </td>
10601
10602 <td class="entry_range">
10603 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10604 </td>
10605
10606 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010607 Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
10608 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10609<br>
10610<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010611 </td>
10612
10613 <td class="entry_tags">
10614 </td>
10615
10616 </tr> <!-- end of entry -->
10617
10618
10619 <tr class="entry" id="dynamic_android.tonemap.curveRed">
10620 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
10621 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010622 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010623 <span class="entry_type_container">x</span>
10624
10625 <span class="entry_type_array">
10626 n x 2
10627 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010628 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010629 <div class="entry_type_notes">1D array of float pairs (P_<wbr>IN,<wbr> P_<wbr>OUT).<wbr> The maximum number of pairs is specified by android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points.<wbr></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010630
10631
10632 </td> <!-- entry_type -->
10633
10634 <td class="entry_description">
10635 Table mapping red input values to output
10636 values
10637 </td>
10638
10639 <td class="entry_units">
10640 </td>
10641
10642 <td class="entry_range">
Zhijun He704d1282013-08-19 15:26:33 -070010643 0-1 on input and output coordinates.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010644 </td>
10645
10646 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010647 Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
10648 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10649<br>
10650<br> Since the input and output ranges may vary depending on
10651 the camera pipeline,<wbr> the input and output pixel values
10652 are represented by normalized floating-point values
10653 between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
10654<br>
10655<br> The curve should be linearly interpolated between the
10656 defined points.<wbr> The points will be listed in increasing
10657 order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010658 0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
10659 for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
10660 0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
10661 </td>
10662
10663 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010664 <ul class="entry_tags">
10665 <li><a href="#tag_DNG">DNG</a></li>
10666 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010667 </td>
10668
10669 </tr> <!-- end of entry -->
10670
10671
10672 <tr class="entry" id="dynamic_android.tonemap.mode">
10673 <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
10674 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010675 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010676
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010677 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010678
10679 <ul class="entry_type_enum">
10680 <li>
10681 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
10682 <span class="entry_type_enum_notes">Use the tone mapping curve specified in
10683 android.<wbr>tonemap.<wbr>curve</span>
10684 </li>
10685 <li>
10686 <span class="entry_type_enum_name">FAST</span>
10687 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
10688 bayer output</span>
10689 </li>
10690 <li>
10691 <span class="entry_type_enum_name">HIGH_QUALITY</span>
10692 <span class="entry_type_enum_notes">Frame rate may be reduced by high
10693 quality</span>
10694 </li>
10695 </ul>
10696
10697 </td> <!-- entry_type -->
10698
10699 <td class="entry_description">
10700 </td>
10701
10702 <td class="entry_units">
10703 </td>
10704
10705 <td class="entry_range">
10706 </td>
10707
10708 <td class="entry_notes">
10709 </td>
10710
10711 <td class="entry_tags">
10712 </td>
10713
10714 </tr> <!-- end of entry -->
10715
10716
10717
10718 <!-- end of kind -->
10719 </tbody>
10720
10721 <!-- end of section -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010722 <tr><td colspan="7" id="section_led" class="section">led</td></tr>
10723
10724
10725 <tr><td colspan="7" class="kind">controls</td></tr>
10726
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010727 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010728 <tr>
10729 <th class="th_name">Property Name</th>
10730 <th class="th_type">Type</th>
10731 <th class="th_description">Description</th>
10732 <th class="th_units">Units</th>
10733 <th class="th_range">Range</th>
10734 <th class="th_notes">Notes</th>
10735 <th class="th_tags">Tags</th>
10736 </tr>
10737 </thead>
10738
10739 <tbody>
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750 <tr class="entry" id="controls_android.led.transmit">
10751 <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
10752 <td class="entry_type">
10753 <span class="entry_type_name entry_type_name_enum">byte</span>
10754
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010755 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010756
10757 <ul class="entry_type_enum">
10758 <li>
10759 <span class="entry_type_enum_name">OFF</span>
10760 </li>
10761 <li>
10762 <span class="entry_type_enum_name">ON</span>
10763 </li>
10764 </ul>
10765
10766 </td> <!-- entry_type -->
10767
10768 <td class="entry_description">
10769 This LED is nominally used to indicate to the user
10770 that the camera is powered on and may be streaming images back to the
10771 Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
10772 disable this when video is processed locally and not transmitted to
10773 any untrusted applications.<wbr>
10774<br>
10775<br> In particular,<wbr> the LED *must* always be on when the data could be
10776 transmitted off the device.<wbr> The LED *should* always be on whenever
10777 data is stored locally on the device.<wbr>
10778<br>
10779<br> The LED *may* be off if a trusted application is using the data that
10780 doesn't violate the above rules.<wbr>
10781
10782 </td>
10783
10784 <td class="entry_units">
10785 </td>
10786
10787 <td class="entry_range">
10788 </td>
10789
10790 <td class="entry_notes">
10791 </td>
10792
10793 <td class="entry_tags">
10794 </td>
10795
10796 </tr> <!-- end of entry -->
10797
10798
10799
10800 <!-- end of kind -->
10801 </tbody>
10802 <tr><td colspan="7" class="kind">dynamic</td></tr>
10803
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010804 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010805 <tr>
10806 <th class="th_name">Property Name</th>
10807 <th class="th_type">Type</th>
10808 <th class="th_description">Description</th>
10809 <th class="th_units">Units</th>
10810 <th class="th_range">Range</th>
10811 <th class="th_notes">Notes</th>
10812 <th class="th_tags">Tags</th>
10813 </tr>
10814 </thead>
10815
10816 <tbody>
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827 <tr class="entry" id="dynamic_android.led.transmit">
10828 <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
10829 <td class="entry_type">
10830 <span class="entry_type_name entry_type_name_enum">byte</span>
10831
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010832 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010833
10834 <ul class="entry_type_enum">
10835 <li>
10836 <span class="entry_type_enum_name">OFF</span>
10837 </li>
10838 <li>
10839 <span class="entry_type_enum_name">ON</span>
10840 </li>
10841 </ul>
10842
10843 </td> <!-- entry_type -->
10844
10845 <td class="entry_description">
10846 This LED is nominally used to indicate to the user
10847 that the camera is powered on and may be streaming images back to the
10848 Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
10849 disable this when video is processed locally and not transmitted to
10850 any untrusted applications.<wbr>
10851<br>
10852<br> In particular,<wbr> the LED *must* always be on when the data could be
10853 transmitted off the device.<wbr> The LED *should* always be on whenever
10854 data is stored locally on the device.<wbr>
10855<br>
10856<br> The LED *may* be off if a trusted application is using the data that
10857 doesn't violate the above rules.<wbr>
10858
10859 </td>
10860
10861 <td class="entry_units">
10862 </td>
10863
10864 <td class="entry_range">
10865 </td>
10866
10867 <td class="entry_notes">
10868 </td>
10869
10870 <td class="entry_tags">
10871 </td>
10872
10873 </tr> <!-- end of entry -->
10874
10875
10876
10877 <!-- end of kind -->
10878 </tbody>
10879 <tr><td colspan="7" class="kind">static</td></tr>
10880
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010881 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010882 <tr>
10883 <th class="th_name">Property Name</th>
10884 <th class="th_type">Type</th>
10885 <th class="th_description">Description</th>
10886 <th class="th_units">Units</th>
10887 <th class="th_range">Range</th>
10888 <th class="th_notes">Notes</th>
10889 <th class="th_tags">Tags</th>
10890 </tr>
10891 </thead>
10892
10893 <tbody>
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904 <tr class="entry" id="static_android.led.availableLeds">
10905 <td class="entry_name">android.<wbr>led.<wbr>available<wbr>Leds</td>
10906 <td class="entry_type">
10907 <span class="entry_type_name entry_type_name_enum">byte</span>
10908 <span class="entry_type_container">x</span>
10909
10910 <span class="entry_type_array">
10911 n
10912 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010913 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010914
10915 <ul class="entry_type_enum">
10916 <li>
10917 <span class="entry_type_enum_name">TRANSMIT</span>
10918 <span class="entry_type_enum_notes">android.<wbr>led.<wbr>transmit control is used</span>
10919 </li>
10920 </ul>
10921
10922 </td> <!-- entry_type -->
10923
10924 <td class="entry_description">
10925 A list of camera LEDs that are available on this system.<wbr>
10926
10927 </td>
10928
10929 <td class="entry_units">
10930 </td>
10931
10932 <td class="entry_range">
10933 </td>
10934
10935 <td class="entry_notes">
10936 </td>
10937
10938 <td class="entry_tags">
10939 </td>
10940
10941 </tr> <!-- end of entry -->
10942
10943
10944
10945 <!-- end of kind -->
10946 </tbody>
10947
10948 <!-- end of section -->
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010949 <tr><td colspan="7" id="section_info" class="section">info</td></tr>
10950
10951
10952 <tr><td colspan="7" class="kind">static</td></tr>
10953
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010954 <thead class="entries_header">
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010955 <tr>
10956 <th class="th_name">Property Name</th>
10957 <th class="th_type">Type</th>
10958 <th class="th_description">Description</th>
10959 <th class="th_units">Units</th>
10960 <th class="th_range">Range</th>
10961 <th class="th_notes">Notes</th>
10962 <th class="th_tags">Tags</th>
10963 </tr>
10964 </thead>
10965
10966 <tbody>
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977 <tr class="entry" id="static_android.info.supportedHardwareLevel">
10978 <td class="entry_name">android.<wbr>info.<wbr>supported<wbr>Hardware<wbr>Level</td>
10979 <td class="entry_type">
10980 <span class="entry_type_name entry_type_name_enum">byte</span>
10981
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010982 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010983
10984 <ul class="entry_type_enum">
10985 <li>
10986 <span class="entry_type_enum_name">LIMITED</span>
10987 </li>
10988 <li>
10989 <span class="entry_type_enum_name">FULL</span>
10990 </li>
10991 </ul>
10992
10993 </td> <!-- entry_type -->
10994
10995 <td class="entry_description">
10996
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010997 The camera 3 HAL device can implement one of two possible
10998 operational modes; limited and full.<wbr> Full support is
10999 expected from new higher-end devices.<wbr> Limited mode has
11000 hardware requirements roughly in line with those for a
11001 camera HAL device v1 implementation,<wbr> and is expected from
11002 older or inexpensive devices.<wbr> Full is a strict superset of
11003 limited,<wbr> and they share the same essential operational flow.<wbr>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011004<br>
11005<br> For full details refer to "S3.<wbr> Operational Modes" in camera3.<wbr>h
11006
11007 </td>
11008
11009 <td class="entry_units">
11010 </td>
11011
11012 <td class="entry_range">
11013 Optional.<wbr> Default value is LIMITED.<wbr>
11014 </td>
11015
11016 <td class="entry_notes">
11017 </td>
11018
11019 <td class="entry_tags">
11020 </td>
11021
11022 </tr> <!-- end of entry -->
11023
11024
11025
11026 <!-- end of kind -->
11027 </tbody>
11028
11029 <!-- end of section -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070011030 <tr><td colspan="7" id="section_blackLevel" class="section">blackLevel</td></tr>
11031
11032
11033 <tr><td colspan="7" class="kind">controls</td></tr>
11034
11035 <thead class="entries_header">
11036 <tr>
11037 <th class="th_name">Property Name</th>
11038 <th class="th_type">Type</th>
11039 <th class="th_description">Description</th>
11040 <th class="th_units">Units</th>
11041 <th class="th_range">Range</th>
11042 <th class="th_notes">Notes</th>
11043 <th class="th_tags">Tags</th>
11044 </tr>
11045 </thead>
11046
11047 <tbody>
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058 <tr class="entry" id="controls_android.blackLevel.lock">
11059 <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
11060 <td class="entry_type">
11061 <span class="entry_type_name entry_type_name_enum">byte</span>
11062
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011063 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011064
11065 <ul class="entry_type_enum">
11066 <li>
11067 <span class="entry_type_enum_name">OFF</span>
11068 </li>
11069 <li>
11070 <span class="entry_type_enum_name">ON</span>
11071 </li>
11072 </ul>
11073
11074 </td> <!-- entry_type -->
11075
11076 <td class="entry_description">
11077 Whether black-level compensation is locked
11078 to its current values,<wbr> or is free to vary
11079 </td>
11080
11081 <td class="entry_units">
11082 </td>
11083
11084 <td class="entry_range">
11085 </td>
11086
11087 <td class="entry_notes">
11088 When set to ON,<wbr> the values used for black-level
11089 compensation must not change until the lock is set to
11090 OFF
11091<br>
11092<br> Since changes to certain capture parameters (such as
11093 exposure time) may require resetting of black level
11094 compensation,<wbr> the HAL must report whether setting the
11095 black level lock was successful in the output result
11096 metadata.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011097<br>
11098<br> The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
11099 If for some reason black level locking is no longer legal (for example,<wbr>
11100 the analog gain has changed,<wbr> which forces black levels to be
11101 recalculated),<wbr> then the HAL is free to override this request (and it
11102 must report 'OFF' when this does happen) until the next time locking
11103 is legal again.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011104 </td>
11105
11106 <td class="entry_tags">
11107 <ul class="entry_tags">
11108 <li><a href="#tag_HAL2">HAL2</a></li>
11109 </ul>
11110 </td>
11111
11112 </tr> <!-- end of entry -->
11113
11114
11115
11116 <!-- end of kind -->
11117 </tbody>
11118 <tr><td colspan="7" class="kind">dynamic</td></tr>
11119
11120 <thead class="entries_header">
11121 <tr>
11122 <th class="th_name">Property Name</th>
11123 <th class="th_type">Type</th>
11124 <th class="th_description">Description</th>
11125 <th class="th_units">Units</th>
11126 <th class="th_range">Range</th>
11127 <th class="th_notes">Notes</th>
11128 <th class="th_tags">Tags</th>
11129 </tr>
11130 </thead>
11131
11132 <tbody>
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143 <tr class="entry" id="dynamic_android.blackLevel.lock">
11144 <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
11145 <td class="entry_type">
11146 <span class="entry_type_name entry_type_name_enum">byte</span>
11147
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011148 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011149
11150 <ul class="entry_type_enum">
11151 <li>
11152 <span class="entry_type_enum_name">OFF</span>
11153 </li>
11154 <li>
11155 <span class="entry_type_enum_name">ON</span>
11156 </li>
11157 </ul>
11158
11159 </td> <!-- entry_type -->
11160
11161 <td class="entry_description">
11162 Whether black-level compensation is locked
11163 to its current values,<wbr> or is free to vary
11164 </td>
11165
11166 <td class="entry_units">
11167 </td>
11168
11169 <td class="entry_range">
11170 </td>
11171
11172 <td class="entry_notes">
11173 When set to ON,<wbr> the values used for black-level
11174 compensation must not change until the lock is set to
11175 OFF
11176<br>
11177<br> Since changes to certain capture parameters (such as
11178 exposure time) may require resetting of black level
11179 compensation,<wbr> the HAL must report whether setting the
11180 black level lock was successful in the output result
11181 metadata.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011182<br>
11183<br> The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
11184 If for some reason black level locking is no longer legal (for example,<wbr>
11185 the analog gain has changed,<wbr> which forces black levels to be
11186 recalculated),<wbr> then the HAL is free to override this request (and it
11187 must report 'OFF' when this does happen) until the next time locking
11188 is legal again.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011189 </td>
11190
11191 <td class="entry_tags">
11192 <ul class="entry_tags">
11193 <li><a href="#tag_HAL2">HAL2</a></li>
11194 </ul>
11195 </td>
11196
11197 </tr> <!-- end of entry -->
11198
11199
11200
11201 <!-- end of kind -->
11202 </tbody>
11203
11204 <!-- end of section -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011205<!-- </namespace> -->
11206 </table>
11207
11208 <div class="tags" id="tag_index">
11209 <h2>Tags</h2>
11210 <ul>
11211 <li id="tag_AWB">AWB -
11212 Needed for auto white balance
11213
11214 <ul class="tags_entries">
11215 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11216 </ul>
11217 </li> <!-- tag_AWB -->
11218 <li id="tag_BC">BC -
11219 Needed for backwards compatibility with old Java API
11220
11221 <ul class="tags_entries">
11222 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a> (controls)</li>
11223 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a> (controls)</li>
11224 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a> (controls)</li>
11225 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a> (controls)</li>
11226 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011227 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011228 <li><a href="#controls_android.control.afMode">android.control.afMode</a> (controls)</li>
11229 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011230 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011231 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a> (controls)</li>
11232 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11233 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a> (controls)</li>
11234 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a> (controls)</li>
11235 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a> (controls)</li>
11236 <li><a href="#controls_android.control.mode">android.control.mode</a> (controls)</li>
11237 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a> (controls)</li>
11238 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a> (controls)</li>
11239 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a> (static)</li>
11240 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a> (static)</li>
11241 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a> (static)</li>
11242 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a> (static)</li>
11243 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a> (static)</li>
11244 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a> (static)</li>
11245 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a> (static)</li>
11246 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a> (static)</li>
11247 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a> (static)</li>
11248 <li><a href="#controls_android.flash.mode">android.flash.mode</a> (controls)</li>
11249 <li><a href="#static_android.flash.info.available">android.flash.info.available</a> (static)</li>
11250 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a> (controls)</li>
11251 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a> (controls)</li>
11252 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a> (controls)</li>
11253 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a> (controls)</li>
11254 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a> (controls)</li>
11255 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a> (controls)</li>
11256 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a> (controls)</li>
11257 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a> (static)</li>
11258 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11259 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11260 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a> (static)</li>
11261 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a> (dynamic)</li>
11262 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a> (static)</li>
11263 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a> (controls)</li>
11264 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a> (static)</li>
11265 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a> (static)</li>
11266 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a> (static)</li>
Igor Murashkinf11a4df2013-05-07 10:00:46 -070011267 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011268 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a> (static)</li>
11269 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a> (static)</li>
11270 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011271 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011272 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011273 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11274 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11275 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11276 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a> (static)</li>
11277 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a> (dynamic)</li>
11278 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a> (controls)</li>
11279 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a> (dynamic)</li>
11280 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a> (dynamic)</li>
11281 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a> (dynamic)</li>
11282 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a> (dynamic)</li>
11283 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a> (dynamic)</li>
11284 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a> (dynamic)</li>
11285 </ul>
11286 </li> <!-- tag_BC -->
11287 <li id="tag_V1">V1 -
11288 New features for first camera 2 release (API1)
11289
11290 <ul class="tags_entries">
11291 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a> (controls)</li>
11292 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a> (controls)</li>
11293 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a> (controls)</li>
11294 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a> (static)</li>
11295 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a> (controls)</li>
11296 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a> (controls)</li>
11297 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a> (controls)</li>
11298 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a> (controls)</li>
11299 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11300 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (controls)</li>
11301 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a> (static)</li>
11302 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a> (static)</li>
11303 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11304 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a> (static)</li>
11305 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a> (static)</li>
11306 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a> (static)</li>
11307 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a> (static)</li>
11308 <li><a href="#static_android.lens.position">android.lens.position</a> (static)</li>
11309 <li><a href="#dynamic_android.lens.state">android.lens.state</a> (dynamic)</li>
11310 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a> (controls)</li>
11311 <li><a href="#controls_android.request.id">android.request.id</a> (controls)</li>
11312 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a> (controls)</li>
11313 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
11314 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011315 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011316 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a> (static)</li>
11317 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11318 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11319 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
11320 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
11321 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a> (static)</li>
11322 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a> (controls)</li>
11323 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a> (controls)</li>
11324 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a> (dynamic)</li>
11325 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a> (dynamic)</li>
11326 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a> (dynamic)</li>
11327 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a> (dynamic)</li>
11328 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a> (dynamic)</li>
11329 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (dynamic)</li>
11330 </ul>
11331 </li> <!-- tag_V1 -->
11332 <li id="tag_ADV">ADV - None
11333 <ul class="tags_entries">
11334 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a> (static)</li>
11335 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a> (static)</li>
11336 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a> (controls)</li>
11337 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a> (static)</li>
11338 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a> (static)</li>
11339 <li><a href="#controls_android.shading.strength">android.shading.strength</a> (controls)</li>
11340 </ul>
11341 </li> <!-- tag_ADV -->
11342 <li id="tag_DNG">DNG -
11343 Needed for DNG file support
11344
11345 <ul class="tags_entries">
11346 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011347 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a> (static)</li>
11348 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a> (static)</li>
11349 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11350 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a> (static)</li>
11351 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a> (static)</li>
11352 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a> (static)</li>
11353 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a> (static)</li>
11354 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a> (static)</li>
11355 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a> (static)</li>
11356 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a> (static)</li>
11357 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a> (static)</li>
11358 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11359 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a> (controls)</li>
11360 </ul>
11361 </li> <!-- tag_DNG -->
11362 <li id="tag_EXIF">EXIF - None
11363 <ul class="tags_entries">
11364 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11365 </ul>
11366 </li> <!-- tag_EXIF -->
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011367 <li id="tag_HAL2">HAL2 -
11368 Tag only used by camera device HAL 2.x
11369
11370 <ul class="tags_entries">
11371 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a> (controls)</li>
11372 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a> (controls)</li>
11373 <li><a href="#controls_android.request.type">android.request.type</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011374 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a> (controls)</li>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011375 </ul>
11376 </li> <!-- tag_HAL2 -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011377 </ul>
11378 </div>
11379
11380 [ <a href="#">top</a> ]
11381
11382</body>
11383</html>