blob: ffeae0fcefadbb173c4129c24a954071bf2556e7 [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>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -0700389 <li><a href="#static_android.quirks.usePartialResult">android.quirks.usePartialResult</a></li>
390 </ul>
391 </li>
392 <li>
393 <span class="toc_kind_header">dynamic</span>
394 <ul class="toc_section">
395 <li><a href="#dynamic_android.quirks.partialResult">android.quirks.partialResult</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700396 </ul>
397 </li>
398 </ul> <!-- toc_section -->
399 </li>
400 <li>
401 <span class="toc_section_header"><a href="#section_request">request</a></span>
402 <ul class="toc_section">
403 <li>
404 <span class="toc_kind_header">controls</span>
405 <ul class="toc_section">
406 <li><a href="#controls_android.request.frameCount">android.request.frameCount</a></li>
407 <li><a href="#controls_android.request.id">android.request.id</a></li>
408 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a></li>
409 <li><a href="#controls_android.request.metadataMode">android.request.metadataMode</a></li>
410 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a></li>
411 <li><a href="#controls_android.request.type">android.request.type</a></li>
412 </ul>
413 </li>
414 <li>
415 <span class="toc_kind_header">static</span>
416 <ul class="toc_section">
417 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a></li>
418 <li><a href="#static_android.request.maxNumReprocessStreams">android.request.maxNumReprocessStreams</a></li>
419 </ul>
420 </li>
421 <li>
422 <span class="toc_kind_header">dynamic</span>
423 <ul class="toc_section">
424 <li><a href="#dynamic_android.request.frameCount">android.request.frameCount</a></li>
425 <li><a href="#dynamic_android.request.id">android.request.id</a></li>
426 <li><a href="#dynamic_android.request.metadataMode">android.request.metadataMode</a></li>
427 <li><a href="#dynamic_android.request.outputStreams">android.request.outputStreams</a></li>
428 </ul>
429 </li>
430 </ul> <!-- toc_section -->
431 </li>
432 <li>
433 <span class="toc_section_header"><a href="#section_scaler">scaler</a></span>
434 <ul class="toc_section">
435 <li>
436 <span class="toc_kind_header">controls</span>
437 <ul class="toc_section">
438 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
439 </ul>
440 </li>
441 <li>
442 <span class="toc_kind_header">static</span>
443 <ul class="toc_section">
444 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a></li>
445 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a></li>
446 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a></li>
447 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a></li>
448 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a></li>
449 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a></li>
450 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a></li>
451 <li><a href="#static_android.scaler.availableRawSizes">android.scaler.availableRawSizes</a></li>
452 </ul>
453 </li>
454 <li>
455 <span class="toc_kind_header">dynamic</span>
456 <ul class="toc_section">
457 <li><a href="#dynamic_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
458 </ul>
459 </li>
460 </ul> <!-- toc_section -->
461 </li>
462 <li>
463 <span class="toc_section_header"><a href="#section_sensor">sensor</a></span>
464 <ul class="toc_section">
465 <li>
466 <span class="toc_kind_header">controls</span>
467 <ul class="toc_section">
468 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
469 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
470 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
471 </ul>
472 </li>
473 <li>
474 <span class="toc_kind_header">static</span>
475 <ul class="toc_section">
476
477 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700478 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700479 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a></li>
480 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a></li>
481 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a></li>
482 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a></li>
483 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a></li>
484 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a></li>
485
486 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a></li>
487 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a></li>
488 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a></li>
489 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a></li>
490 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a></li>
491 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a></li>
492 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a></li>
493 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a></li>
494 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a></li>
495 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a></li>
496 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a></li>
497 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a></li>
498 <li><a href="#static_android.sensor.referenceIlluminant2">android.sensor.referenceIlluminant2</a></li>
499 </ul>
500 </li>
501 <li>
502 <span class="toc_kind_header">dynamic</span>
503 <ul class="toc_section">
504 <li><a href="#dynamic_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
505 <li><a href="#dynamic_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
506 <li><a href="#dynamic_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
507 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a></li>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700508 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700509 </ul>
510 </li>
511 </ul> <!-- toc_section -->
512 </li>
513 <li>
514 <span class="toc_section_header"><a href="#section_shading">shading</a></span>
515 <ul class="toc_section">
516 <li>
517 <span class="toc_kind_header">controls</span>
518 <ul class="toc_section">
519 <li><a href="#controls_android.shading.mode">android.shading.mode</a></li>
520 <li><a href="#controls_android.shading.strength">android.shading.strength</a></li>
521 </ul>
522 </li>
523 <li>
524 <span class="toc_kind_header">dynamic</span>
525 <ul class="toc_section">
526 <li><a href="#dynamic_android.shading.mode">android.shading.mode</a></li>
527 </ul>
528 </li>
529 </ul> <!-- toc_section -->
530 </li>
531 <li>
532 <span class="toc_section_header"><a href="#section_statistics">statistics</a></span>
533 <ul class="toc_section">
534 <li>
535 <span class="toc_kind_header">controls</span>
536 <ul class="toc_section">
537 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
538 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
539 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700540 <li><a href="#controls_android.statistics.lensShadingMapMode">android.statistics.lensShadingMapMode</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700541 </ul>
542 </li>
543 <li>
544 <span class="toc_kind_header">static</span>
545 <ul class="toc_section">
546
547 <li><a href="#static_android.statistics.info.availableFaceDetectModes">android.statistics.info.availableFaceDetectModes</a></li>
548 <li><a href="#static_android.statistics.info.histogramBucketCount">android.statistics.info.histogramBucketCount</a></li>
549 <li><a href="#static_android.statistics.info.maxFaceCount">android.statistics.info.maxFaceCount</a></li>
550 <li><a href="#static_android.statistics.info.maxHistogramCount">android.statistics.info.maxHistogramCount</a></li>
551 <li><a href="#static_android.statistics.info.maxSharpnessMapValue">android.statistics.info.maxSharpnessMapValue</a></li>
552 <li><a href="#static_android.statistics.info.sharpnessMapSize">android.statistics.info.sharpnessMapSize</a></li>
553
554 </ul>
555 </li>
556 <li>
557 <span class="toc_kind_header">dynamic</span>
558 <ul class="toc_section">
559 <li><a href="#dynamic_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
560 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a></li>
561 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a></li>
562 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a></li>
563 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a></li>
564 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a></li>
565 <li><a href="#dynamic_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
566 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a></li>
567 <li><a href="#dynamic_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700568 <li><a href="#dynamic_android.statistics.lensShadingMap">android.statistics.lensShadingMap</a></li>
569 <li><a href="#dynamic_android.statistics.predictedColorGains">android.statistics.predictedColorGains</a></li>
570 <li><a href="#dynamic_android.statistics.predictedColorTransform">android.statistics.predictedColorTransform</a></li>
571 <li><a href="#dynamic_android.statistics.sceneFlicker">android.statistics.sceneFlicker</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700572 </ul>
573 </li>
574 </ul> <!-- toc_section -->
575 </li>
576 <li>
577 <span class="toc_section_header"><a href="#section_tonemap">tonemap</a></span>
578 <ul class="toc_section">
579 <li>
580 <span class="toc_kind_header">controls</span>
581 <ul class="toc_section">
582 <li><a href="#controls_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
583 <li><a href="#controls_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
584 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
585 <li><a href="#controls_android.tonemap.mode">android.tonemap.mode</a></li>
586 </ul>
587 </li>
588 <li>
589 <span class="toc_kind_header">static</span>
590 <ul class="toc_section">
591 <li><a href="#static_android.tonemap.maxCurvePoints">android.tonemap.maxCurvePoints</a></li>
592 </ul>
593 </li>
594 <li>
595 <span class="toc_kind_header">dynamic</span>
596 <ul class="toc_section">
597 <li><a href="#dynamic_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
598 <li><a href="#dynamic_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
599 <li><a href="#dynamic_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
600 <li><a href="#dynamic_android.tonemap.mode">android.tonemap.mode</a></li>
601 </ul>
602 </li>
603 </ul> <!-- toc_section -->
604 </li>
605 <li>
606 <span class="toc_section_header"><a href="#section_led">led</a></span>
607 <ul class="toc_section">
608 <li>
609 <span class="toc_kind_header">controls</span>
610 <ul class="toc_section">
611 <li><a href="#controls_android.led.transmit">android.led.transmit</a></li>
612 </ul>
613 </li>
614 <li>
615 <span class="toc_kind_header">dynamic</span>
616 <ul class="toc_section">
617 <li><a href="#dynamic_android.led.transmit">android.led.transmit</a></li>
618 </ul>
619 </li>
620 <li>
621 <span class="toc_kind_header">static</span>
622 <ul class="toc_section">
623 <li><a href="#static_android.led.availableLeds">android.led.availableLeds</a></li>
624 </ul>
625 </li>
626 </ul> <!-- toc_section -->
627 </li>
628 <li>
629 <span class="toc_section_header"><a href="#section_info">info</a></span>
630 <ul class="toc_section">
631 <li>
632 <span class="toc_kind_header">static</span>
633 <ul class="toc_section">
634 <li><a href="#static_android.info.supportedHardwareLevel">android.info.supportedHardwareLevel</a></li>
635 </ul>
636 </li>
637 </ul> <!-- toc_section -->
638 </li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700639 <li>
640 <span class="toc_section_header"><a href="#section_blackLevel">blackLevel</a></span>
641 <ul class="toc_section">
642 <li>
643 <span class="toc_kind_header">controls</span>
644 <ul class="toc_section">
645 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a></li>
646 </ul>
647 </li>
648 <li>
649 <span class="toc_kind_header">dynamic</span>
650 <ul class="toc_section">
651 <li><a href="#dynamic_android.blackLevel.lock">android.blackLevel.lock</a></li>
652 </ul>
653 </li>
654 </ul> <!-- toc_section -->
655 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800656 </ul>
657
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700658
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800659 <h1>Properties</h1>
660 <table class="properties">
661
662 <thead class="thead_dummy">
663 <tr>
664 <th class="th_name">Property Name</th>
665 <th class="th_type">Type</th>
666 <th class="th_description">Description</th>
667 <th class="th_units">Units</th>
668 <th class="th_range">Range</th>
669 <th class="th_notes">Notes</th>
670 <th class="th_tags">Tags</th>
671 </tr>
672 </thead> <!-- so that the first occurrence of thead is not
673 above the first occurrence of tr -->
674<!-- <namespace name="android"> -->
675 <tr><td colspan="7" id="section_colorCorrection" class="section">colorCorrection</td></tr>
676
677
678 <tr><td colspan="7" class="kind">controls</td></tr>
679
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700680 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800681 <tr>
682 <th class="th_name">Property Name</th>
683 <th class="th_type">Type</th>
684 <th class="th_description">Description</th>
685 <th class="th_units">Units</th>
686 <th class="th_range">Range</th>
687 <th class="th_notes">Notes</th>
688 <th class="th_tags">Tags</th>
689 </tr>
690 </thead>
691
692 <tbody>
693
694
695
696
697
698
699
700
701
702
703 <tr class="entry" id="controls_android.colorCorrection.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800704 <td class="entry_name"><html><body><p>android.colorCorrection.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800705 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800706 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800707
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700708 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800709
710 <ul class="entry_type_enum">
711 <li>
712 <span class="entry_type_enum_name">TRANSFORM_MATRIX</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800713 <span class="entry_type_enum_notes"><html><body><p>Use the android.colorCorrection.transform matrix
714 and android.colorCorrection.gains to do color conversion<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800715 </li>
716 <li>
717 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800718 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
719 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800720 </li>
721 <li>
722 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800723 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
724 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800725 </li>
726 </ul>
727
728 </td> <!-- entry_type -->
729
730 <td class="entry_description">
731 </td>
732
733 <td class="entry_units">
734 </td>
735
736 <td class="entry_range">
737 </td>
738
739 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800740 <html><body><p>When android.control.awbMode is not OFF, TRANSFORM_MATRIX
741should be ignored.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800742 </td>
743
744 <td class="entry_tags">
745 </td>
746
747 </tr> <!-- end of entry -->
748
749
750 <tr class="entry" id="controls_android.colorCorrection.transform">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800751 <td class="entry_name"><html><body><p>android.colorCorrection.transform<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800752 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700753 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800754 <span class="entry_type_container">x</span>
755
756 <span class="entry_type_array">
757 3 x 3
758 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700759 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800760 <div class="entry_type_notes"><html><body><p>3x3 rational matrix in row-major order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800761
762
763 </td> <!-- entry_type -->
764
765 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800766 <html><body><p>A color transform matrix to use to transform
767from sensor RGB color space to output linear sRGB color space<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800768 </td>
769
770 <td class="entry_units">
771 </td>
772
773 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800774 <html><body><p>Output values are expected to be in the range
775 (0,1)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800776 </td>
777
778 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800779 <html><body><p>This matrix is either set by HAL when the request
780android.colorCorrection.mode is not TRANSFORM_MATRIX, or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800781directly by the application in the request when the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800782android.colorCorrection.mode is TRANSFORM_MATRIX.</p>
783<p>In the latter case, the HAL may round the matrix to account
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800784for precision issues; the final rounded matrix should be
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800785reported back in this matrix result metadata.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700786 </td>
787
788 <td class="entry_tags">
789 </td>
790
791 </tr> <!-- end of entry -->
792
793
794 <tr class="entry" id="controls_android.colorCorrection.gains">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800795 <td class="entry_name"><html><body><p>android.colorCorrection.gains<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700796 <td class="entry_type">
797 <span class="entry_type_name">float</span>
798 <span class="entry_type_container">x</span>
799
800 <span class="entry_type_array">
801 4
802 </span>
803 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800804 <div class="entry_type_notes"><html><body><p>A 1D array of floats for 4 color channel gains<wbr></wbr></p></body></html></div>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700805
806
807 </td> <!-- entry_type -->
808
809 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800810 <html><body><p>Gains applying to Bayer color channels for
811white-balance<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700812 </td>
813
814 <td class="entry_units">
815 </td>
816
817 <td class="entry_range">
818 </td>
819
820 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800821 <html><body><p>The 4-channel white-balance gains are defined in
822the order of [R G_even G_odd B], where G_even is the gain
823for green pixels on even rows of the output, and G_odd
824is the gain for greenpixels on the odd rows. if a HAL
825does not support a separate gain for even/odd green channels,
826it should use the G_even value,and write G_odd equal to
827G_even in the output result metadata.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800828<p>This array is either set by HAL when the request
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800829android.colorCorrection.mode is not TRANSFORM_MATRIX, or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800830directly by the application in the request when the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800831android.colorCorrection.mode is TRANSFORM_MATRIX.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800832<p>The ouput should be the gains actually applied by the HAL to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800833the current frame.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800834 </td>
835
836 <td class="entry_tags">
837 </td>
838
839 </tr> <!-- end of entry -->
840
841
842
843 <!-- end of kind -->
844 </tbody>
845 <tr><td colspan="7" class="kind">dynamic</td></tr>
846
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700847 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800848 <tr>
849 <th class="th_name">Property Name</th>
850 <th class="th_type">Type</th>
851 <th class="th_description">Description</th>
852 <th class="th_units">Units</th>
853 <th class="th_range">Range</th>
854 <th class="th_notes">Notes</th>
855 <th class="th_tags">Tags</th>
856 </tr>
857 </thead>
858
859 <tbody>
860
861
862
863
864
865
866
867
868
869
Zhijun He69fc0ea2013-07-17 09:42:58 -0700870 <tr class="entry" id="dynamic_android.colorCorrection.transform">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800871 <td class="entry_name"><html><body><p>android.colorCorrection.transform<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800872 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700873 <span class="entry_type_name">rational</span>
874 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800875
Zhijun He69fc0ea2013-07-17 09:42:58 -0700876 <span class="entry_type_array">
877 3 x 3
878 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700879 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800880 <div class="entry_type_notes"><html><body><p>3x3 rational matrix in row-major order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800881
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800882
883 </td> <!-- entry_type -->
884
885 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800886 <html><body><p>A color transform matrix to use to transform
887from sensor RGB color space to output linear sRGB color space<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700888 </td>
889
890 <td class="entry_units">
891 </td>
892
893 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800894 <html><body><p>Output values are expected to be in the range
895 (0,1)<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700896 </td>
897
898 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800899 <html><body><p>This matrix is either set by HAL when the request
900android.colorCorrection.mode is not TRANSFORM_MATRIX, or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800901directly by the application in the request when the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800902android.colorCorrection.mode is TRANSFORM_MATRIX.</p>
903<p>In the latter case, the HAL may round the matrix to account
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800904for precision issues; the final rounded matrix should be
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800905reported back in this matrix result metadata.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700906 </td>
907
908 <td class="entry_tags">
909 </td>
910
911 </tr> <!-- end of entry -->
912
913
914 <tr class="entry" id="dynamic_android.colorCorrection.gains">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800915 <td class="entry_name"><html><body><p>android.colorCorrection.gains<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700916 <td class="entry_type">
917 <span class="entry_type_name">float</span>
918 <span class="entry_type_container">x</span>
919
920 <span class="entry_type_array">
921 4
922 </span>
923 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800924 <div class="entry_type_notes"><html><body><p>A 1D array of floats for 4 color channel gains<wbr></wbr></p></body></html></div>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700925
926
927 </td> <!-- entry_type -->
928
929 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800930 <html><body><p>Gains applying to Bayer color channels for
931white-balance<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800932 </td>
933
934 <td class="entry_units">
935 </td>
936
937 <td class="entry_range">
938 </td>
939
940 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800941 <html><body><p>The 4-channel white-balance gains are defined in
942the order of [R G_even G_odd B], where G_even is the gain
943for green pixels on even rows of the output, and G_odd
944is the gain for greenpixels on the odd rows. if a HAL
945does not support a separate gain for even/odd green channels,
946it should use the G_even value,and write G_odd equal to
947G_even in the output result metadata.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800948<p>This array is either set by HAL when the request
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800949android.colorCorrection.mode is not TRANSFORM_MATRIX, or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800950directly by the application in the request when the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800951android.colorCorrection.mode is TRANSFORM_MATRIX.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800952<p>The ouput should be the gains actually applied by the HAL to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800953the current frame.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800954 </td>
955
956 <td class="entry_tags">
957 </td>
958
959 </tr> <!-- end of entry -->
960
961
962
963 <!-- end of kind -->
964 </tbody>
965
966 <!-- end of section -->
967 <tr><td colspan="7" id="section_control" class="section">control</td></tr>
968
969
970 <tr><td colspan="7" class="kind">controls</td></tr>
971
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700972 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800973 <tr>
974 <th class="th_name">Property Name</th>
975 <th class="th_type">Type</th>
976 <th class="th_description">Description</th>
977 <th class="th_units">Units</th>
978 <th class="th_range">Range</th>
979 <th class="th_notes">Notes</th>
980 <th class="th_tags">Tags</th>
981 </tr>
982 </thead>
983
984 <tbody>
985
986
987
988
989
990
991
992
993
994
995 <tr class="entry" id="controls_android.control.aeAntibandingMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -0800996 <td class="entry_name"><html><body><p>android.control.aeAntibandingMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800997 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800998 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800999
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001000 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001001
1002 <ul class="entry_type_enum">
1003 <li>
1004 <span class="entry_type_enum_name">OFF</span>
1005 </li>
1006 <li>
1007 <span class="entry_type_enum_name">50HZ</span>
1008 </li>
1009 <li>
1010 <span class="entry_type_enum_name">60HZ</span>
1011 </li>
1012 <li>
1013 <span class="entry_type_enum_name">AUTO</span>
1014 </li>
1015 </ul>
1016
1017 </td> <!-- entry_type -->
1018
1019 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001020 <html><body><p>Enum for controlling
1021antibanding<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001022 </td>
1023
1024 <td class="entry_units">
1025 </td>
1026
1027 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001028 <html><body><p>android.control.aeAvailableAntibandingModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001029 </td>
1030
1031 <td class="entry_notes">
1032 </td>
1033
1034 <td class="entry_tags">
1035 </td>
1036
1037 </tr> <!-- end of entry -->
1038
1039
1040 <tr class="entry" id="controls_android.control.aeExposureCompensation">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001041 <td class="entry_name"><html><body><p>android.control.aeExposureCompensation<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001042 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001043 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001044
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001045 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001046
1047
1048 </td> <!-- entry_type -->
1049
1050 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001051 <html><body><p>Adjustment to AE target image
1052brightness<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001053 </td>
1054
1055 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001056 <html><body><p>count of positive/negative EV steps<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001057 </td>
1058
1059 <td class="entry_range">
1060 </td>
1061
1062 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001063 <html><body><p>For example, if EV step is 0.333, '6' will mean an
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001064exposure compensation of +2 EV; -3 will mean an exposure
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001065compensation of -1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001066 </td>
1067
1068 <td class="entry_tags">
1069 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001070 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001071 </ul>
1072 </td>
1073
1074 </tr> <!-- end of entry -->
1075
1076
1077 <tr class="entry" id="controls_android.control.aeLock">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001078 <td class="entry_name"><html><body><p>android.control.aeLock<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001079 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001080 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001081
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001082 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001083
1084 <ul class="entry_type_enum">
1085 <li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001086 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001087 <span class="entry_type_enum_notes"><html><body><p>Autoexposure lock is disabled; the AE algorithm
1088 is free to update its parameters.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001089 </li>
1090 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001091 <span class="entry_type_enum_name">ON</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001092 <span class="entry_type_enum_notes"><html><body><p>Autoexposure lock is enabled; the AE algorithm
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001093 must not update the exposure and sensitivity parameters
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001094 while the lock is active<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001095 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001096 </ul>
1097
1098 </td> <!-- entry_type -->
1099
1100 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001101 <html><body><p>Whether AE is currently locked to its latest
1102calculated values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001103 </td>
1104
1105 <td class="entry_units">
1106 </td>
1107
1108 <td class="entry_range">
1109 </td>
1110
1111 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001112 <html><body><p>Note that even when AE is locked, the flash may be
1113fired if the AE mode is ON_AUTO_FLASH / ON_ALWAYS_FLASH /
1114ON_AUTO_FLASH_REDEYE.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001115 </td>
1116
1117 <td class="entry_tags">
1118 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001119 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001120 </ul>
1121 </td>
1122
1123 </tr> <!-- end of entry -->
1124
1125
1126 <tr class="entry" id="controls_android.control.aeMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001127 <td class="entry_name"><html><body><p>android.control.aeMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001128 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001129 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001130
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001131 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001132
1133 <ul class="entry_type_enum">
1134 <li>
1135 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001136 <span class="entry_type_enum_notes"><html><body><p>Autoexposure is disabled; sensor.exposureTime,
1137 sensor.sensitivity and sensor.frameDuration are used<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001138 </li>
1139 <li>
1140 <span class="entry_type_enum_name">ON</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001141 <span class="entry_type_enum_notes"><html><body><p>Autoexposure is active, no flash
1142 control<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001143 </li>
1144 <li>
1145 <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
Zhijun Hef5529232013-12-13 17:48:53 -08001146 <span class="entry_type_enum_notes"><html><body><p>If autoexposure is active and flash exists, auto
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001147 flash control; flash may be fired when precapture
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001148 trigger is activated, and for captures for which
1149 captureIntent = STILL_CAPTURE<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001150 </li>
1151 <li>
1152 <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
Zhijun Hef5529232013-12-13 17:48:53 -08001153 <span class="entry_type_enum_notes"><html><body><p>If autoexposure is active and flash exists, auto
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001154 flash control for precapture trigger and always flash
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001155 when captureIntent = STILL_CAPTURE<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001156 </li>
1157 <li>
1158 <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
Zhijun Hef5529232013-12-13 17:48:53 -08001159 <span class="entry_type_enum_notes"><html><body><p>Optional. Automatic red eye reduction with flash.
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001160 If deemed necessary, red eye reduction sequence should
1161 fire when precapture trigger is activated, and final
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001162 flash should fire when captureIntent =
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001163 STILL_CAPTURE<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001164 </li>
1165 </ul>
1166
1167 </td> <!-- entry_type -->
1168
1169 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001170 <html><body><p>Whether AE is currently updating the sensor
1171exposure and sensitivity fields<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001172 </td>
1173
1174 <td class="entry_units">
1175 </td>
1176
1177 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001178 <html><body><p>android.control.aeAvailableModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001179 </td>
1180
1181 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08001182 <html><body><p>Only effective if android.control.mode = AUTO.</p>
1183<p>If auto-exposure is active, HAL auto-focus routine is enabled,
1184then HAL auto-exposure routine overrides the control variables
1185that relate to auto-exposure routine, and these override values
1186are then available in the result metadata for that capture.</p>
1187<p>For example, if auto-exposure is enabled in a request, the HAL should
1188overwrite the exposure, gain, and frame duration fields (and potentially
1189the flash fields, depending on AE mode) of the request. The overridden
1190values are then provided back to the user in the corresponding result.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001191 </td>
1192
1193 <td class="entry_tags">
1194 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001195 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001196 </ul>
1197 </td>
1198
1199 </tr> <!-- end of entry -->
1200
1201
1202 <tr class="entry" id="controls_android.control.aeRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001203 <td class="entry_name"><html><body><p>android.control.aeRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001204 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001205 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001206 <span class="entry_type_container">x</span>
1207
1208 <span class="entry_type_array">
1209 5 x area_count
1210 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001211 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001212
1213
1214 </td> <!-- entry_type -->
1215
1216 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001217 <html><body><p>List of areas to use for
1218metering<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001219 </td>
1220
1221 <td class="entry_units">
1222 </td>
1223
1224 <td class="entry_range">
1225 </td>
1226
1227 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001228 <html><body><p>Each area is a rectangle plus weight: xmin, ymin,
1229xmax, ymax, weight. The rectangle is defined inclusive of the
1230specified coordinates.</p>
1231<p>The coordinate system is based on the active pixel array,
1232with (0,0) being the top-left pixel in the active pixel array, and
1233(android.sensor.info.activeArraySize.width - 1,
1234android.sensor.info.activeArraySize.height - 1) being the
1235bottom-right pixel in the active pixel array. The weight
1236should be nonnegative.</p>
1237<p>If all regions have 0 weight, then no specific metering area
1238needs to be used by the HAL. If the metering region is
1239outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001240should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001241used sections in the frame metadata<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001242 </td>
1243
1244 <td class="entry_tags">
1245 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001246 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001247 </ul>
1248 </td>
1249
1250 </tr> <!-- end of entry -->
1251
1252
1253 <tr class="entry" id="controls_android.control.aeTargetFpsRange">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001254 <td class="entry_name"><html><body><p>android.control.aeTargetFpsRange<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001255 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001256 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001257 <span class="entry_type_container">x</span>
1258
1259 <span class="entry_type_array">
1260 2
1261 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001262 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001263
1264
1265 </td> <!-- entry_type -->
1266
1267 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001268 <html><body><p>Range over which fps can be adjusted to
1269maintain exposure<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001270 </td>
1271
1272 <td class="entry_units">
1273 </td>
1274
1275 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001276 <html><body><p>android.control.aeAvailableTargetFpsRanges<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001277 </td>
1278
1279 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001280 <html><body><p>Only constrains AE algorithm, not manual control
1281of android.sensor.exposureTime<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001282 </td>
1283
1284 <td class="entry_tags">
1285 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001286 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001287 </ul>
1288 </td>
1289
1290 </tr> <!-- end of entry -->
1291
1292
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001293 <tr class="entry" id="controls_android.control.aePrecaptureTrigger">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001294 <td class="entry_name"><html><body><p>android.control.aePrecaptureTrigger<wbr></wbr></p></body></html></td>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001295 <td class="entry_type">
1296 <span class="entry_type_name entry_type_name_enum">byte</span>
1297
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001298 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001299
1300 <ul class="entry_type_enum">
1301 <li>
1302 <span class="entry_type_enum_name">IDLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001303 <span class="entry_type_enum_notes"><html><body><p>The trigger is idle.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001304 </li>
1305 <li>
1306 <span class="entry_type_enum_name">START</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001307 <span class="entry_type_enum_notes"><html><body><p>The precapture metering sequence
1308 must be started. The exact effect of the precapture
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001309 trigger depends on the current AE mode and
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001310 state.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001311 </li>
1312 </ul>
1313
1314 </td> <!-- entry_type -->
1315
1316 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001317 <html><body><p>Whether the HAL must trigger precapture
1318metering.<wbr></wbr></p></body></html>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001319 </td>
1320
1321 <td class="entry_units">
1322 </td>
1323
1324 <td class="entry_range">
1325 </td>
1326
1327 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001328 <html><body><p>This entry is normally set to IDLE, or is not
1329included at all in the request settings. When included and
1330set to START, the HAL must trigger the autoexposure
1331precapture metering sequence.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001332<p>The effect of AE precapture trigger depends on the current
1333AE mode and state; see the camera HAL device v3 header for
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001334details.<wbr></wbr></p></body></html>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001335 </td>
1336
1337 <td class="entry_tags">
1338 <ul class="entry_tags">
1339 <li><a href="#tag_BC">BC</a></li>
1340 </ul>
1341 </td>
1342
1343 </tr> <!-- end of entry -->
1344
1345
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001346 <tr class="entry" id="controls_android.control.afMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001347 <td class="entry_name"><html><body><p>android.control.afMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001348 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001349 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001350
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001351 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001352
1353 <ul class="entry_type_enum">
1354 <li>
1355 <span class="entry_type_enum_name">OFF</span>
Zhijun Hef5529232013-12-13 17:48:53 -08001356 <span class="entry_type_enum_notes"><html><body><p>The auto-focus routine does not control the lens;
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001357 android.lens.focusDistance is controlled by the
1358 application<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001359 </li>
1360 <li>
1361 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001362 <span class="entry_type_enum_notes"><html><body><p>If lens is not fixed focus.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001363
Zhijun Hef5529232013-12-13 17:48:53 -08001364 Use android.lens.info.minimumFocusDistance to determine if lens
1365 is fixed-focus. In this mode, the lens does not move unless
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001366 the autofocus trigger action is called. When that trigger
1367 is activated, AF must transition to ACTIVE_SCAN, then to
Zhijun Hef5529232013-12-13 17:48:53 -08001368 the outcome of the scan (FOCUSED or NOT_FOCUSED).
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001369
Zhijun Hef5529232013-12-13 17:48:53 -08001370 Triggering AF_CANCEL resets the lens position to default,
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001371 and sets the AF state to INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001372 </li>
1373 <li>
1374 <span class="entry_type_enum_name">MACRO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001375 <span class="entry_type_enum_notes"><html><body><p>In this mode, the lens does not move unless the
1376 autofocus trigger action is called.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001377
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001378 When that trigger is activated, AF must transition to
1379 ACTIVE_SCAN, then to the outcome of the scan (FOCUSED or
1380 NOT_FOCUSED). Triggering cancel AF resets the lens
1381 position to default, and sets the AF state to
1382 INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001383 </li>
1384 <li>
1385 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001386 <span class="entry_type_enum_notes"><html><body><p>In this mode, the AF algorithm modifies the lens
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001387 position continually to attempt to provide a
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001388 constantly-in-focus image stream.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001389
1390 The focusing behavior should be suitable for good quality
1391 video recording; typically this means slower focus
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001392 movement and no overshoots. When the AF trigger is not
1393 involved, the AF algorithm should start in INACTIVE state,
1394 and then transition into PASSIVE_SCAN and PASSIVE_FOCUSED
1395 states as appropriate. When the AF trigger is activated,
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001396 the algorithm should immediately transition into
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001397 AF_FOCUSED or AF_NOT_FOCUSED as appropriate, and lock the
1398 lens position until a cancel AF trigger is received.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001399
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001400 Once cancel is received, the algorithm should transition
1401 back to INACTIVE and resume passive scan. Note that this
1402 behavior is not identical to CONTINUOUS_PICTURE, since an
1403 ongoing PASSIVE_SCAN must immediately be
1404 canceled.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001405 </li>
1406 <li>
1407 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001408 <span class="entry_type_enum_notes"><html><body><p>In this mode, the AF algorithm modifies the lens
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001409 position continually to attempt to provide a
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001410 constantly-in-focus image stream.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001411
1412 The focusing behavior should be suitable for still image
1413 capture; typically this means focusing as fast as
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001414 possible. When the AF trigger is not involved, the AF
1415 algorithm should start in INACTIVE state, and then
1416 transition into PASSIVE_SCAN and PASSIVE_FOCUSED states as
1417 appropriate as it attempts to maintain focus. When the AF
1418 trigger is activated, the algorithm should finish its
1419 PASSIVE_SCAN if active, and then transition into
1420 AF_FOCUSED or AF_NOT_FOCUSED as appropriate, and lock the
1421 lens position until a cancel AF trigger is received.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001422
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001423 When the AF cancel trigger is activated, the algorithm
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001424 should transition back to INACTIVE and then act as if it
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001425 has just been started.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001426 </li>
1427 <li>
1428 <span class="entry_type_enum_name">EDOF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001429 <span class="entry_type_enum_notes"><html><body><p>Extended depth of field (digital focus). AF
1430 trigger is ignored, AF state should always be
1431 INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001432 </li>
1433 </ul>
1434
1435 </td> <!-- entry_type -->
1436
1437 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001438 <html><body><p>Whether AF is currently enabled, and what
1439mode it is set to<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001440 </td>
1441
1442 <td class="entry_units">
1443 </td>
1444
1445 <td class="entry_range">
1446 </td>
1447
1448 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08001449 <html><body><p>Only effective if android.control.mode = AUTO.</p>
1450<p>If lens is controlled by HAL auto-focus algorithm, the HAL should
1451report the current AF status in android.control.afState in
1452result metadata.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001453 </td>
1454
1455 <td class="entry_tags">
1456 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001457 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001458 </ul>
1459 </td>
1460
1461 </tr> <!-- end of entry -->
1462
1463
1464 <tr class="entry" id="controls_android.control.afRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001465 <td class="entry_name"><html><body><p>android.control.afRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001466 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001467 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001468 <span class="entry_type_container">x</span>
1469
1470 <span class="entry_type_array">
1471 5 x area_count
1472 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001473 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001474
1475
1476 </td> <!-- entry_type -->
1477
1478 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001479 <html><body><p>List of areas to use for focus
1480estimation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001481 </td>
1482
1483 <td class="entry_units">
1484 </td>
1485
1486 <td class="entry_range">
1487 </td>
1488
1489 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001490 <html><body><p>Each area is a rectangle plus weight: xmin, ymin,
1491xmax, ymax, weight. The rectangle is defined inclusive of the
1492specified coordinates.</p>
1493<p>The coordinate system is based on the active pixel array,
1494with (0,0) being the top-left pixel in the active pixel array, and
1495(android.sensor.info.activeArraySize.width - 1,
1496android.sensor.info.activeArraySize.height - 1) being the
1497bottom-right pixel in the active pixel array. The weight
1498should be nonnegative.</p>
1499<p>If all regions have 0 weight, then no specific focus area
1500needs to be used by the HAL. If the focusing region is
1501outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001502should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001503used sections in the frame metadata<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001504 </td>
1505
1506 <td class="entry_tags">
1507 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001508 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001509 </ul>
1510 </td>
1511
1512 </tr> <!-- end of entry -->
1513
1514
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001515 <tr class="entry" id="controls_android.control.afTrigger">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001516 <td class="entry_name"><html><body><p>android.control.afTrigger<wbr></wbr></p></body></html></td>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001517 <td class="entry_type">
1518 <span class="entry_type_name entry_type_name_enum">byte</span>
1519
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001520 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001521
1522 <ul class="entry_type_enum">
1523 <li>
1524 <span class="entry_type_enum_name">IDLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001525 <span class="entry_type_enum_notes"><html><body><p>The trigger is idle.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001526 </li>
1527 <li>
1528 <span class="entry_type_enum_name">START</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001529 <span class="entry_type_enum_notes"><html><body><p>Autofocus must trigger now.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001530 </li>
1531 <li>
1532 <span class="entry_type_enum_name">CANCEL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001533 <span class="entry_type_enum_notes"><html><body><p>Autofocus must return to initial
1534 state, and cancel any active trigger.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001535 </li>
1536 </ul>
1537
1538 </td> <!-- entry_type -->
1539
1540 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001541 <html><body><p>Whether the HAL must trigger autofocus.<wbr></wbr></p></body></html>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001542 </td>
1543
1544 <td class="entry_units">
1545 </td>
1546
1547 <td class="entry_range">
1548 </td>
1549
1550 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001551 <html><body><p>This entry is normally set to IDLE, or is not
1552included at all in the request settings.</p>
1553<p>When included and set to START, the HAL must trigger the
1554autofocus algorithm. The effect of AF trigger depends on the
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001555current AF mode and state; see the camera HAL device v3
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001556header for details. When set to CANCEL, the HAL must cancel
1557any active trigger, and return to initial AF state.<wbr></wbr></p></body></html>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001558 </td>
1559
1560 <td class="entry_tags">
1561 <ul class="entry_tags">
1562 <li><a href="#tag_BC">BC</a></li>
1563 </ul>
1564 </td>
1565
1566 </tr> <!-- end of entry -->
1567
1568
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001569 <tr class="entry" id="controls_android.control.awbLock">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001570 <td class="entry_name"><html><body><p>android.control.awbLock<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001571 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001572 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001573
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001574 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001575
1576 <ul class="entry_type_enum">
1577 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001578 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001579 <span class="entry_type_enum_notes"><html><body><p>Auto-whitebalance lock is disabled; the AWB
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001580 algorithm is free to update its parameters if in AUTO
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001581 mode.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001582 </li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001583 <li>
1584 <span class="entry_type_enum_name">ON</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001585 <span class="entry_type_enum_notes"><html><body><p>Auto-whitebalance lock is enabled; the AWB
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001586 algorithm must not update the exposure and sensitivity
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001587 parameters while the lock is active<wbr></wbr></p></body></html></span>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001588 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001589 </ul>
1590
1591 </td> <!-- entry_type -->
1592
1593 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001594 <html><body><p>Whether AWB is currently locked to its
1595latest calculated values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001596 </td>
1597
1598 <td class="entry_units">
1599 </td>
1600
1601 <td class="entry_range">
1602 </td>
1603
1604 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001605 <html><body><p>Note that AWB lock is only meaningful for AUTO
1606mode; in other modes, AWB is already fixed to a specific
1607setting<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001608 </td>
1609
1610 <td class="entry_tags">
1611 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001612 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001613 </ul>
1614 </td>
1615
1616 </tr> <!-- end of entry -->
1617
1618
1619 <tr class="entry" id="controls_android.control.awbMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001620 <td class="entry_name"><html><body><p>android.control.awbMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001621 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001622 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001623
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001624 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001625
1626 <ul class="entry_type_enum">
1627 <li>
1628 <span class="entry_type_enum_name">OFF</span>
1629 </li>
1630 <li>
1631 <span class="entry_type_enum_name">AUTO</span>
1632 </li>
1633 <li>
1634 <span class="entry_type_enum_name">INCANDESCENT</span>
1635 </li>
1636 <li>
1637 <span class="entry_type_enum_name">FLUORESCENT</span>
1638 </li>
1639 <li>
1640 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
1641 </li>
1642 <li>
1643 <span class="entry_type_enum_name">DAYLIGHT</span>
1644 </li>
1645 <li>
1646 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
1647 </li>
1648 <li>
1649 <span class="entry_type_enum_name">TWILIGHT</span>
1650 </li>
1651 <li>
1652 <span class="entry_type_enum_name">SHADE</span>
1653 </li>
1654 </ul>
1655
1656 </td> <!-- entry_type -->
1657
1658 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001659 <html><body><p>Whether AWB is currently setting the color
1660transform fields, and what its illumination target
1661is<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001662 </td>
1663
1664 <td class="entry_units">
1665 </td>
1666
1667 <td class="entry_range">
1668 </td>
1669
1670 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08001671 <html><body><p>[BC - AWB lock,AWB modes]</p>
1672<p>Only effective if android.control.mode = AUTO.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001673 </td>
1674
1675 <td class="entry_tags">
1676 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001677 <li><a href="#tag_BC">BC</a></li>
1678 <li><a href="#tag_AWB">AWB</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001679 </ul>
1680 </td>
1681
1682 </tr> <!-- end of entry -->
1683
1684
1685 <tr class="entry" id="controls_android.control.awbRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001686 <td class="entry_name"><html><body><p>android.control.awbRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001687 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001688 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001689 <span class="entry_type_container">x</span>
1690
1691 <span class="entry_type_array">
1692 5 x area_count
1693 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001694 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001695
1696
1697 </td> <!-- entry_type -->
1698
1699 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001700 <html><body><p>List of areas to use for illuminant
1701estimation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001702 </td>
1703
1704 <td class="entry_units">
1705 </td>
1706
1707 <td class="entry_range">
1708 </td>
1709
1710 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001711 <html><body><p>Only used in AUTO mode.</p>
1712<p>Each area is a rectangle plus weight: xmin, ymin,
1713xmax, ymax, weight. The rectangle is defined inclusive of the
1714specified coordinates.</p>
1715<p>The coordinate system is based on the active pixel array,
1716with (0,0) being the top-left pixel in the active pixel array, and
1717(android.sensor.info.activeArraySize.width - 1,
1718android.sensor.info.activeArraySize.height - 1) being the
1719bottom-right pixel in the active pixel array. The weight
1720should be nonnegative.</p>
1721<p>If all regions have 0 weight, then no specific metering area
1722needs to be used by the HAL. If the metering region is
1723outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001724should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001725used sections in the frame metadata<wbr></wbr></p></body></html>
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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001738 <td class="entry_name"><html><body><p>android.control.captureIntent<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001739 <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>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001747 <span class="entry_type_enum_notes"><html><body><p>This request doesn't fall into the other
1748 categories. Default to preview-like
1749 behavior.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001750 </li>
1751 <li>
1752 <span class="entry_type_enum_name">PREVIEW</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001753 <span class="entry_type_enum_notes"><html><body><p>This request is for a preview-like usecase. The
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001754 precapture trigger may be used to start off a metering
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001755 w/flash sequence<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001756 </li>
1757 <li>
1758 <span class="entry_type_enum_name">STILL_CAPTURE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001759 <span class="entry_type_enum_notes"><html><body><p>This request is for a still capture-type
1760 usecase.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001761 </li>
1762 <li>
1763 <span class="entry_type_enum_name">VIDEO_RECORD</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001764 <span class="entry_type_enum_notes"><html><body><p>This request is for a video recording
1765 usecase.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001766 </li>
1767 <li>
1768 <span class="entry_type_enum_name">VIDEO_SNAPSHOT</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001769 <span class="entry_type_enum_notes"><html><body><p>This request is for a video snapshot (still
1770 image while recording video) usecase<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001771 </li>
1772 <li>
1773 <span class="entry_type_enum_name">ZERO_SHUTTER_LAG</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001774 <span class="entry_type_enum_notes"><html><body><p>This request is for a ZSL usecase; the
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001775 application will stream full-resolution images and
1776 reprocess one or several later for a final
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001777 capture<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001778 </li>
1779 </ul>
1780
1781 </td> <!-- entry_type -->
1782
1783 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001784 <html><body><p>Information to 3A routines about the purpose
1785of this capture, to help decide optimal 3A
1786strategy<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001787 </td>
1788
1789 <td class="entry_units">
1790 </td>
1791
1792 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001793 <html><body><p>all must be supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001794 </td>
1795
1796 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001797 <html><body><p>Only used if android.control.mode != OFF.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001798 </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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001810 <td class="entry_name"><html><body><p>android.control.effectMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001811 <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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001857 <html><body><p>Whether any special color effect is in use.
1858Only used if android.control.mode != OFF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001859 </td>
1860
1861 <td class="entry_units">
1862 </td>
1863
1864 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001865 <html><body><p>android.control.availableEffects<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001866 </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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001881 <td class="entry_name"><html><body><p>android.control.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001882 <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>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001890 <span class="entry_type_enum_notes"><html><body><p>Full application control of pipeline. All 3A
1891 routines are disabled, no other settings in
1892 android.control.* have any effect<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001893 </li>
1894 <li>
1895 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001896 <span class="entry_type_enum_notes"><html><body><p>Use settings for each individual 3A routine.
1897 Manual control of capture parameters is disabled. All
1898 controls in android.control.* besides sceneMode take
1899 effect<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001900 </li>
1901 <li>
1902 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001903 <span class="entry_type_enum_notes"><html><body><p>Use specific scene mode. Enabling this disables
1904 control.aeMode, control.awbMode and control.afMode
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001905 controls; the HAL must ignore those settings while
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001906 USE_SCENE_MODE is active (except for FACE_PRIORITY
1907 scene mode). Other control entries are still active.
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001908 This setting can only be used if availableSceneModes !=
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001909 UNSUPPORTED<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001910 </li>
1911 </ul>
1912
1913 </td> <!-- entry_type -->
1914
1915 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001916 <html><body><p>Overall mode of 3A control
1917routines<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001918 </td>
1919
1920 <td class="entry_units">
1921 </td>
1922
1923 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001924 <html><body><p>all must be supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001925 </td>
1926
1927 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08001928 <html><body><p>High-level 3A control. When set to OFF, all 3A control
1929by the HAL is disabled. The application must set the fields for
1930capture parameters itself.</p>
1931<p>When set to AUTO, the individual algorithm controls in
1932android.control.* are in effect, such as android.control.afMode.</p>
1933<p>When set to USE_SCENE_MODE, the individual controls in
1934android.control.* are mostly disabled, and the HAL implements
1935one of the scene mode settings (such as ACTION, SUNSET, or PARTY)
1936as it wishes. The HAL scene mode 3A settings are provided by
1937android.control.sceneModeOverrides.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001938 </td>
1939
1940 <td class="entry_tags">
1941 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001942 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001943 </ul>
1944 </td>
1945
1946 </tr> <!-- end of entry -->
1947
1948
1949 <tr class="entry" id="controls_android.control.sceneMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001950 <td class="entry_name"><html><body><p>android.control.sceneMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001951 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001952 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001953
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001954 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001955
1956 <ul class="entry_type_enum">
1957 <li>
1958 <span class="entry_type_enum_name">UNSUPPORTED</span>
1959 <span class="entry_type_enum_value">0</span>
1960 </li>
1961 <li>
1962 <span class="entry_type_enum_name">FACE_PRIORITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001963 <span class="entry_type_enum_notes"><html><body><p>if face detection support exists Use face
1964 detection data to drive 3A routines. If face detection
1965 statistics are disabled, should still operate correctly
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001966 (but not return face detection statistics to the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001967 framework).
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001968
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001969 Unlike the other scene modes, aeMode, awbMode, and afMode
1970 remain active when FACE_PRIORITY is set. This is due to
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001971 compatibility concerns with the old camera
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08001972 API<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001973 </li>
1974 <li>
1975 <span class="entry_type_enum_name">ACTION</span>
1976 <span class="entry_type_enum_optional">optional</span>
1977 </li>
1978 <li>
1979 <span class="entry_type_enum_name">PORTRAIT</span>
1980 <span class="entry_type_enum_optional">optional</span>
1981 </li>
1982 <li>
1983 <span class="entry_type_enum_name">LANDSCAPE</span>
1984 <span class="entry_type_enum_optional">optional</span>
1985 </li>
1986 <li>
1987 <span class="entry_type_enum_name">NIGHT</span>
1988 <span class="entry_type_enum_optional">optional</span>
1989 </li>
1990 <li>
1991 <span class="entry_type_enum_name">NIGHT_PORTRAIT</span>
1992 <span class="entry_type_enum_optional">optional</span>
1993 </li>
1994 <li>
1995 <span class="entry_type_enum_name">THEATRE</span>
1996 <span class="entry_type_enum_optional">optional</span>
1997 </li>
1998 <li>
1999 <span class="entry_type_enum_name">BEACH</span>
2000 <span class="entry_type_enum_optional">optional</span>
2001 </li>
2002 <li>
2003 <span class="entry_type_enum_name">SNOW</span>
2004 <span class="entry_type_enum_optional">optional</span>
2005 </li>
2006 <li>
2007 <span class="entry_type_enum_name">SUNSET</span>
2008 <span class="entry_type_enum_optional">optional</span>
2009 </li>
2010 <li>
2011 <span class="entry_type_enum_name">STEADYPHOTO</span>
2012 <span class="entry_type_enum_optional">optional</span>
2013 </li>
2014 <li>
2015 <span class="entry_type_enum_name">FIREWORKS</span>
2016 <span class="entry_type_enum_optional">optional</span>
2017 </li>
2018 <li>
2019 <span class="entry_type_enum_name">SPORTS</span>
2020 <span class="entry_type_enum_optional">optional</span>
2021 </li>
2022 <li>
2023 <span class="entry_type_enum_name">PARTY</span>
2024 <span class="entry_type_enum_optional">optional</span>
2025 </li>
2026 <li>
2027 <span class="entry_type_enum_name">CANDLELIGHT</span>
2028 <span class="entry_type_enum_optional">optional</span>
2029 </li>
2030 <li>
2031 <span class="entry_type_enum_name">BARCODE</span>
2032 <span class="entry_type_enum_optional">optional</span>
2033 </li>
2034 </ul>
2035
2036 </td> <!-- entry_type -->
2037
2038 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002039 <html><body><p>Which scene mode is active when
2040android.control.mode = SCENE_MODE<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002041 </td>
2042
2043 <td class="entry_units">
2044 </td>
2045
2046 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002047 <html><body><p>android.control.availableSceneModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002048 </td>
2049
2050 <td class="entry_notes">
2051 </td>
2052
2053 <td class="entry_tags">
2054 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002055 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002056 </ul>
2057 </td>
2058
2059 </tr> <!-- end of entry -->
2060
2061
2062 <tr class="entry" id="controls_android.control.videoStabilizationMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002063 <td class="entry_name"><html><body><p>android.control.videoStabilizationMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002064 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002065 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002066
Igor Murashkinb8dc8812013-07-17 16:29:34 -07002067 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002068
2069 <ul class="entry_type_enum">
2070 <li>
2071 <span class="entry_type_enum_name">OFF</span>
2072 </li>
2073 <li>
2074 <span class="entry_type_enum_name">ON</span>
2075 </li>
2076 </ul>
2077
2078 </td> <!-- entry_type -->
2079
2080 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002081 <html><body><p>Whether video stabilization is
2082active<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002083 </td>
2084
2085 <td class="entry_units">
2086 </td>
2087
2088 <td class="entry_range">
2089 </td>
2090
2091 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002092 <html><body><p>If enabled, video stabilization can modify the
2093android.scaler.cropRegion to keep the video stream
2094stabilized<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002095 </td>
2096
2097 <td class="entry_tags">
2098 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002099 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002100 </ul>
2101 </td>
2102
2103 </tr> <!-- end of entry -->
2104
2105
2106
2107 <!-- end of kind -->
2108 </tbody>
2109 <tr><td colspan="7" class="kind">static</td></tr>
2110
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002111 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002112 <tr>
2113 <th class="th_name">Property Name</th>
2114 <th class="th_type">Type</th>
2115 <th class="th_description">Description</th>
2116 <th class="th_units">Units</th>
2117 <th class="th_range">Range</th>
2118 <th class="th_notes">Notes</th>
2119 <th class="th_tags">Tags</th>
2120 </tr>
2121 </thead>
2122
2123 <tbody>
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134 <tr class="entry" id="static_android.control.aeAvailableAntibandingModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002135 <td class="entry_name"><html><body><p>android.control.aeAvailableAntibandingModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002136 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002137 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002138 <span class="entry_type_container">x</span>
2139
2140 <span class="entry_type_array">
2141 n
2142 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002143 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002144 <div class="entry_type_notes"><html><body><p>list of enums<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002145
2146
2147 </td> <!-- entry_type -->
2148
2149 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002150 <html><body><p>Which set of antibanding modes are
2151supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002152 </td>
2153
2154 <td class="entry_units">
2155 </td>
2156
2157 <td class="entry_range">
2158 </td>
2159
2160 <td class="entry_notes">
2161 </td>
2162
2163 <td class="entry_tags">
2164 </td>
2165
2166 </tr> <!-- end of entry -->
2167
2168
2169 <tr class="entry" id="static_android.control.aeAvailableModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002170 <td class="entry_name"><html><body><p>android.control.aeAvailableModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002171 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002172 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002173 <span class="entry_type_container">x</span>
2174
2175 <span class="entry_type_array">
2176 n
2177 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002178 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002179 <div class="entry_type_notes"><html><body><p>list of enums<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002180
2181
2182 </td> <!-- entry_type -->
2183
2184 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002185 <html><body><p>Which subset of AE modes is
2186supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002187 </td>
2188
2189 <td class="entry_units">
2190 </td>
2191
2192 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002193 <html><body><p>OFF, ON must be supported.
2194 ON_AUTO_FLASH/ON_ALWAYS_FLASH must be supported if flash
2195 unit is available<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002196 </td>
2197
2198 <td class="entry_notes">
2199 </td>
2200
2201 <td class="entry_tags">
2202 </td>
2203
2204 </tr> <!-- end of entry -->
2205
2206
2207 <tr class="entry" id="static_android.control.aeAvailableTargetFpsRanges">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002208 <td class="entry_name"><html><body><p>android.control.aeAvailableTargetFpsRanges<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002209 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002210 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002211 <span class="entry_type_container">x</span>
2212
2213 <span class="entry_type_array">
2214 2 x n
2215 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002216 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002217 <div class="entry_type_notes"><html><body><p>list of pairs of frame rates<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002218
2219
2220 </td> <!-- entry_type -->
2221
2222 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002223 <html><body><p>List of frame rate ranges supported by the
2224AE algorithm/hardware<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002225 </td>
2226
2227 <td class="entry_units">
2228 </td>
2229
2230 <td class="entry_range">
2231 </td>
2232
2233 <td class="entry_notes">
2234 </td>
2235
2236 <td class="entry_tags">
2237 </td>
2238
2239 </tr> <!-- end of entry -->
2240
2241
2242 <tr class="entry" id="static_android.control.aeCompensationRange">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002243 <td class="entry_name"><html><body><p>android.control.aeCompensationRange<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002244 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002245 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002246 <span class="entry_type_container">x</span>
2247
2248 <span class="entry_type_array">
2249 2
2250 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002251 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002252
2253
2254 </td> <!-- entry_type -->
2255
2256 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002257 <html><body><p>Maximum and minimum exposure compensation
2258setting, in counts of
2259android.control.aeCompensationStepSize<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002260 </td>
2261
2262 <td class="entry_units">
2263 </td>
2264
2265 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002266 <html><body><p>At least (-2,2)/(exp compensation step
2267 size)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002268 </td>
2269
2270 <td class="entry_notes">
2271 </td>
2272
2273 <td class="entry_tags">
2274 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002275 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002276 </ul>
2277 </td>
2278
2279 </tr> <!-- end of entry -->
2280
2281
2282 <tr class="entry" id="static_android.control.aeCompensationStep">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002283 <td class="entry_name"><html><body><p>android.control.aeCompensationStep<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002284 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002285 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002286
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002287 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002288
2289
2290 </td> <!-- entry_type -->
2291
2292 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002293 <html><body><p>Smallest step by which exposure compensation
2294can be changed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002295 </td>
2296
2297 <td class="entry_units">
2298 </td>
2299
2300 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002301
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002302 </td>
2303
2304 <td class="entry_notes">
2305 </td>
2306
2307 <td class="entry_tags">
2308 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002309 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002310 </ul>
2311 </td>
2312
2313 </tr> <!-- end of entry -->
2314
2315
2316 <tr class="entry" id="static_android.control.afAvailableModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002317 <td class="entry_name"><html><body><p>android.control.afAvailableModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002318 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002319 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002320 <span class="entry_type_container">x</span>
2321
2322 <span class="entry_type_array">
2323 n
2324 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002325 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002326 <div class="entry_type_notes"><html><body><p>List of enums<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002327
2328
2329 </td> <!-- entry_type -->
2330
2331 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002332 <html><body><p>List of AF modes that can be
2333selected<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002334 </td>
2335
2336 <td class="entry_units">
2337 </td>
2338
2339 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002340 <html><body><p>OFF must be included. AUTO must be supported if
2341 lens allows for changing focus<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002342 </td>
2343
2344 <td class="entry_notes">
2345 </td>
2346
2347 <td class="entry_tags">
2348 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002349 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002350 </ul>
2351 </td>
2352
2353 </tr> <!-- end of entry -->
2354
2355
2356 <tr class="entry" id="static_android.control.availableEffects">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002357 <td class="entry_name"><html><body><p>android.control.availableEffects<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002358 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002359 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002360 <span class="entry_type_container">x</span>
2361
2362 <span class="entry_type_array">
2363 n
2364 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002365 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002366 <div class="entry_type_notes"><html><body><p>list of enums<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002367
2368
2369 </td> <!-- entry_type -->
2370
2371 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002372 <html><body><p>what subset of the full color effect enum
2373list is supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002374 </td>
2375
2376 <td class="entry_units">
2377 </td>
2378
2379 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002380 <html><body><p>OFF must be listed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002381 </td>
2382
2383 <td class="entry_notes">
2384 </td>
2385
2386 <td class="entry_tags">
2387 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002388 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002389 </ul>
2390 </td>
2391
2392 </tr> <!-- end of entry -->
2393
2394
2395 <tr class="entry" id="static_android.control.availableSceneModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002396 <td class="entry_name"><html><body><p>android.control.availableSceneModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002397 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002398 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002399 <span class="entry_type_container">x</span>
2400
2401 <span class="entry_type_array">
2402 n
2403 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002404 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002405 <div class="entry_type_notes"><html><body><p>list of enums from android.control.sceneMode, plus UNSUPPORTED to indicate no scene modes are supported<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002406
2407
2408 </td> <!-- entry_type -->
2409
2410 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002411 <html><body><p>what subset of the scene mode enum list is
2412supported.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002413 </td>
2414
2415 <td class="entry_units">
2416 </td>
2417
2418 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002419 <html><body><p>SCENE_MODE_FACE_PRIORITY must be supported if face
2420 detection is supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002421 </td>
2422
2423 <td class="entry_notes">
2424 </td>
2425
2426 <td class="entry_tags">
2427 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002428 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002429 </ul>
2430 </td>
2431
2432 </tr> <!-- end of entry -->
2433
2434
2435 <tr class="entry" id="static_android.control.availableVideoStabilizationModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002436 <td class="entry_name"><html><body><p>android.control.availableVideoStabilizationModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002437 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002438 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002439 <span class="entry_type_container">x</span>
2440
2441 <span class="entry_type_array">
2442 n
2443 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002444 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002445 <div class="entry_type_notes"><html><body><p>List of enums.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002446
2447
2448 </td> <!-- entry_type -->
2449
2450 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002451 <html><body><p>List of video stabilization modes that can
2452be supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002453 </td>
2454
2455 <td class="entry_units">
2456 </td>
2457
2458 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002459 <html><body><p>OFF must be included<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002460 </td>
2461
2462 <td class="entry_notes">
2463 </td>
2464
2465 <td class="entry_tags">
2466 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002467 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002468 </ul>
2469 </td>
2470
2471 </tr> <!-- end of entry -->
2472
2473
2474 <tr class="entry" id="static_android.control.awbAvailableModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002475 <td class="entry_name"><html><body><p>android.control.awbAvailableModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002476 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002477 <span class="entry_type_name">byte</span>
Alex Raya4251d92013-04-30 16:43:44 -07002478 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002479
Alex Raya4251d92013-04-30 16:43:44 -07002480 <span class="entry_type_array">
2481 n
2482 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002483 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002484 <div class="entry_type_notes"><html><body><p>List of enums (android.control.awbMode)<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002485
2486
2487 </td> <!-- entry_type -->
2488
2489 <td class="entry_description">
2490 </td>
2491
2492 <td class="entry_units">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002493 </td>
2494
2495 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002496 <html><body><p>OFF, AUTO must be included<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002497 </td>
2498
2499 <td class="entry_notes">
2500 </td>
2501
2502 <td class="entry_tags">
2503 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002504 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002505 </ul>
2506 </td>
2507
2508 </tr> <!-- end of entry -->
2509
2510
2511 <tr class="entry" id="static_android.control.maxRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002512 <td class="entry_name"><html><body><p>android.control.maxRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002513 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002514 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002515
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002516 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002517
2518
2519 </td> <!-- entry_type -->
2520
2521 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002522 <html><body><p>For AE, AWB, and AF, how many individual
2523regions can be listed for metering?<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002524 </td>
2525
2526 <td class="entry_units">
2527 </td>
2528
2529 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002530 <html><body><p>&gt;= 1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002531 </td>
2532
2533 <td class="entry_notes">
2534 </td>
2535
2536 <td class="entry_tags">
2537 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002538 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002539 </ul>
2540 </td>
2541
2542 </tr> <!-- end of entry -->
2543
2544
2545 <tr class="entry" id="static_android.control.sceneModeOverrides">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002546 <td class="entry_name"><html><body><p>android.control.sceneModeOverrides<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002547 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002548 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002549 <span class="entry_type_container">x</span>
2550
2551 <span class="entry_type_array">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002552 3 x length(availableSceneModes)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002553 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002554 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002555
2556
2557 </td> <!-- entry_type -->
2558
2559 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002560 <html><body><p>List of AE, AWB, and AF modes to use for
2561each available scene mode<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002562 </td>
2563
2564 <td class="entry_units">
2565 </td>
2566
2567 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002568 <html><body><p>For each listed scene mode, lists the aeMode,
2569 awbMode, and afMode that the HAL wants to use for that
2570 scene mode.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002571
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002572 For each entry, the order is {aeMode, awbMode, afMode} in
2573 order of increasing index<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002574 </td>
2575
2576 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002577 <html><body><p>When a scene mode is enabled, the HAL is expected
2578to override aeMode, awbMode, and afMode with its
2579preferred settings for that scene mode.</p>
2580<p>To simplify communication with old camera API applications,
2581the service wants this override list in the static metadata.
2582The order of this list matches that of availableSceneModes,
2583with 3 entires for each scene mode. The overrides listed
2584for SCENE_MODE_FACE_PRIORITY are ignored, since for that
2585mode, the application-set aeMode, awbMode, and afMode are
2586used instead, like they are when android.control.mode is
2587AUTO.</p>
2588<p>It is recommended that for FACE_PRIORITY, the overrides
2589should be set to 0. As an example, if availableSceneModes is
2590{ FACE_PRIORITY, ACTION, NIGHT }, then the service expects
2591this field to have 9 entries; for example { 0 , 0, 0,
2592ON_AUTO_FLASH, AUTO, CONTINUOUS_PICTURE, ON_AUTO_FLASH,
2593INCANDESCENT, AUTO }<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002594 </td>
2595
2596 <td class="entry_tags">
2597 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002598 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002599 </ul>
2600 </td>
2601
2602 </tr> <!-- end of entry -->
2603
2604
2605
2606 <!-- end of kind -->
2607 </tbody>
2608 <tr><td colspan="7" class="kind">dynamic</td></tr>
2609
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002610 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002611 <tr>
2612 <th class="th_name">Property Name</th>
2613 <th class="th_type">Type</th>
2614 <th class="th_description">Description</th>
2615 <th class="th_units">Units</th>
2616 <th class="th_range">Range</th>
2617 <th class="th_notes">Notes</th>
2618 <th class="th_tags">Tags</th>
2619 </tr>
2620 </thead>
2621
2622 <tbody>
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633 <tr class="entry" id="dynamic_android.control.aePrecaptureId">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002634 <td class="entry_name"><html><body><p>android.control.aePrecaptureId<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002635 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002636 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002637
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002638 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002639
2640
2641 </td> <!-- entry_type -->
2642
2643 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002644 <html><body><p>The ID sent with the latest
2645CAMERA2_TRIGGER_PRECAPTURE_METERING call<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002646 </td>
2647
2648 <td class="entry_units">
2649 </td>
2650
2651 <td class="entry_range">
2652 </td>
2653
2654 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002655 <html><body><p>Must be 0 if no
2656CAMERA2_TRIGGER_PRECAPTURE_METERING trigger received yet
2657by HAL. Always updated even if AE algorithm ignores the
2658trigger<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002659 </td>
2660
2661 <td class="entry_tags">
2662 </td>
2663
2664 </tr> <!-- end of entry -->
2665
2666
2667 <tr class="entry" id="dynamic_android.control.aeRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002668 <td class="entry_name"><html><body><p>android.control.aeRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002669 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002670 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002671 <span class="entry_type_container">x</span>
2672
2673 <span class="entry_type_array">
2674 5 x area_count
2675 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002676 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002677
2678
2679 </td> <!-- entry_type -->
2680
2681 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002682 <html><body><p>List of areas to use for
2683metering<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002684 </td>
2685
2686 <td class="entry_units">
2687 </td>
2688
2689 <td class="entry_range">
2690 </td>
2691
2692 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002693 <html><body><p>Each area is a rectangle plus weight: xmin, ymin,
2694xmax, ymax, weight. The rectangle is defined inclusive of the
2695specified coordinates.</p>
2696<p>The coordinate system is based on the active pixel array,
2697with (0,0) being the top-left pixel in the active pixel array, and
2698(android.sensor.info.activeArraySize.width - 1,
2699android.sensor.info.activeArraySize.height - 1) being the
2700bottom-right pixel in the active pixel array. The weight
2701should be nonnegative.</p>
2702<p>If all regions have 0 weight, then no specific metering area
2703needs to be used by the HAL. If the metering region is
2704outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08002705should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002706used sections in the frame metadata<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002707 </td>
2708
2709 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002710 <ul class="entry_tags">
2711 <li><a href="#tag_BC">BC</a></li>
2712 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002713 </td>
2714
2715 </tr> <!-- end of entry -->
2716
2717
2718 <tr class="entry" id="dynamic_android.control.aeState">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002719 <td class="entry_name"><html><body><p>android.control.aeState<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002720 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002721 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002722
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002723 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002724
2725 <ul class="entry_type_enum">
2726 <li>
2727 <span class="entry_type_enum_name">INACTIVE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002728 <span class="entry_type_enum_notes"><html><body><p>AE is off. When a camera device is opened, it starts in
2729 this state.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002730 </li>
2731 <li>
2732 <span class="entry_type_enum_name">SEARCHING</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002733 <span class="entry_type_enum_notes"><html><body><p>AE doesn't yet have a good set of control values
2734 for the current scene<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002735 </li>
2736 <li>
2737 <span class="entry_type_enum_name">CONVERGED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002738 <span class="entry_type_enum_notes"><html><body><p>AE has a good set of control values for the
2739 current scene<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002740 </li>
2741 <li>
2742 <span class="entry_type_enum_name">LOCKED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002743 <span class="entry_type_enum_notes"><html><body><p>AE has been locked (aeMode =
2744 LOCKED)<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002745 </li>
2746 <li>
2747 <span class="entry_type_enum_name">FLASH_REQUIRED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002748 <span class="entry_type_enum_notes"><html><body><p>AE has a good set of control values, but flash
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002749 needs to be fired for good quality still
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002750 capture<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002751 </li>
2752 <li>
2753 <span class="entry_type_enum_name">PRECAPTURE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002754 <span class="entry_type_enum_notes"><html><body><p>AE has been asked to do a precapture sequence
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002755 (through the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002756 trigger_action(CAMERA2_TRIGGER_PRECAPTURE_METERING)
2757 call), and is currently executing it. Once PRECAPTURE
2758 completes, AE will transition to CONVERGED or
2759 FLASH_REQUIRED as appropriate<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002760 </li>
2761 </ul>
2762
2763 </td> <!-- entry_type -->
2764
2765 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002766 <html><body><p>Current state of AE algorithm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002767 </td>
2768
2769 <td class="entry_units">
2770 </td>
2771
2772 <td class="entry_range">
2773 </td>
2774
2775 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002776 <html><body><p>Whenever the AE algorithm state changes, a
2777MSG_AUTOEXPOSURE notification must be send if a
2778notification callback is registered.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002779 </td>
2780
2781 <td class="entry_tags">
2782 </td>
2783
2784 </tr> <!-- end of entry -->
2785
2786
2787 <tr class="entry" id="dynamic_android.control.afMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002788 <td class="entry_name"><html><body><p>android.control.afMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002789 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002790 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002791
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002792 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002793
2794 <ul class="entry_type_enum">
2795 <li>
2796 <span class="entry_type_enum_name">OFF</span>
Zhijun Hef5529232013-12-13 17:48:53 -08002797 <span class="entry_type_enum_notes"><html><body><p>The auto-focus routine does not control the lens;
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002798 android.lens.focusDistance is controlled by the
2799 application<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002800 </li>
2801 <li>
2802 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002803 <span class="entry_type_enum_notes"><html><body><p>If lens is not fixed focus.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002804
Zhijun Hef5529232013-12-13 17:48:53 -08002805 Use android.lens.info.minimumFocusDistance to determine if lens
2806 is fixed-focus. In this mode, the lens does not move unless
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002807 the autofocus trigger action is called. When that trigger
2808 is activated, AF must transition to ACTIVE_SCAN, then to
Zhijun Hef5529232013-12-13 17:48:53 -08002809 the outcome of the scan (FOCUSED or NOT_FOCUSED).
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002810
Zhijun Hef5529232013-12-13 17:48:53 -08002811 Triggering AF_CANCEL resets the lens position to default,
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002812 and sets the AF state to INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002813 </li>
2814 <li>
2815 <span class="entry_type_enum_name">MACRO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002816 <span class="entry_type_enum_notes"><html><body><p>In this mode, the lens does not move unless the
2817 autofocus trigger action is called.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002818
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002819 When that trigger is activated, AF must transition to
2820 ACTIVE_SCAN, then to the outcome of the scan (FOCUSED or
2821 NOT_FOCUSED). Triggering cancel AF resets the lens
2822 position to default, and sets the AF state to
2823 INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002824 </li>
2825 <li>
2826 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002827 <span class="entry_type_enum_notes"><html><body><p>In this mode, the AF algorithm modifies the lens
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002828 position continually to attempt to provide a
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002829 constantly-in-focus image stream.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002830
2831 The focusing behavior should be suitable for good quality
2832 video recording; typically this means slower focus
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002833 movement and no overshoots. When the AF trigger is not
2834 involved, the AF algorithm should start in INACTIVE state,
2835 and then transition into PASSIVE_SCAN and PASSIVE_FOCUSED
2836 states as appropriate. When the AF trigger is activated,
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002837 the algorithm should immediately transition into
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002838 AF_FOCUSED or AF_NOT_FOCUSED as appropriate, and lock the
2839 lens position until a cancel AF trigger is received.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002840
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002841 Once cancel is received, the algorithm should transition
2842 back to INACTIVE and resume passive scan. Note that this
2843 behavior is not identical to CONTINUOUS_PICTURE, since an
2844 ongoing PASSIVE_SCAN must immediately be
2845 canceled.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002846 </li>
2847 <li>
2848 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002849 <span class="entry_type_enum_notes"><html><body><p>In this mode, the AF algorithm modifies the lens
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002850 position continually to attempt to provide a
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002851 constantly-in-focus image stream.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002852
2853 The focusing behavior should be suitable for still image
2854 capture; typically this means focusing as fast as
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002855 possible. When the AF trigger is not involved, the AF
2856 algorithm should start in INACTIVE state, and then
2857 transition into PASSIVE_SCAN and PASSIVE_FOCUSED states as
2858 appropriate as it attempts to maintain focus. When the AF
2859 trigger is activated, the algorithm should finish its
2860 PASSIVE_SCAN if active, and then transition into
2861 AF_FOCUSED or AF_NOT_FOCUSED as appropriate, and lock the
2862 lens position until a cancel AF trigger is received.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002863
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002864 When the AF cancel trigger is activated, the algorithm
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002865 should transition back to INACTIVE and then act as if it
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002866 has just been started.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002867 </li>
2868 <li>
2869 <span class="entry_type_enum_name">EDOF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002870 <span class="entry_type_enum_notes"><html><body><p>Extended depth of field (digital focus). AF
2871 trigger is ignored, AF state should always be
2872 INACTIVE.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002873 </li>
2874 </ul>
2875
2876 </td> <!-- entry_type -->
2877
2878 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002879 <html><body><p>Whether AF is currently enabled, and what
2880mode it is set to<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002881 </td>
2882
2883 <td class="entry_units">
2884 </td>
2885
2886 <td class="entry_range">
2887 </td>
2888
2889 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08002890 <html><body><p>Only effective if android.control.mode = AUTO.</p>
2891<p>If lens is controlled by HAL auto-focus algorithm, the HAL should
2892report the current AF status in android.control.afState in
2893result metadata.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002894 </td>
2895
2896 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002897 <ul class="entry_tags">
2898 <li><a href="#tag_BC">BC</a></li>
2899 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002900 </td>
2901
2902 </tr> <!-- end of entry -->
2903
2904
2905 <tr class="entry" id="dynamic_android.control.afRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002906 <td class="entry_name"><html><body><p>android.control.afRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002907 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002908 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002909 <span class="entry_type_container">x</span>
2910
2911 <span class="entry_type_array">
2912 5 x area_count
2913 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002914 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002915
2916
2917 </td> <!-- entry_type -->
2918
2919 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002920 <html><body><p>List of areas to use for focus
2921estimation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002922 </td>
2923
2924 <td class="entry_units">
2925 </td>
2926
2927 <td class="entry_range">
2928 </td>
2929
2930 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002931 <html><body><p>Each area is a rectangle plus weight: xmin, ymin,
2932xmax, ymax, weight. The rectangle is defined inclusive of the
2933specified coordinates.</p>
2934<p>The coordinate system is based on the active pixel array,
2935with (0,0) being the top-left pixel in the active pixel array, and
2936(android.sensor.info.activeArraySize.width - 1,
2937android.sensor.info.activeArraySize.height - 1) being the
2938bottom-right pixel in the active pixel array. The weight
2939should be nonnegative.</p>
2940<p>If all regions have 0 weight, then no specific focus area
2941needs to be used by the HAL. If the focusing region is
2942outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08002943should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002944used sections in the frame metadata<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002945 </td>
2946
2947 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002948 <ul class="entry_tags">
2949 <li><a href="#tag_BC">BC</a></li>
2950 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002951 </td>
2952
2953 </tr> <!-- end of entry -->
2954
2955
2956 <tr class="entry" id="dynamic_android.control.afState">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002957 <td class="entry_name"><html><body><p>android.control.afState<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002958 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002959 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002960
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002961 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002962
2963 <ul class="entry_type_enum">
2964 <li>
2965 <span class="entry_type_enum_name">INACTIVE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002966 <span class="entry_type_enum_notes"><html><body><p>AF off or has not yet tried to scan/been asked
2967 to scan. When a camera device is opened, it starts in
2968 this state.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002969 </li>
2970 <li>
2971 <span class="entry_type_enum_name">PASSIVE_SCAN</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002972 <span class="entry_type_enum_notes"><html><body><p>if CONTINUOUS_* modes are supported. AF is
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002973 currently doing an AF scan initiated by a continuous
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002974 autofocus mode<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002975 </li>
2976 <li>
2977 <span class="entry_type_enum_name">PASSIVE_FOCUSED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002978 <span class="entry_type_enum_notes"><html><body><p>if CONTINUOUS_* modes are supported. AF currently
2979 believes it is in focus, but may restart scanning at
2980 any time.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002981 </li>
2982 <li>
2983 <span class="entry_type_enum_name">ACTIVE_SCAN</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002984 <span class="entry_type_enum_notes"><html><body><p>if AUTO or MACRO modes are supported. AF is doing
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002985 an AF scan because it was triggered by AF
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002986 trigger<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002987 </li>
2988 <li>
2989 <span class="entry_type_enum_name">FOCUSED_LOCKED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002990 <span class="entry_type_enum_notes"><html><body><p>if any AF mode besides OFF is supported. AF
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002991 believes it is focused correctly and is
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002992 locked<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002993 </li>
2994 <li>
2995 <span class="entry_type_enum_name">NOT_FOCUSED_LOCKED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002996 <span class="entry_type_enum_notes"><html><body><p>if any AF mode besides OFF is supported. AF has
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002997 failed to focus successfully and is
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08002998 locked<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002999 </li>
Eino-Ville Talvala492ba7c2013-09-20 17:24:00 -07003000 <li>
3001 <span class="entry_type_enum_name">PASSIVE_UNFOCUSED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003002 <span class="entry_type_enum_notes"><html><body><p>if CONTINUOUS_* modes are supported. AF finished a
3003 passive scan without finding focus, and may restart
3004 scanning at any time.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala492ba7c2013-09-20 17:24:00 -07003005 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003006 </ul>
3007
3008 </td> <!-- entry_type -->
3009
3010 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003011 <html><body><p>Current state of AF algorithm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003012 </td>
3013
3014 <td class="entry_units">
3015 </td>
3016
3017 <td class="entry_range">
3018 </td>
3019
3020 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003021 <html><body><p>Whenever the AF algorithm state changes, a
3022MSG_AUTOFOCUS notification must be send if a notification
3023callback is registered.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003024 </td>
3025
3026 <td class="entry_tags">
3027 </td>
3028
3029 </tr> <!-- end of entry -->
3030
3031
3032 <tr class="entry" id="dynamic_android.control.afTriggerId">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003033 <td class="entry_name"><html><body><p>android.control.afTriggerId<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003034 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003035 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003036
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003037 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003038
3039
3040 </td> <!-- entry_type -->
3041
3042 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003043 <html><body><p>The ID sent with the latest
3044CAMERA2_TRIGGER_AUTOFOCUS call<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003045 </td>
3046
3047 <td class="entry_units">
3048 </td>
3049
3050 <td class="entry_range">
3051 </td>
3052
3053 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003054 <html><body><p>Must be 0 if no CAMERA2_TRIGGER_AUTOFOCUS trigger
3055received yet by HAL. Always updated even if AF algorithm
3056ignores the trigger<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003057 </td>
3058
3059 <td class="entry_tags">
3060 </td>
3061
3062 </tr> <!-- end of entry -->
3063
3064
3065 <tr class="entry" id="dynamic_android.control.awbMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003066 <td class="entry_name"><html><body><p>android.control.awbMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003067 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003068 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003069
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003070 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003071
3072 <ul class="entry_type_enum">
3073 <li>
3074 <span class="entry_type_enum_name">OFF</span>
3075 </li>
3076 <li>
3077 <span class="entry_type_enum_name">AUTO</span>
3078 </li>
3079 <li>
3080 <span class="entry_type_enum_name">INCANDESCENT</span>
3081 </li>
3082 <li>
3083 <span class="entry_type_enum_name">FLUORESCENT</span>
3084 </li>
3085 <li>
3086 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
3087 </li>
3088 <li>
3089 <span class="entry_type_enum_name">DAYLIGHT</span>
3090 </li>
3091 <li>
3092 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
3093 </li>
3094 <li>
3095 <span class="entry_type_enum_name">TWILIGHT</span>
3096 </li>
3097 <li>
3098 <span class="entry_type_enum_name">SHADE</span>
3099 </li>
3100 </ul>
3101
3102 </td> <!-- entry_type -->
3103
3104 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003105 <html><body><p>Whether AWB is currently setting the color
3106transform fields, and what its illumination target
3107is<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003108 </td>
3109
3110 <td class="entry_units">
3111 </td>
3112
3113 <td class="entry_range">
3114 </td>
3115
3116 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08003117 <html><body><p>[BC - AWB lock,AWB modes]</p>
3118<p>Only effective if android.control.mode = AUTO.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003119 </td>
3120
3121 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003122 <ul class="entry_tags">
3123 <li><a href="#tag_BC">BC</a></li>
3124 <li><a href="#tag_AWB">AWB</a></li>
3125 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003126 </td>
3127
3128 </tr> <!-- end of entry -->
3129
3130
3131 <tr class="entry" id="dynamic_android.control.awbRegions">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003132 <td class="entry_name"><html><body><p>android.control.awbRegions<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003133 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003134 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003135 <span class="entry_type_container">x</span>
3136
3137 <span class="entry_type_array">
3138 5 x area_count
3139 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003140 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003141
3142
3143 </td> <!-- entry_type -->
3144
3145 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003146 <html><body><p>List of areas to use for illuminant
3147estimation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003148 </td>
3149
3150 <td class="entry_units">
3151 </td>
3152
3153 <td class="entry_range">
3154 </td>
3155
3156 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003157 <html><body><p>Only used in AUTO mode.</p>
3158<p>Each area is a rectangle plus weight: xmin, ymin,
3159xmax, ymax, weight. The rectangle is defined inclusive of the
3160specified coordinates.</p>
3161<p>The coordinate system is based on the active pixel array,
3162with (0,0) being the top-left pixel in the active pixel array, and
3163(android.sensor.info.activeArraySize.width - 1,
3164android.sensor.info.activeArraySize.height - 1) being the
3165bottom-right pixel in the active pixel array. The weight
3166should be nonnegative.</p>
3167<p>If all regions have 0 weight, then no specific metering area
3168needs to be used by the HAL. If the metering region is
3169outside the current android.scaler.cropRegion, the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08003170should ignore the sections outside the region and output the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003171used sections in the frame metadata<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003172 </td>
3173
3174 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003175 <ul class="entry_tags">
3176 <li><a href="#tag_BC">BC</a></li>
3177 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003178 </td>
3179
3180 </tr> <!-- end of entry -->
3181
3182
3183 <tr class="entry" id="dynamic_android.control.awbState">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003184 <td class="entry_name"><html><body><p>android.control.awbState<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003185 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003186 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003187
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003188 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003189
3190 <ul class="entry_type_enum">
3191 <li>
3192 <span class="entry_type_enum_name">INACTIVE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003193 <span class="entry_type_enum_notes"><html><body><p>AWB is not in auto mode. When a camera device is opened, it
3194 starts in this state.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003195 </li>
3196 <li>
3197 <span class="entry_type_enum_name">SEARCHING</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003198 <span class="entry_type_enum_notes"><html><body><p>AWB doesn't yet have a good set of control
3199 values for the current scene<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003200 </li>
3201 <li>
3202 <span class="entry_type_enum_name">CONVERGED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003203 <span class="entry_type_enum_notes"><html><body><p>AWB has a good set of control values for the
3204 current scene<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003205 </li>
3206 <li>
3207 <span class="entry_type_enum_name">LOCKED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003208 <span class="entry_type_enum_notes"><html><body><p>AE has been locked (aeMode =
3209 LOCKED)<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003210 </li>
3211 </ul>
3212
3213 </td> <!-- entry_type -->
3214
3215 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003216 <html><body><p>Current state of AWB algorithm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003217 </td>
3218
3219 <td class="entry_units">
3220 </td>
3221
3222 <td class="entry_range">
3223 </td>
3224
3225 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003226 <html><body><p>Whenever the AWB algorithm state changes, a
3227MSG_AUTOWHITEBALANCE notification must be send if a
3228notification callback is registered.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003229 </td>
3230
3231 <td class="entry_tags">
3232 </td>
3233
3234 </tr> <!-- end of entry -->
3235
3236
3237 <tr class="entry" id="dynamic_android.control.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003238 <td class="entry_name"><html><body><p>android.control.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003239 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003240 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003241
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003242 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003243
3244 <ul class="entry_type_enum">
3245 <li>
3246 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003247 <span class="entry_type_enum_notes"><html><body><p>Full application control of pipeline. All 3A
3248 routines are disabled, no other settings in
3249 android.control.* have any effect<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003250 </li>
3251 <li>
3252 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003253 <span class="entry_type_enum_notes"><html><body><p>Use settings for each individual 3A routine.
3254 Manual control of capture parameters is disabled. All
3255 controls in android.control.* besides sceneMode take
3256 effect<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003257 </li>
3258 <li>
3259 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003260 <span class="entry_type_enum_notes"><html><body><p>Use specific scene mode. Enabling this disables
3261 control.aeMode, control.awbMode and control.afMode
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003262 controls; the HAL must ignore those settings while
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003263 USE_SCENE_MODE is active (except for FACE_PRIORITY
3264 scene mode). Other control entries are still active.
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003265 This setting can only be used if availableSceneModes !=
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003266 UNSUPPORTED<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003267 </li>
3268 </ul>
3269
3270 </td> <!-- entry_type -->
3271
3272 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003273 <html><body><p>Overall mode of 3A control
3274routines<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003275 </td>
3276
3277 <td class="entry_units">
3278 </td>
3279
3280 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003281 <html><body><p>all must be supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003282 </td>
3283
3284 <td class="entry_notes">
Zhijun Hef5529232013-12-13 17:48:53 -08003285 <html><body><p>High-level 3A control. When set to OFF, all 3A control
3286by the HAL is disabled. The application must set the fields for
3287capture parameters itself.</p>
3288<p>When set to AUTO, the individual algorithm controls in
3289android.control.* are in effect, such as android.control.afMode.</p>
3290<p>When set to USE_SCENE_MODE, the individual controls in
3291android.control.* are mostly disabled, and the HAL implements
3292one of the scene mode settings (such as ACTION, SUNSET, or PARTY)
3293as it wishes. The HAL scene mode 3A settings are provided by
3294android.control.sceneModeOverrides.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003295 </td>
3296
3297 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003298 <ul class="entry_tags">
3299 <li><a href="#tag_BC">BC</a></li>
3300 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003301 </td>
3302
3303 </tr> <!-- end of entry -->
3304
3305
3306
3307 <!-- end of kind -->
3308 </tbody>
3309
3310 <!-- end of section -->
3311 <tr><td colspan="7" id="section_demosaic" class="section">demosaic</td></tr>
3312
3313
3314 <tr><td colspan="7" class="kind">controls</td></tr>
3315
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003316 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003317 <tr>
3318 <th class="th_name">Property Name</th>
3319 <th class="th_type">Type</th>
3320 <th class="th_description">Description</th>
3321 <th class="th_units">Units</th>
3322 <th class="th_range">Range</th>
3323 <th class="th_notes">Notes</th>
3324 <th class="th_tags">Tags</th>
3325 </tr>
3326 </thead>
3327
3328 <tbody>
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339 <tr class="entry" id="controls_android.demosaic.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003340 <td class="entry_name"><html><body><p>android.demosaic.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003341 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003342 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003343
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003344 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003345
3346 <ul class="entry_type_enum">
3347 <li>
3348 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003349 <span class="entry_type_enum_notes"><html><body><p>Minimal or no slowdown of frame rate compared to
3350 Bayer RAW output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003351 </li>
3352 <li>
3353 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003354 <span class="entry_type_enum_notes"><html><body><p>High-quality may reduce output frame
3355 rate<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003356 </li>
3357 </ul>
3358
3359 </td> <!-- entry_type -->
3360
3361 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003362 <html><body><p>Controls the quality of the demosaicing
3363processing<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003364 </td>
3365
3366 <td class="entry_units">
3367 </td>
3368
3369 <td class="entry_range">
3370 </td>
3371
3372 <td class="entry_notes">
3373 </td>
3374
3375 <td class="entry_tags">
3376 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003377 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003378 </ul>
3379 </td>
3380
3381 </tr> <!-- end of entry -->
3382
3383
3384
3385 <!-- end of kind -->
3386 </tbody>
3387
3388 <!-- end of section -->
3389 <tr><td colspan="7" id="section_edge" class="section">edge</td></tr>
3390
3391
3392 <tr><td colspan="7" class="kind">controls</td></tr>
3393
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003394 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003395 <tr>
3396 <th class="th_name">Property Name</th>
3397 <th class="th_type">Type</th>
3398 <th class="th_description">Description</th>
3399 <th class="th_units">Units</th>
3400 <th class="th_range">Range</th>
3401 <th class="th_notes">Notes</th>
3402 <th class="th_tags">Tags</th>
3403 </tr>
3404 </thead>
3405
3406 <tbody>
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417 <tr class="entry" id="controls_android.edge.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003418 <td class="entry_name"><html><body><p>android.edge.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003419 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003420 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003421
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003422 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003423
3424 <ul class="entry_type_enum">
3425 <li>
3426 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003427 <span class="entry_type_enum_notes"><html><body><p>No edge enhancement is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003428 </li>
3429 <li>
3430 <span class="entry_type_enum_name">FAST</span>
Zhijun Heb1c5bab2013-12-16 15:08:14 -08003431 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to sensor
3432 output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003433 </li>
3434 <li>
3435 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003436 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
3437 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003438 </li>
3439 </ul>
3440
3441 </td> <!-- entry_type -->
3442
3443 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003444 <html><body><p>Operation mode for edge
3445enhancement<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003446 </td>
3447
3448 <td class="entry_units">
3449 </td>
3450
3451 <td class="entry_range">
3452 </td>
3453
3454 <td class="entry_notes">
Zhijun Heb1c5bab2013-12-16 15:08:14 -08003455 <html><body><p>Edge/sharpness/detail enhancement. OFF means no
3456enhancement will be applied by the HAL.</p>
3457<p>FAST/HIGH_QUALITY both mean HAL-determined enhancement
3458will be applied. HIGH_QUALITY mode indicates that the
3459HAL should use the highest-quality enhancement algorithms,
3460even if it slows down capture rate. FAST means the HAL should
3461not slow down capture rate when applying edge enhancement.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003462 </td>
3463
3464 <td class="entry_tags">
3465 </td>
3466
3467 </tr> <!-- end of entry -->
3468
3469
3470 <tr class="entry" id="controls_android.edge.strength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003471 <td class="entry_name"><html><body><p>android.edge.strength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003472 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003473 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003474
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003475 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003476
3477
3478 </td> <!-- entry_type -->
3479
3480 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003481 <html><body><p>Control the amount of edge enhancement
3482applied to the images<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003483 </td>
3484
3485 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003486 <html><body><p>1-10; 10 is maximum sharpening<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003487 </td>
3488
3489 <td class="entry_range">
3490 </td>
3491
3492 <td class="entry_notes">
3493 </td>
3494
3495 <td class="entry_tags">
3496 </td>
3497
3498 </tr> <!-- end of entry -->
3499
3500
3501
3502 <!-- end of kind -->
3503 </tbody>
3504 <tr><td colspan="7" class="kind">dynamic</td></tr>
3505
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003506 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003507 <tr>
3508 <th class="th_name">Property Name</th>
3509 <th class="th_type">Type</th>
3510 <th class="th_description">Description</th>
3511 <th class="th_units">Units</th>
3512 <th class="th_range">Range</th>
3513 <th class="th_notes">Notes</th>
3514 <th class="th_tags">Tags</th>
3515 </tr>
3516 </thead>
3517
3518 <tbody>
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529 <tr class="entry" id="dynamic_android.edge.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003530 <td class="entry_name"><html><body><p>android.edge.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003531 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003532 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003533
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003534 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003535
3536 <ul class="entry_type_enum">
3537 <li>
3538 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003539 <span class="entry_type_enum_notes"><html><body><p>No edge enhancement is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003540 </li>
3541 <li>
3542 <span class="entry_type_enum_name">FAST</span>
Zhijun Heb1c5bab2013-12-16 15:08:14 -08003543 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to sensor
3544 output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003545 </li>
3546 <li>
3547 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003548 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
3549 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003550 </li>
3551 </ul>
3552
3553 </td> <!-- entry_type -->
3554
3555 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003556 <html><body><p>Operation mode for edge
3557enhancement<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003558 </td>
3559
3560 <td class="entry_units">
3561 </td>
3562
3563 <td class="entry_range">
3564 </td>
3565
3566 <td class="entry_notes">
Zhijun Heb1c5bab2013-12-16 15:08:14 -08003567 <html><body><p>Edge/sharpness/detail enhancement. OFF means no
3568enhancement will be applied by the HAL.</p>
3569<p>FAST/HIGH_QUALITY both mean HAL-determined enhancement
3570will be applied. HIGH_QUALITY mode indicates that the
3571HAL should use the highest-quality enhancement algorithms,
3572even if it slows down capture rate. FAST means the HAL should
3573not slow down capture rate when applying edge enhancement.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003574 </td>
3575
3576 <td class="entry_tags">
3577 </td>
3578
3579 </tr> <!-- end of entry -->
3580
3581
3582
3583 <!-- end of kind -->
3584 </tbody>
3585
3586 <!-- end of section -->
3587 <tr><td colspan="7" id="section_flash" class="section">flash</td></tr>
3588
3589
3590 <tr><td colspan="7" class="kind">controls</td></tr>
3591
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003592 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003593 <tr>
3594 <th class="th_name">Property Name</th>
3595 <th class="th_type">Type</th>
3596 <th class="th_description">Description</th>
3597 <th class="th_units">Units</th>
3598 <th class="th_range">Range</th>
3599 <th class="th_notes">Notes</th>
3600 <th class="th_tags">Tags</th>
3601 </tr>
3602 </thead>
3603
3604 <tbody>
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615 <tr class="entry" id="controls_android.flash.firingPower">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003616 <td class="entry_name"><html><body><p>android.flash.firingPower<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003617 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003618 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003619
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003620 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003621
3622
3623 </td> <!-- entry_type -->
3624
3625 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003626 <html><body><p>Power for flash firing/torch<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003627 </td>
3628
3629 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003630 <html><body><p>10 is max power; 0 is no flash. Linear<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003631 </td>
3632
3633 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003634 <html><body><p>0 - 10<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003635 </td>
3636
3637 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003638 <html><body><p>Power for snapshot may use a different scale than
3639for torch mode. Only one entry for torch mode will be
3640used<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003641 </td>
3642
3643 <td class="entry_tags">
3644 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003645 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003646 </ul>
3647 </td>
3648
3649 </tr> <!-- end of entry -->
3650
3651
3652 <tr class="entry" id="controls_android.flash.firingTime">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003653 <td class="entry_name"><html><body><p>android.flash.firingTime<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003654 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003655 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003656
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003657 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003658
3659
3660 </td> <!-- entry_type -->
3661
3662 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003663 <html><body><p>Firing time of flash relative to start of
3664exposure<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003665 </td>
3666
3667 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003668 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003669 </td>
3670
3671 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003672 <html><body><p>0-(exposure time-flash duration)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003673 </td>
3674
3675 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003676 <html><body><p>Clamped to (0, exposure time - flash
3677duration).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003678 </td>
3679
3680 <td class="entry_tags">
3681 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003682 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003683 </ul>
3684 </td>
3685
3686 </tr> <!-- end of entry -->
3687
3688
3689 <tr class="entry" id="controls_android.flash.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003690 <td class="entry_name"><html><body><p>android.flash.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003691 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003692 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003693
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003694 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003695
3696 <ul class="entry_type_enum">
3697 <li>
3698 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003699 <span class="entry_type_enum_notes"><html><body><p>Do not fire the flash for this
3700 capture<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003701 </li>
3702 <li>
3703 <span class="entry_type_enum_name">SINGLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003704 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Fire flash
3705 for this capture based on firingPower,
3706 firingTime.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003707 </li>
3708 <li>
3709 <span class="entry_type_enum_name">TORCH</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003710 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Flash
3711 continuously on, power set by
3712 firingPower<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003713 </li>
3714 </ul>
3715
3716 </td> <!-- entry_type -->
3717
3718 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003719 <html><body><p>Select flash operation mode<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003720 </td>
3721
3722 <td class="entry_units">
3723 </td>
3724
3725 <td class="entry_range">
3726 </td>
3727
3728 <td class="entry_notes">
3729 </td>
3730
3731 <td class="entry_tags">
3732 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003733 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003734 </ul>
3735 </td>
3736
3737 </tr> <!-- end of entry -->
3738
3739
3740
3741 <!-- end of kind -->
3742 </tbody>
3743 <tr><td colspan="7" class="kind">static</td></tr>
3744
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003745 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003746 <tr>
3747 <th class="th_name">Property Name</th>
3748 <th class="th_type">Type</th>
3749 <th class="th_description">Description</th>
3750 <th class="th_units">Units</th>
3751 <th class="th_range">Range</th>
3752 <th class="th_notes">Notes</th>
3753 <th class="th_tags">Tags</th>
3754 </tr>
3755 </thead>
3756
3757 <tbody>
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770 <tr class="entry" id="static_android.flash.info.available">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003771 <td class="entry_name"><html><body><p>android.flash.info.available<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003772 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003773 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003774
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003775 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003776
3777
3778 </td> <!-- entry_type -->
3779
3780 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003781 <html><body><p>Whether this camera has a
3782flash<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003783 </td>
3784
3785 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003786 <html><body><p>boolean (0 = false, otherwise true)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003787 </td>
3788
3789 <td class="entry_range">
3790 </td>
3791
3792 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003793 <html><body><p>If no flash, none of the flash controls do
3794anything. All other metadata should return 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003795 </td>
3796
3797 <td class="entry_tags">
3798 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003799 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003800 </ul>
3801 </td>
3802
3803 </tr> <!-- end of entry -->
3804
3805
3806 <tr class="entry" id="static_android.flash.info.chargeDuration">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003807 <td class="entry_name"><html><body><p>android.flash.info.chargeDuration<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003808 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003809 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003810
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003811 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003812
3813
3814 </td> <!-- entry_type -->
3815
3816 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003817 <html><body><p>Time taken before flash can fire
3818again<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003819 </td>
3820
3821 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003822 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003823 </td>
3824
3825 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003826 <html><body><p>0-1e9<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003827 </td>
3828
3829 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003830 <html><body><p>1 second too long/too short for recharge? Should
3831this be power-dependent?<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003832 </td>
3833
3834 <td class="entry_tags">
3835 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003836 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003837 </ul>
3838 </td>
3839
3840 </tr> <!-- end of entry -->
3841
3842
3843
3844
3845
3846 <tr class="entry" id="static_android.flash.colorTemperature">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003847 <td class="entry_name"><html><body><p>android.flash.colorTemperature<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003848 <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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003857 <html><body><p>The x,y whitepoint of the
3858flash<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003859 </td>
3860
3861 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003862 <html><body><p>pair of floats<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003863 </td>
3864
3865 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003866 <html><body><p>0-1 for both<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003867 </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 <tr class="entry" id="static_android.flash.maxEnergy">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003882 <td class="entry_name"><html><body><p>android.flash.maxEnergy<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003883 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003884 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003885
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003886 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003887
3888
3889 </td> <!-- entry_type -->
3890
3891 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003892 <html><body><p>Max energy output of the flash for a full
3893power single flash<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003894 </td>
3895
3896 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003897 <html><body><p>lumen-seconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003898 </td>
3899
3900 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003901 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003902 </td>
3903
3904 <td class="entry_notes">
3905 </td>
3906
3907 <td class="entry_tags">
3908 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003909 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003910 </ul>
3911 </td>
3912
3913 </tr> <!-- end of entry -->
3914
3915
3916
3917 <!-- end of kind -->
3918 </tbody>
3919 <tr><td colspan="7" class="kind">dynamic</td></tr>
3920
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003921 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003922 <tr>
3923 <th class="th_name">Property Name</th>
3924 <th class="th_type">Type</th>
3925 <th class="th_description">Description</th>
3926 <th class="th_units">Units</th>
3927 <th class="th_range">Range</th>
3928 <th class="th_notes">Notes</th>
3929 <th class="th_tags">Tags</th>
3930 </tr>
3931 </thead>
3932
3933 <tbody>
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944 <tr class="entry" id="dynamic_android.flash.firingPower">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003945 <td class="entry_name"><html><body><p>android.flash.firingPower<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003946 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003947 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003948
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003949 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003950
3951
3952 </td> <!-- entry_type -->
3953
3954 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003955 <html><body><p>Power for flash firing/torch<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003956 </td>
3957
3958 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003959 <html><body><p>10 is max power; 0 is no flash. Linear<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003960 </td>
3961
3962 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003963 <html><body><p>0 - 10<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003964 </td>
3965
3966 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003967 <html><body><p>Power for snapshot may use a different scale than
3968for torch mode. Only one entry for torch mode will be
3969used<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003970 </td>
3971
3972 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003973 <ul class="entry_tags">
3974 <li><a href="#tag_V1">V1</a></li>
3975 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003976 </td>
3977
3978 </tr> <!-- end of entry -->
3979
3980
3981 <tr class="entry" id="dynamic_android.flash.firingTime">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003982 <td class="entry_name"><html><body><p>android.flash.firingTime<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003983 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003984 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003985
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003986 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003987
3988
3989 </td> <!-- entry_type -->
3990
3991 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003992 <html><body><p>Firing time of flash relative to start of
3993exposure<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003994 </td>
3995
3996 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08003997 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003998 </td>
3999
4000 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004001 <html><body><p>0-(exposure time-flash duration)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004002 </td>
4003
4004 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004005 <html><body><p>Clamped to (0, exposure time - flash
4006duration).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004007 </td>
4008
4009 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004010 <ul class="entry_tags">
4011 <li><a href="#tag_V1">V1</a></li>
4012 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004013 </td>
4014
4015 </tr> <!-- end of entry -->
4016
4017
4018 <tr class="entry" id="dynamic_android.flash.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004019 <td class="entry_name"><html><body><p>android.flash.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004020 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004021 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004022
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004023 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004024
4025 <ul class="entry_type_enum">
4026 <li>
4027 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004028 <span class="entry_type_enum_notes"><html><body><p>Do not fire the flash for this
4029 capture<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004030 </li>
4031 <li>
4032 <span class="entry_type_enum_name">SINGLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004033 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Fire flash
4034 for this capture based on firingPower,
4035 firingTime.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004036 </li>
4037 <li>
4038 <span class="entry_type_enum_name">TORCH</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004039 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Flash
4040 continuously on, power set by
4041 firingPower<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004042 </li>
4043 </ul>
4044
4045 </td> <!-- entry_type -->
4046
4047 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004048 <html><body><p>Select flash operation mode<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004049 </td>
4050
4051 <td class="entry_units">
4052 </td>
4053
4054 <td class="entry_range">
4055 </td>
4056
4057 <td class="entry_notes">
4058 </td>
4059
4060 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004061 <ul class="entry_tags">
4062 <li><a href="#tag_BC">BC</a></li>
4063 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004064 </td>
4065
4066 </tr> <!-- end of entry -->
4067
4068
4069 <tr class="entry" id="dynamic_android.flash.state">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004070 <td class="entry_name"><html><body><p>android.flash.state<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004071 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004072 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004073
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004074 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004075
4076 <ul class="entry_type_enum">
4077 <li>
4078 <span class="entry_type_enum_name">UNAVAILABLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004079 <span class="entry_type_enum_notes"><html><body><p>No flash on camera<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004080 </li>
4081 <li>
4082 <span class="entry_type_enum_name">CHARGING</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004083 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Flash is
4084 charging and cannot be fired<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004085 </li>
4086 <li>
4087 <span class="entry_type_enum_name">READY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004088 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Flash is
4089 ready to fire<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004090 </li>
4091 <li>
4092 <span class="entry_type_enum_name">FIRED</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004093 <span class="entry_type_enum_notes"><html><body><p>if android.flash.available is true Flash fired
4094 for this capture<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004095 </li>
4096 </ul>
4097
4098 </td> <!-- entry_type -->
4099
4100 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004101 <html><body><p>Current state of the flash
4102unit<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004103 </td>
4104
4105 <td class="entry_units">
4106 </td>
4107
4108 <td class="entry_range">
4109 </td>
4110
4111 <td class="entry_notes">
4112 </td>
4113
4114 <td class="entry_tags">
4115 </td>
4116
4117 </tr> <!-- end of entry -->
4118
4119
4120
4121 <!-- end of kind -->
4122 </tbody>
4123
4124 <!-- end of section -->
4125 <tr><td colspan="7" id="section_geometric" class="section">geometric</td></tr>
4126
4127
4128 <tr><td colspan="7" class="kind">controls</td></tr>
4129
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004130 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004131 <tr>
4132 <th class="th_name">Property Name</th>
4133 <th class="th_type">Type</th>
4134 <th class="th_description">Description</th>
4135 <th class="th_units">Units</th>
4136 <th class="th_range">Range</th>
4137 <th class="th_notes">Notes</th>
4138 <th class="th_tags">Tags</th>
4139 </tr>
4140 </thead>
4141
4142 <tbody>
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153 <tr class="entry" id="controls_android.geometric.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004154 <td class="entry_name"><html><body><p>android.geometric.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004155 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004156 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004157
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004158 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004159
4160 <ul class="entry_type_enum">
4161 <li>
4162 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004163 <span class="entry_type_enum_notes"><html><body><p>No geometric correction is
4164 applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004165 </li>
4166 <li>
4167 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004168 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
4169 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004170 </li>
4171 <li>
4172 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004173 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
4174 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004175 </li>
4176 </ul>
4177
4178 </td> <!-- entry_type -->
4179
4180 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004181 <html><body><p>Operating mode of geometric
4182correction<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004183 </td>
4184
4185 <td class="entry_units">
4186 </td>
4187
4188 <td class="entry_range">
4189 </td>
4190
4191 <td class="entry_notes">
4192 </td>
4193
4194 <td class="entry_tags">
4195 </td>
4196
4197 </tr> <!-- end of entry -->
4198
4199
4200 <tr class="entry" id="controls_android.geometric.strength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004201 <td class="entry_name"><html><body><p>android.geometric.strength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004202 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004203 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004204
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004205 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004206
4207
4208 </td> <!-- entry_type -->
4209
4210 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004211 <html><body><p>Control the amount of shading correction
4212applied to the images<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004213 </td>
4214
4215 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004216 <html><body><p>unitless: 1-10; 10 is full shading
4217 compensation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004218 </td>
4219
4220 <td class="entry_range">
4221 </td>
4222
4223 <td class="entry_notes">
4224 </td>
4225
4226 <td class="entry_tags">
4227 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004228 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004229 </ul>
4230 </td>
4231
4232 </tr> <!-- end of entry -->
4233
4234
4235
4236 <!-- end of kind -->
4237 </tbody>
4238
4239 <!-- end of section -->
4240 <tr><td colspan="7" id="section_hotPixel" class="section">hotPixel</td></tr>
4241
4242
4243 <tr><td colspan="7" class="kind">controls</td></tr>
4244
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004245 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004246 <tr>
4247 <th class="th_name">Property Name</th>
4248 <th class="th_type">Type</th>
4249 <th class="th_description">Description</th>
4250 <th class="th_units">Units</th>
4251 <th class="th_range">Range</th>
4252 <th class="th_notes">Notes</th>
4253 <th class="th_tags">Tags</th>
4254 </tr>
4255 </thead>
4256
4257 <tbody>
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268 <tr class="entry" id="controls_android.hotPixel.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004269 <td class="entry_name"><html><body><p>android.hotPixel.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004270 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004271 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004272
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004273 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004274
4275 <ul class="entry_type_enum">
4276 <li>
4277 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004278 <span class="entry_type_enum_notes"><html><body><p>No hot pixel correction can be
4279 applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004280 </li>
4281 <li>
4282 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004283 <span class="entry_type_enum_notes"><html><body><p>Frame rate must not be reduced compared to raw
4284 Bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004285 </li>
4286 <li>
4287 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004288 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
4289 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004290 </li>
4291 </ul>
4292
4293 </td> <!-- entry_type -->
4294
4295 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004296 <html><body><p>Set operational mode for hot pixel
4297correction<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004298 </td>
4299
4300 <td class="entry_units">
4301 </td>
4302
4303 <td class="entry_range">
4304 </td>
4305
4306 <td class="entry_notes">
4307 </td>
4308
4309 <td class="entry_tags">
4310 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004311 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004312 </ul>
4313 </td>
4314
4315 </tr> <!-- end of entry -->
4316
4317
4318
4319 <!-- end of kind -->
4320 </tbody>
4321 <tr><td colspan="7" class="kind">static</td></tr>
4322
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004323 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004324 <tr>
4325 <th class="th_name">Property Name</th>
4326 <th class="th_type">Type</th>
4327 <th class="th_description">Description</th>
4328 <th class="th_units">Units</th>
4329 <th class="th_range">Range</th>
4330 <th class="th_notes">Notes</th>
4331 <th class="th_tags">Tags</th>
4332 </tr>
4333 </thead>
4334
4335 <tbody>
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348 <tr class="entry" id="static_android.hotPixel.info.map">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004349 <td class="entry_name"><html><body><p>android.hotPixel.info.map<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004350 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004351 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004352 <span class="entry_type_container">x</span>
4353
4354 <span class="entry_type_array">
4355 2 x n
4356 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004357 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004358 <div class="entry_type_notes"><html><body><p>list of coordinates based on android.sensor.pixelArraySize<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004359
4360
4361 </td> <!-- entry_type -->
4362
4363 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004364 <html><body><p>Location of hot/defective pixels on
4365sensor<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004366 </td>
4367
4368 <td class="entry_units">
4369 </td>
4370
4371 <td class="entry_range">
4372 </td>
4373
4374 <td class="entry_notes">
4375 </td>
4376
4377 <td class="entry_tags">
4378 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004379 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004380 </ul>
4381 </td>
4382
4383 </tr> <!-- end of entry -->
4384
4385
4386
4387
4388
4389
4390 <!-- end of kind -->
4391 </tbody>
4392 <tr><td colspan="7" class="kind">dynamic</td></tr>
4393
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004394 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004395 <tr>
4396 <th class="th_name">Property Name</th>
4397 <th class="th_type">Type</th>
4398 <th class="th_description">Description</th>
4399 <th class="th_units">Units</th>
4400 <th class="th_range">Range</th>
4401 <th class="th_notes">Notes</th>
4402 <th class="th_tags">Tags</th>
4403 </tr>
4404 </thead>
4405
4406 <tbody>
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417 <tr class="entry" id="dynamic_android.hotPixel.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004418 <td class="entry_name"><html><body><p>android.hotPixel.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004419 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004420 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004421
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004422 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004423
4424 <ul class="entry_type_enum">
4425 <li>
4426 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004427 <span class="entry_type_enum_notes"><html><body><p>No hot pixel correction can be
4428 applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004429 </li>
4430 <li>
4431 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004432 <span class="entry_type_enum_notes"><html><body><p>Frame rate must not be reduced compared to raw
4433 Bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004434 </li>
4435 <li>
4436 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004437 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
4438 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004439 </li>
4440 </ul>
4441
4442 </td> <!-- entry_type -->
4443
4444 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004445 <html><body><p>Set operational mode for hot pixel
4446correction<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004447 </td>
4448
4449 <td class="entry_units">
4450 </td>
4451
4452 <td class="entry_range">
4453 </td>
4454
4455 <td class="entry_notes">
4456 </td>
4457
4458 <td class="entry_tags">
4459 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004460 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004461 </ul>
4462 </td>
4463
4464 </tr> <!-- end of entry -->
4465
4466
4467
4468 <!-- end of kind -->
4469 </tbody>
4470
4471 <!-- end of section -->
4472 <tr><td colspan="7" id="section_jpeg" class="section">jpeg</td></tr>
4473
4474
4475 <tr><td colspan="7" class="kind">controls</td></tr>
4476
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004477 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004478 <tr>
4479 <th class="th_name">Property Name</th>
4480 <th class="th_type">Type</th>
4481 <th class="th_description">Description</th>
4482 <th class="th_units">Units</th>
4483 <th class="th_range">Range</th>
4484 <th class="th_notes">Notes</th>
4485 <th class="th_tags">Tags</th>
4486 </tr>
4487 </thead>
4488
4489 <tbody>
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500 <tr class="entry" id="controls_android.jpeg.gpsCoordinates">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004501 <td class="entry_name"><html><body><p>android.jpeg.gpsCoordinates<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004502 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004503 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004504 <span class="entry_type_container">x</span>
4505
4506 <span class="entry_type_array">
4507 3
4508 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004509 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004510 <div class="entry_type_notes"><html><body><p>latitude, longitude, altitude. First two in degrees, the third in meters<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004511
4512
4513 </td> <!-- entry_type -->
4514
4515 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004516 <html><body><p>GPS coordinates to include in output JPEG
4517EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004518 </td>
4519
4520 <td class="entry_units">
4521 </td>
4522
4523 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004524 <html><body><p>(-180 - 180], [-90,90], [-inf, inf]<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004525 </td>
4526
4527 <td class="entry_notes">
4528 </td>
4529
4530 <td class="entry_tags">
4531 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004532 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004533 </ul>
4534 </td>
4535
4536 </tr> <!-- end of entry -->
4537
4538
4539 <tr class="entry" id="controls_android.jpeg.gpsProcessingMethod">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004540 <td class="entry_name"><html><body><p>android.jpeg.gpsProcessingMethod<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004541 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004542 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004543
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004544 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004545
4546
4547 </td> <!-- entry_type -->
4548
4549 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004550 <html><body><p>32 characters describing GPS algorithm to
4551include in EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004552 </td>
4553
4554 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004555 <html><body><p>UTF-8 null-terminated string<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004556 </td>
4557
4558 <td class="entry_range">
4559 </td>
4560
4561 <td class="entry_notes">
4562 </td>
4563
4564 <td class="entry_tags">
4565 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004566 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004567 </ul>
4568 </td>
4569
4570 </tr> <!-- end of entry -->
4571
4572
4573 <tr class="entry" id="controls_android.jpeg.gpsTimestamp">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004574 <td class="entry_name"><html><body><p>android.jpeg.gpsTimestamp<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004575 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004576 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004577
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004578 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004579
4580
4581 </td> <!-- entry_type -->
4582
4583 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004584 <html><body><p>Time GPS fix was made to include in
4585EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004586 </td>
4587
4588 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004589 <html><body><p>UTC in seconds since January 1, 1970<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004590 </td>
4591
4592 <td class="entry_range">
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.orientation">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004608 <td class="entry_name"><html><body><p>android.jpeg.orientation<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004609 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004610 <span class="entry_type_name">int32</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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004618 <html><body><p>Orientation of JPEG image to
4619write<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004620 </td>
4621
4622 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004623 <html><body><p>Degrees in multiples of 90<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004624 </td>
4625
4626 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004627 <html><body><p>0, 90, 180, 270<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004628 </td>
4629
4630 <td class="entry_notes">
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.quality">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004643 <td class="entry_name"><html><body><p>android.jpeg.quality<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004644 <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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004653 <html><body><p>Compression quality of the final JPEG
4654image<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004655 </td>
4656
4657 <td class="entry_units">
4658 </td>
4659
4660 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004661 <html><body><p>1-100; larger is higher quality<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004662 </td>
4663
4664 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004665 <html><body><p>85-95 is typical usage range<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004666 </td>
4667
4668 <td class="entry_tags">
4669 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004670 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004671 </ul>
4672 </td>
4673
4674 </tr> <!-- end of entry -->
4675
4676
4677 <tr class="entry" id="controls_android.jpeg.thumbnailQuality">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004678 <td class="entry_name"><html><body><p>android.jpeg.thumbnailQuality<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004679 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004680 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004681
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004682 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004683
4684
4685 </td> <!-- entry_type -->
4686
4687 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004688 <html><body><p>Compression quality of JPEG
4689thumbnail<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004690 </td>
4691
4692 <td class="entry_units">
4693 </td>
4694
4695 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004696 <html><body><p>1-100; larger is higher quality<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004697 </td>
4698
4699 <td class="entry_notes">
4700 </td>
4701
4702 <td class="entry_tags">
4703 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004704 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004705 </ul>
4706 </td>
4707
4708 </tr> <!-- end of entry -->
4709
4710
4711 <tr class="entry" id="controls_android.jpeg.thumbnailSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004712 <td class="entry_name"><html><body><p>android.jpeg.thumbnailSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004713 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004714 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004715 <span class="entry_type_container">x</span>
4716
4717 <span class="entry_type_array">
4718 2
4719 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004720 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004721
4722
4723 </td> <!-- entry_type -->
4724
4725 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004726 <html><body><p>Resolution of embedded JPEG
4727thumbnail<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004728 </td>
4729
4730 <td class="entry_units">
4731 </td>
4732
4733 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004734 <html><body><p>from android.jpeg.availableThumbnailSizes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004735 </td>
4736
4737 <td class="entry_notes">
4738 </td>
4739
4740 <td class="entry_tags">
4741 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004742 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004743 </ul>
4744 </td>
4745
4746 </tr> <!-- end of entry -->
4747
4748
4749
4750 <!-- end of kind -->
4751 </tbody>
4752 <tr><td colspan="7" class="kind">static</td></tr>
4753
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004754 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004755 <tr>
4756 <th class="th_name">Property Name</th>
4757 <th class="th_type">Type</th>
4758 <th class="th_description">Description</th>
4759 <th class="th_units">Units</th>
4760 <th class="th_range">Range</th>
4761 <th class="th_notes">Notes</th>
4762 <th class="th_tags">Tags</th>
4763 </tr>
4764 </thead>
4765
4766 <tbody>
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777 <tr class="entry" id="static_android.jpeg.availableThumbnailSizes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004778 <td class="entry_name"><html><body><p>android.jpeg.availableThumbnailSizes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004779 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004780 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004781 <span class="entry_type_container">x</span>
4782
4783 <span class="entry_type_array">
4784 2 x n
4785 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004786 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004787 <div class="entry_type_notes"><html><body><p>list of resolution pairs<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004788
4789
4790 </td> <!-- entry_type -->
4791
4792 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004793 <html><body><p>Supported resolutions for the JPEG
4794thumbnail<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004795 </td>
4796
4797 <td class="entry_units">
4798 </td>
4799
4800 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004801 <html><body><p>Must include at least one valid resolution, plus
4802 (0,0) for no thumbnail generation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004803 </td>
4804
4805 <td class="entry_notes">
4806 </td>
4807
4808 <td class="entry_tags">
4809 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004810 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004811 </ul>
4812 </td>
4813
4814 </tr> <!-- end of entry -->
4815
4816
4817 <tr class="entry" id="static_android.jpeg.maxSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004818 <td class="entry_name"><html><body><p>android.jpeg.maxSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004819 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004820 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004821
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004822 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004823
4824
4825 </td> <!-- entry_type -->
4826
4827 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004828 <html><body><p>Maximum size in bytes for the compressed
4829JPEG buffer<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004830 </td>
4831
4832 <td class="entry_units">
4833 </td>
4834
4835 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004836 <html><body><p>Must be large enough to fit any JPEG produced by
4837 the camera<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004838 </td>
4839
4840 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004841 <html><body><p>This is used for sizing the gralloc buffers for
4842JPEG<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004843 </td>
4844
4845 <td class="entry_tags">
4846 </td>
4847
4848 </tr> <!-- end of entry -->
4849
4850
4851
4852 <!-- end of kind -->
4853 </tbody>
4854 <tr><td colspan="7" class="kind">dynamic</td></tr>
4855
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004856 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004857 <tr>
4858 <th class="th_name">Property Name</th>
4859 <th class="th_type">Type</th>
4860 <th class="th_description">Description</th>
4861 <th class="th_units">Units</th>
4862 <th class="th_range">Range</th>
4863 <th class="th_notes">Notes</th>
4864 <th class="th_tags">Tags</th>
4865 </tr>
4866 </thead>
4867
4868 <tbody>
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879 <tr class="entry" id="dynamic_android.jpeg.gpsCoordinates">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004880 <td class="entry_name"><html><body><p>android.jpeg.gpsCoordinates<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004881 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004882 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004883 <span class="entry_type_container">x</span>
4884
4885 <span class="entry_type_array">
4886 3
4887 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004888 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004889 <div class="entry_type_notes"><html><body><p>latitude, longitude, altitude. First two in degrees, the third in meters<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004890
4891
4892 </td> <!-- entry_type -->
4893
4894 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004895 <html><body><p>GPS coordinates to include in output JPEG
4896EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004897 </td>
4898
4899 <td class="entry_units">
4900 </td>
4901
4902 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004903 <html><body><p>(-180 - 180], [-90,90], [-inf, inf]<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004904 </td>
4905
4906 <td class="entry_notes">
4907 </td>
4908
4909 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004910 <ul class="entry_tags">
4911 <li><a href="#tag_BC">BC</a></li>
4912 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004913 </td>
4914
4915 </tr> <!-- end of entry -->
4916
4917
4918 <tr class="entry" id="dynamic_android.jpeg.gpsProcessingMethod">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004919 <td class="entry_name"><html><body><p>android.jpeg.gpsProcessingMethod<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004920 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004921 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004922
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004923 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004924
4925
4926 </td> <!-- entry_type -->
4927
4928 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004929 <html><body><p>32 characters describing GPS algorithm to
4930include in EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004931 </td>
4932
4933 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004934 <html><body><p>UTF-8 null-terminated string<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004935 </td>
4936
4937 <td class="entry_range">
4938 </td>
4939
4940 <td class="entry_notes">
4941 </td>
4942
4943 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004944 <ul class="entry_tags">
4945 <li><a href="#tag_BC">BC</a></li>
4946 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004947 </td>
4948
4949 </tr> <!-- end of entry -->
4950
4951
4952 <tr class="entry" id="dynamic_android.jpeg.gpsTimestamp">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004953 <td class="entry_name"><html><body><p>android.jpeg.gpsTimestamp<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004954 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004955 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004956
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004957 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004958
4959
4960 </td> <!-- entry_type -->
4961
4962 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004963 <html><body><p>Time GPS fix was made to include in
4964EXIF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004965 </td>
4966
4967 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004968 <html><body><p>UTC in seconds since January 1, 1970<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004969 </td>
4970
4971 <td class="entry_range">
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.orientation">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004987 <td class="entry_name"><html><body><p>android.jpeg.orientation<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004988 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004989 <span class="entry_type_name">int32</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">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08004997 <html><body><p>Orientation of JPEG image to
4998write<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004999 </td>
5000
5001 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005002 <html><body><p>Degrees in multiples of 90<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005003 </td>
5004
5005 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005006 <html><body><p>0, 90, 180, 270<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005007 </td>
5008
5009 <td class="entry_notes">
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.quality">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005022 <td class="entry_name"><html><body><p>android.jpeg.quality<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005023 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005024 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005025
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005026 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005027
5028
5029 </td> <!-- entry_type -->
5030
5031 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005032 <html><body><p>Compression quality of the final JPEG
5033image<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005034 </td>
5035
5036 <td class="entry_units">
5037 </td>
5038
5039 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005040 <html><body><p>1-100; larger is higher quality<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005041 </td>
5042
5043 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005044 <html><body><p>85-95 is typical usage range<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005045 </td>
5046
5047 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005048 <ul class="entry_tags">
5049 <li><a href="#tag_BC">BC</a></li>
5050 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005051 </td>
5052
5053 </tr> <!-- end of entry -->
5054
5055
5056 <tr class="entry" id="dynamic_android.jpeg.size">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005057 <td class="entry_name"><html><body><p>android.jpeg.size<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005058 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005059 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005060
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005061 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005062
5063
5064 </td> <!-- entry_type -->
5065
5066 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005067 <html><body><p>The size of the compressed JPEG image, in
5068bytes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005069 </td>
5070
5071 <td class="entry_units">
5072 </td>
5073
5074 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005075 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005076 </td>
5077
5078 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005079 <html><body><p>If no JPEG output is produced for the request,
5080this must be 0.</p>
5081<p>Otherwise, this describes the real size of the compressed
5082JPEG image placed in the output stream. More specifically,
5083if android.jpeg.maxSize = 1000000, and a specific capture
5084has android.jpeg.size = 500000, then the output buffer from
5085the JPEG stream will be 1000000 bytes, of which the first
5086500000 make up the real data.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005087 </td>
5088
5089 <td class="entry_tags">
5090 </td>
5091
5092 </tr> <!-- end of entry -->
5093
5094
5095 <tr class="entry" id="dynamic_android.jpeg.thumbnailQuality">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005096 <td class="entry_name"><html><body><p>android.jpeg.thumbnailQuality<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005097 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005098 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005099
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005100 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005101
5102
5103 </td> <!-- entry_type -->
5104
5105 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005106 <html><body><p>Compression quality of JPEG
5107thumbnail<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005108 </td>
5109
5110 <td class="entry_units">
5111 </td>
5112
5113 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005114 <html><body><p>1-100; larger is higher quality<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005115 </td>
5116
5117 <td class="entry_notes">
5118 </td>
5119
5120 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005121 <ul class="entry_tags">
5122 <li><a href="#tag_BC">BC</a></li>
5123 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005124 </td>
5125
5126 </tr> <!-- end of entry -->
5127
5128
5129 <tr class="entry" id="dynamic_android.jpeg.thumbnailSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005130 <td class="entry_name"><html><body><p>android.jpeg.thumbnailSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005131 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005132 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005133 <span class="entry_type_container">x</span>
5134
5135 <span class="entry_type_array">
5136 2
5137 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005138 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005139
5140
5141 </td> <!-- entry_type -->
5142
5143 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005144 <html><body><p>Resolution of embedded JPEG
5145thumbnail<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005146 </td>
5147
5148 <td class="entry_units">
5149 </td>
5150
5151 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005152 <html><body><p>from android.jpeg.availableThumbnailSizes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005153 </td>
5154
5155 <td class="entry_notes">
5156 </td>
5157
5158 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005159 <ul class="entry_tags">
5160 <li><a href="#tag_BC">BC</a></li>
5161 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005162 </td>
5163
5164 </tr> <!-- end of entry -->
5165
5166
5167
5168 <!-- end of kind -->
5169 </tbody>
5170
5171 <!-- end of section -->
5172 <tr><td colspan="7" id="section_lens" class="section">lens</td></tr>
5173
5174
5175 <tr><td colspan="7" class="kind">controls</td></tr>
5176
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005177 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005178 <tr>
5179 <th class="th_name">Property Name</th>
5180 <th class="th_type">Type</th>
5181 <th class="th_description">Description</th>
5182 <th class="th_units">Units</th>
5183 <th class="th_range">Range</th>
5184 <th class="th_notes">Notes</th>
5185 <th class="th_tags">Tags</th>
5186 </tr>
5187 </thead>
5188
5189 <tbody>
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200 <tr class="entry" id="controls_android.lens.aperture">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005201 <td class="entry_name"><html><body><p>android.lens.aperture<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005202 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005203 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005204
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005205 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005206
5207
5208 </td> <!-- entry_type -->
5209
5210 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005211 <html><body><p>Size of the lens aperture<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005212 </td>
5213
5214 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005215 <html><body><p>f-number (f/NNN)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005216 </td>
5217
5218 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005219 <html><body><p>android.lens.info.availableApertures<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005220 </td>
5221
5222 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005223 <html><body><p>Will not be supported on most devices. Can only
5224pick from supported list<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005225 </td>
5226
5227 <td class="entry_tags">
5228 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005229 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005230 </ul>
5231 </td>
5232
5233 </tr> <!-- end of entry -->
5234
5235
5236 <tr class="entry" id="controls_android.lens.filterDensity">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005237 <td class="entry_name"><html><body><p>android.lens.filterDensity<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005238 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005239 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005240
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005241 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005242
5243
5244 </td> <!-- entry_type -->
5245
5246 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005247 <html><body><p>State of lens neutral density
5248filter(s)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005249 </td>
5250
5251 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005252 <html><body><p>number of stops of filtering<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005253 </td>
5254
5255 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005256 <html><body><p>android.lens.info.availableFilterDensities<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005257 </td>
5258
5259 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005260 <html><body><p>Will not be supported on most devices. Can only
5261pick from supported list<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005262 </td>
5263
5264 <td class="entry_tags">
5265 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005266 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005267 </ul>
5268 </td>
5269
5270 </tr> <!-- end of entry -->
5271
5272
5273 <tr class="entry" id="controls_android.lens.focalLength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005274 <td class="entry_name"><html><body><p>android.lens.focalLength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005275 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005276 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005277
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005278 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005279
5280
5281 </td> <!-- entry_type -->
5282
5283 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005284 <html><body><p>Lens optical zoom setting<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005285 </td>
5286
5287 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005288 <html><body><p>focal length in mm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005289 </td>
5290
5291 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005292 <html><body><p>&gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005293 </td>
5294
5295 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005296 <html><body><p>Will not be supported on most devices.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005297 </td>
5298
5299 <td class="entry_tags">
5300 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005301 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005302 </ul>
5303 </td>
5304
5305 </tr> <!-- end of entry -->
5306
5307
5308 <tr class="entry" id="controls_android.lens.focusDistance">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005309 <td class="entry_name"><html><body><p>android.lens.focusDistance<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005310 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005311 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005312
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005313 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005314
5315
5316 </td> <!-- entry_type -->
5317
5318 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005319 <html><body><p>Distance to plane of sharpest focus,
5320measured from frontmost surface of the lens<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005321 </td>
5322
5323 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005324 <html><body><p>diopters (1/m)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005325 </td>
5326
5327 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005328 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005329 </td>
5330
5331 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005332 <html><body><p>0 = infinity focus. Used value should be clamped
5333to (0,minimum focus distance)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005334 </td>
5335
5336 <td class="entry_tags">
5337 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005338 <li><a href="#tag_BC">BC</a></li>
5339 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005340 </ul>
5341 </td>
5342
5343 </tr> <!-- end of entry -->
5344
5345
5346 <tr class="entry" id="controls_android.lens.opticalStabilizationMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005347 <td class="entry_name"><html><body><p>android.lens.opticalStabilizationMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005348 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005349 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005350
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005351 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005352
5353 <ul class="entry_type_enum">
5354 <li>
5355 <span class="entry_type_enum_name">OFF</span>
5356 </li>
5357 <li>
5358 <span class="entry_type_enum_name">ON</span>
5359 <span class="entry_type_enum_optional">optional</span>
5360 </li>
5361 </ul>
5362
5363 </td> <!-- entry_type -->
5364
5365 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005366 <html><body><p>Whether optical image stabilization is
5367enabled.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005368 </td>
5369
5370 <td class="entry_units">
5371 </td>
5372
5373 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005374 <html><body><p>android.lens.availableOpticalStabilization<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005375 </td>
5376
5377 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005378 <html><body><p>Will not be supported on most devices.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005379 </td>
5380
5381 <td class="entry_tags">
5382 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005383 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005384 </ul>
5385 </td>
5386
5387 </tr> <!-- end of entry -->
5388
5389
5390
5391 <!-- end of kind -->
5392 </tbody>
5393 <tr><td colspan="7" class="kind">static</td></tr>
5394
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005395 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005396 <tr>
5397 <th class="th_name">Property Name</th>
5398 <th class="th_type">Type</th>
5399 <th class="th_description">Description</th>
5400 <th class="th_units">Units</th>
5401 <th class="th_range">Range</th>
5402 <th class="th_notes">Notes</th>
5403 <th class="th_tags">Tags</th>
5404 </tr>
5405 </thead>
5406
5407 <tbody>
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420 <tr class="entry" id="static_android.lens.info.availableApertures">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005421 <td class="entry_name"><html><body><p>android.lens.info.availableApertures<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005422 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005423 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005424 <span class="entry_type_container">x</span>
5425
5426 <span class="entry_type_array">
5427 n
5428 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005429 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005430
5431
5432 </td> <!-- entry_type -->
5433
5434 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005435 <html><body><p>List of supported aperture
5436values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005437 </td>
5438
5439 <td class="entry_units">
5440 </td>
5441
5442 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005443 <html><body><p>one entry required, &gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005444 </td>
5445
5446 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005447 <html><body><p>If variable aperture not available, only setting
5448should be for the fixed aperture<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005449 </td>
5450
5451 <td class="entry_tags">
5452 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005453 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005454 </ul>
5455 </td>
5456
5457 </tr> <!-- end of entry -->
5458
5459
5460 <tr class="entry" id="static_android.lens.info.availableFilterDensities">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005461 <td class="entry_name"><html><body><p>android.lens.info.availableFilterDensities<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005462 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005463 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005464 <span class="entry_type_container">x</span>
5465
5466 <span class="entry_type_array">
5467 n
5468 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005469 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005470
5471
5472 </td> <!-- entry_type -->
5473
5474 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005475 <html><body><p>List of supported ND filter
5476values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005477 </td>
5478
5479 <td class="entry_units">
5480 </td>
5481
5482 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005483 <html><body><p>one entry required, &gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005484 </td>
5485
5486 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005487 <html><body><p>If not available, only setting is 0. Otherwise,
Igor Murashkin8aa2a112013-12-09 12:06:17 -08005488lists the available exposure index values for dimming
5489(2 would mean the filter is set to reduce incoming
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005490light by two stops)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005491 </td>
5492
5493 <td class="entry_tags">
5494 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005495 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005496 </ul>
5497 </td>
5498
5499 </tr> <!-- end of entry -->
5500
5501
5502 <tr class="entry" id="static_android.lens.info.availableFocalLengths">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005503 <td class="entry_name"><html><body><p>android.lens.info.availableFocalLengths<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005504 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005505 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005506 <span class="entry_type_container">x</span>
5507
5508 <span class="entry_type_array">
5509 n
5510 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005511 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005512 <div class="entry_type_notes"><html><body><p>the list of available focal lengths<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005513
5514
5515 </td> <!-- entry_type -->
5516
5517 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005518 <html><body><p>If fitted with optical zoom, what focal
5519lengths are available. If not, the static focal
5520length<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005521 </td>
5522
5523 <td class="entry_units">
5524 </td>
5525
5526 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005527 <html><body><p>&gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005528 </td>
5529
5530 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005531 <html><body><p>If optical zoom not supported, only one value
5532should be reported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005533 </td>
5534
5535 <td class="entry_tags">
5536 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005537 <li><a href="#tag_BC">BC</a></li>
5538 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005539 </ul>
5540 </td>
5541
5542 </tr> <!-- end of entry -->
5543
5544
5545 <tr class="entry" id="static_android.lens.info.availableOpticalStabilization">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005546 <td class="entry_name"><html><body><p>android.lens.info.availableOpticalStabilization<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005547 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005548 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005549 <span class="entry_type_container">x</span>
5550
5551 <span class="entry_type_array">
5552 n
5553 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005554 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005555 <div class="entry_type_notes"><html><body><p>list of enums<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005556
5557
5558 </td> <!-- entry_type -->
5559
5560 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005561 <html><body><p>List of supported optical image
5562stabilization modes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005563 </td>
5564
5565 <td class="entry_units">
5566 </td>
5567
5568 <td class="entry_range">
5569 </td>
5570
5571 <td class="entry_notes">
5572 </td>
5573
5574 <td class="entry_tags">
5575 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005576 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005577 </ul>
5578 </td>
5579
5580 </tr> <!-- end of entry -->
5581
5582
5583 <tr class="entry" id="static_android.lens.info.geometricCorrectionMap">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005584 <td class="entry_name"><html><body><p>android.lens.info.geometricCorrectionMap<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005585 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005586 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005587 <span class="entry_type_container">x</span>
5588
5589 <span class="entry_type_array">
5590 2 x 3 x n x m
5591 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005592 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005593 <div class="entry_type_notes"><html><body><p>2D array of destination coordinate pairs for uniform grid points in source image, per color channel. Size in the range of 2x3x40x30<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005594
5595
5596 </td> <!-- entry_type -->
5597
5598 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005599 <html><body><p>A low-resolution map for correction of
5600geometric distortions and chromatic aberrations, per
5601color channel<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005602 </td>
5603
5604 <td class="entry_units">
5605 </td>
5606
5607 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005608 <html><body><p>N, M &gt;= 2<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005609 </td>
5610
5611 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005612 <html><body><p>[DNG wants a function instead]. What's easiest
5613for implementers? With an array size (M, N), entry (i,
5614j) provides the destination for pixel (i/(M-1) * width,
5615j/(N-1) * height). Data is row-major, with each array
5616entry being ( (X, Y)_r, (X, Y)_g, (X, Y)_b ) )<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005617 </td>
5618
5619 <td class="entry_tags">
5620 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005621 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005622 </ul>
5623 </td>
5624
5625 </tr> <!-- end of entry -->
5626
5627
5628 <tr class="entry" id="static_android.lens.info.geometricCorrectionMapSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005629 <td class="entry_name"><html><body><p>android.lens.info.geometricCorrectionMapSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005630 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005631 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005632 <span class="entry_type_container">x</span>
5633
5634 <span class="entry_type_array">
5635 2
5636 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005637 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005638 <div class="entry_type_notes"><html><body><p>width and height of geometric correction map<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005639
5640
5641 </td> <!-- entry_type -->
5642
5643 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005644 <html><body><p>Dimensions of geometric correction
5645map<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005646 </td>
5647
5648 <td class="entry_units">
5649 </td>
5650
5651 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005652 <html><body><p>Both values &gt;= 2<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005653 </td>
5654
5655 <td class="entry_notes">
5656 </td>
5657
5658 <td class="entry_tags">
5659 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005660 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005661 </ul>
5662 </td>
5663
5664 </tr> <!-- end of entry -->
5665
5666
5667 <tr class="entry" id="static_android.lens.info.hyperfocalDistance">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005668 <td class="entry_name"><html><body><p>android.lens.info.hyperfocalDistance<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005669 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005670 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005671
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005672 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005673
5674
5675 </td> <!-- entry_type -->
5676
5677 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005678 <html><body><p>Hyperfocal distance for this lens; set to
56790 if fixed focus<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005680 </td>
5681
5682 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005683 <html><body><p>diopters<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005684 </td>
5685
5686 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005687 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005688 </td>
5689
5690 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005691 <html><body><p>The hyperfocal distance is used for the old
5692API's 'fixed' setting<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005693 </td>
5694
5695 <td class="entry_tags">
5696 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005697 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005698 </ul>
5699 </td>
5700
5701 </tr> <!-- end of entry -->
5702
5703
5704 <tr class="entry" id="static_android.lens.info.minimumFocusDistance">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005705 <td class="entry_name"><html><body><p>android.lens.info.minimumFocusDistance<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005706 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005707 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005708
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005709 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005710
5711
5712 </td> <!-- entry_type -->
5713
5714 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005715 <html><body><p>Shortest distance from frontmost surface
5716of the lens that can be focused correctly<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005717 </td>
5718
5719 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005720 <html><body><p>diopters<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005721 </td>
5722
5723 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005724 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005725 </td>
5726
5727 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005728 <html><body><p>If the lens is fixed-focus, this should be
57290<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005730 </td>
5731
5732 <td class="entry_tags">
5733 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005734 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005735 </ul>
5736 </td>
5737
5738 </tr> <!-- end of entry -->
5739
5740
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005741 <tr class="entry" id="static_android.lens.info.shadingMapSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005742 <td class="entry_name"><html><body><p>android.lens.info.shadingMapSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005743 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005744 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005745 <span class="entry_type_container">x</span>
5746
5747 <span class="entry_type_array">
5748 2
5749 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005750 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005751 <div class="entry_type_notes"><html><body><p>width and height of lens shading map provided by the HAL. (N x M)<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005752
5753
5754 </td> <!-- entry_type -->
5755
5756 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005757 <html><body><p>Dimensions of lens shading map.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005758 </td>
5759
5760 <td class="entry_units">
5761 </td>
5762
5763 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005764 <html><body><p>Both values &gt;= 1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005765 </td>
5766
5767 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005768 <html><body><p>The map should be on the order of 30-40 rows and columns, and
5769must be smaller than 64x64.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005770 </td>
5771
5772 <td class="entry_tags">
5773 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005774 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005775 </ul>
5776 </td>
5777
5778 </tr> <!-- end of entry -->
5779
5780
5781
5782
5783
5784 <tr class="entry" id="static_android.lens.facing">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005785 <td class="entry_name"><html><body><p>android.lens.facing<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005786 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005787 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005788
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005789 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005790
5791 <ul class="entry_type_enum">
5792 <li>
5793 <span class="entry_type_enum_name">FRONT</span>
5794 </li>
5795 <li>
5796 <span class="entry_type_enum_name">BACK</span>
5797 </li>
5798 </ul>
5799
5800 </td> <!-- entry_type -->
5801
5802 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005803 <html><body><p>Direction the camera faces relative to
5804device screen<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005805 </td>
5806
5807 <td class="entry_units">
5808 </td>
5809
5810 <td class="entry_range">
5811 </td>
5812
5813 <td class="entry_notes">
5814 </td>
5815
5816 <td class="entry_tags">
5817 </td>
5818
5819 </tr> <!-- end of entry -->
5820
5821
5822 <tr class="entry" id="static_android.lens.opticalAxisAngle">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005823 <td class="entry_name"><html><body><p>android.lens.opticalAxisAngle<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005824 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005825 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005826 <span class="entry_type_container">x</span>
5827
5828 <span class="entry_type_array">
5829 2
5830 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005831 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005832 <div class="entry_type_notes"><html><body><p>degrees. First defines the angle of separation between the perpendicular to the screen and the camera optical axis. The second then defines the clockwise rotation of the optical axis from native device up.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005833
5834
5835 </td> <!-- entry_type -->
5836
5837 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005838 <html><body><p>Relative angle of camera optical axis to the
5839perpendicular axis from the display<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005840 </td>
5841
5842 <td class="entry_units">
5843 </td>
5844
5845 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005846 <html><body><p>[0-90) for first angle, [0-360) for second<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005847 </td>
5848
5849 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005850 <html><body><p>Examples:</p>
5851<p>(0,0) means that the camera optical axis
Igor Murashkin8aa2a112013-12-09 12:06:17 -08005852is perpendicular to the display surface;</p>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005853<p>(45,0) means that the camera points 45 degrees up when
Igor Murashkin8aa2a112013-12-09 12:06:17 -08005854device is held upright;</p>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005855<p>(45,90) means the camera points 45 degrees to the right when
5856the device is held upright.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08005857<p>Use FACING field to determine perpendicular outgoing
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005858direction<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005859 </td>
5860
5861 <td class="entry_tags">
5862 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005863 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005864 </ul>
5865 </td>
5866
5867 </tr> <!-- end of entry -->
5868
5869
5870 <tr class="entry" id="static_android.lens.position">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005871 <td class="entry_name"><html><body><p>android.lens.position<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005872 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005873 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005874 <span class="entry_type_container">x</span>
5875
5876 <span class="entry_type_array">
5877 3, location in mm, in the sensor coordinate
5878 system
5879 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005880 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005881
5882
5883 </td> <!-- entry_type -->
5884
5885 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005886 <html><body><p>Coordinates of camera optical axis on
5887device<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005888 </td>
5889
5890 <td class="entry_units">
5891 </td>
5892
5893 <td class="entry_range">
5894 </td>
5895
5896 <td class="entry_notes">
5897 </td>
5898
5899 <td class="entry_tags">
5900 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005901 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005902 </ul>
5903 </td>
5904
5905 </tr> <!-- end of entry -->
5906
5907
5908
5909 <!-- end of kind -->
5910 </tbody>
5911 <tr><td colspan="7" class="kind">dynamic</td></tr>
5912
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005913 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005914 <tr>
5915 <th class="th_name">Property Name</th>
5916 <th class="th_type">Type</th>
5917 <th class="th_description">Description</th>
5918 <th class="th_units">Units</th>
5919 <th class="th_range">Range</th>
5920 <th class="th_notes">Notes</th>
5921 <th class="th_tags">Tags</th>
5922 </tr>
5923 </thead>
5924
5925 <tbody>
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936 <tr class="entry" id="dynamic_android.lens.aperture">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005937 <td class="entry_name"><html><body><p>android.lens.aperture<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005938 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005939 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005940
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005941 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005942
5943
5944 </td> <!-- entry_type -->
5945
5946 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005947 <html><body><p>Size of the lens aperture<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005948 </td>
5949
5950 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005951 <html><body><p>f-number (f/NNN)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005952 </td>
5953
5954 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005955 <html><body><p>android.lens.info.availableApertures<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005956 </td>
5957
5958 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005959 <html><body><p>Will not be supported on most devices. Can only
5960pick from supported list<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005961 </td>
5962
5963 <td class="entry_tags">
5964 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005965 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005966 </ul>
5967 </td>
5968
5969 </tr> <!-- end of entry -->
5970
5971
5972 <tr class="entry" id="dynamic_android.lens.filterDensity">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005973 <td class="entry_name"><html><body><p>android.lens.filterDensity<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005974 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005975 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005976
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005977 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005978
5979
5980 </td> <!-- entry_type -->
5981
5982 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005983 <html><body><p>State of lens neutral density
5984filter(s)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005985 </td>
5986
5987 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005988 <html><body><p>number of stops of filtering<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005989 </td>
5990
5991 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005992 <html><body><p>android.lens.info.availableFilterDensities<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005993 </td>
5994
5995 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08005996 <html><body><p>Will not be supported on most devices. Can only
5997pick from supported list<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005998 </td>
5999
6000 <td class="entry_tags">
6001 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006002 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006003 </ul>
6004 </td>
6005
6006 </tr> <!-- end of entry -->
6007
6008
6009 <tr class="entry" id="dynamic_android.lens.focalLength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006010 <td class="entry_name"><html><body><p>android.lens.focalLength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006011 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006012 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006013
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006014 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006015
6016
6017 </td> <!-- entry_type -->
6018
6019 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006020 <html><body><p>Lens optical zoom setting<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006021 </td>
6022
6023 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006024 <html><body><p>focal length in mm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006025 </td>
6026
6027 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006028 <html><body><p>&gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006029 </td>
6030
6031 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006032 <html><body><p>Will not be supported on most devices.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006033 </td>
6034
6035 <td class="entry_tags">
6036 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006037 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006038 </ul>
6039 </td>
6040
6041 </tr> <!-- end of entry -->
6042
6043
6044 <tr class="entry" id="dynamic_android.lens.focusDistance">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006045 <td class="entry_name"><html><body><p>android.lens.focusDistance<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006046 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006047 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006048
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006049 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006050
6051
6052 </td> <!-- entry_type -->
6053
6054 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006055 <html><body><p>Distance to plane of sharpest focus,
6056measured from frontmost surface of the lens<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006057 </td>
6058
6059 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006060 <html><body><p>diopters (1/m)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006061 </td>
6062
6063 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006064 <html><body><p>&gt;= 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006065 </td>
6066
6067 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006068 <html><body><p>Should be zero for fixed-focus cameras<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006069 </td>
6070
6071 <td class="entry_tags">
6072 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006073 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006074 </ul>
6075 </td>
6076
6077 </tr> <!-- end of entry -->
6078
6079
6080 <tr class="entry" id="dynamic_android.lens.focusRange">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006081 <td class="entry_name"><html><body><p>android.lens.focusRange<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006082 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006083 <span class="entry_type_name">float</span>
Zhijun He50451ad2013-09-26 10:27:47 -07006084 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006085
Zhijun He50451ad2013-09-26 10:27:47 -07006086 <span class="entry_type_array">
6087 2
6088 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006089 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006090 <div class="entry_type_notes"><html><body><p>Range of scene distances that are in focus<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006091
6092
6093 </td> <!-- entry_type -->
6094
6095 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006096 <html><body><p>The range of scene distances that are in
6097sharp focus (depth of field)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006098 </td>
6099
6100 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006101 <html><body><p>pair of focus distances in diopters: (near,
6102 far)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006103 </td>
6104
6105 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006106 <html><body><p>&gt;=0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006107 </td>
6108
6109 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006110 <html><body><p>If variable focus not supported, can still report
6111fixed depth of field range<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006112 </td>
6113
6114 <td class="entry_tags">
6115 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006116 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006117 </ul>
6118 </td>
6119
6120 </tr> <!-- end of entry -->
6121
6122
6123 <tr class="entry" id="dynamic_android.lens.opticalStabilizationMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006124 <td class="entry_name"><html><body><p>android.lens.opticalStabilizationMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006125 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006126 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006127
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006128 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006129
6130 <ul class="entry_type_enum">
6131 <li>
6132 <span class="entry_type_enum_name">OFF</span>
6133 </li>
6134 <li>
6135 <span class="entry_type_enum_name">ON</span>
6136 <span class="entry_type_enum_optional">optional</span>
6137 </li>
6138 </ul>
6139
6140 </td> <!-- entry_type -->
6141
6142 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006143 <html><body><p>Whether optical image stabilization is
6144enabled.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006145 </td>
6146
6147 <td class="entry_units">
6148 </td>
6149
6150 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006151 <html><body><p>android.lens.availableOpticalStabilization<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006152 </td>
6153
6154 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006155 <html><body><p>Will not be supported on most devices.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006156 </td>
6157
6158 <td class="entry_tags">
6159 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006160 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006161 </ul>
6162 </td>
6163
6164 </tr> <!-- end of entry -->
6165
6166
6167 <tr class="entry" id="dynamic_android.lens.state">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006168 <td class="entry_name"><html><body><p>android.lens.state<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006169 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006170 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006171
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006172 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006173
6174 <ul class="entry_type_enum">
6175 <li>
6176 <span class="entry_type_enum_name">STATIONARY</span>
6177 </li>
Igor Murashkin0e323a12013-09-06 11:50:48 -07006178 <li>
6179 <span class="entry_type_enum_name">MOVING</span>
6180 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006181 </ul>
6182
6183 </td> <!-- entry_type -->
6184
6185 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006186 <html><body><p>Current lens status<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006187 </td>
6188
6189 <td class="entry_units">
6190 </td>
6191
6192 <td class="entry_range">
6193 </td>
6194
6195 <td class="entry_notes">
6196 </td>
6197
6198 <td class="entry_tags">
6199 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006200 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006201 </ul>
6202 </td>
6203
6204 </tr> <!-- end of entry -->
6205
6206
6207
6208 <!-- end of kind -->
6209 </tbody>
6210
6211 <!-- end of section -->
6212 <tr><td colspan="7" id="section_noiseReduction" class="section">noiseReduction</td></tr>
6213
6214
6215 <tr><td colspan="7" class="kind">controls</td></tr>
6216
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006217 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006218 <tr>
6219 <th class="th_name">Property Name</th>
6220 <th class="th_type">Type</th>
6221 <th class="th_description">Description</th>
6222 <th class="th_units">Units</th>
6223 <th class="th_range">Range</th>
6224 <th class="th_notes">Notes</th>
6225 <th class="th_tags">Tags</th>
6226 </tr>
6227 </thead>
6228
6229 <tbody>
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240 <tr class="entry" id="controls_android.noiseReduction.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006241 <td class="entry_name"><html><body><p>android.noiseReduction.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006242 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006243 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006244
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006245 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006246
6247 <ul class="entry_type_enum">
6248 <li>
6249 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006250 <span class="entry_type_enum_notes"><html><body><p>No noise reduction is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006251 </li>
6252 <li>
6253 <span class="entry_type_enum_name">FAST</span>
Zhijun Heb1c5bab2013-12-16 15:08:14 -08006254 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to sensor
6255 output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006256 </li>
6257 <li>
6258 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006259 <span class="entry_type_enum_notes"><html><body><p>May slow down frame rate to provide highest
6260 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006261 </li>
6262 </ul>
6263
6264 </td> <!-- entry_type -->
6265
6266 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006267 <html><body><p>Mode of operation for the noise reduction
6268algorithm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006269 </td>
6270
6271 <td class="entry_units">
6272 </td>
6273
6274 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006275 <html><body><p>android.noiseReduction.availableModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006276 </td>
6277
6278 <td class="entry_notes">
Zhijun Heb1c5bab2013-12-16 15:08:14 -08006279 <html><body><p>Noise filtering control. OFF means no noise reduction
6280will be applied by the HAL.</p>
6281<p>FAST/HIGH_QUALITY both mean HAL-determined noise filtering
6282will be applied. HIGH_QUALITY mode indicates that the HAL
6283should use the highest-quality noise filtering algorithms,
6284even if it slows down capture rate. FAST means the HAL should not
6285slow down capture rate when applying noise filtering.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006286 </td>
6287
6288 <td class="entry_tags">
6289 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006290 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006291 </ul>
6292 </td>
6293
6294 </tr> <!-- end of entry -->
6295
6296
6297 <tr class="entry" id="controls_android.noiseReduction.strength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006298 <td class="entry_name"><html><body><p>android.noiseReduction.strength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006299 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006300 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006301
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006302 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006303
6304
6305 </td> <!-- entry_type -->
6306
6307 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006308 <html><body><p>Control the amount of noise reduction
6309applied to the images<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006310 </td>
6311
6312 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006313 <html><body><p>1-10; 10 is max noise reduction<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006314 </td>
6315
6316 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006317 <html><body><p>1 - 10<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006318 </td>
6319
6320 <td class="entry_notes">
6321 </td>
6322
6323 <td class="entry_tags">
6324 </td>
6325
6326 </tr> <!-- end of entry -->
6327
6328
6329
6330 <!-- end of kind -->
6331 </tbody>
6332 <tr><td colspan="7" class="kind">dynamic</td></tr>
6333
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006334 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006335 <tr>
6336 <th class="th_name">Property Name</th>
6337 <th class="th_type">Type</th>
6338 <th class="th_description">Description</th>
6339 <th class="th_units">Units</th>
6340 <th class="th_range">Range</th>
6341 <th class="th_notes">Notes</th>
6342 <th class="th_tags">Tags</th>
6343 </tr>
6344 </thead>
6345
6346 <tbody>
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357 <tr class="entry" id="dynamic_android.noiseReduction.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006358 <td class="entry_name"><html><body><p>android.noiseReduction.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006359 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006360 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006361
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006362 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006363
6364 <ul class="entry_type_enum">
6365 <li>
6366 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006367 <span class="entry_type_enum_notes"><html><body><p>No noise reduction is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006368 </li>
6369 <li>
6370 <span class="entry_type_enum_name">FAST</span>
Zhijun Heb1c5bab2013-12-16 15:08:14 -08006371 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to sensor
6372 output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006373 </li>
6374 <li>
6375 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006376 <span class="entry_type_enum_notes"><html><body><p>May slow down frame rate to provide highest
6377 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006378 </li>
6379 </ul>
6380
6381 </td> <!-- entry_type -->
6382
6383 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006384 <html><body><p>Mode of operation for the noise reduction
6385algorithm<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006386 </td>
6387
6388 <td class="entry_units">
6389 </td>
6390
6391 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006392 <html><body><p>android.noiseReduction.availableModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006393 </td>
6394
6395 <td class="entry_notes">
Zhijun Heb1c5bab2013-12-16 15:08:14 -08006396 <html><body><p>Noise filtering control. OFF means no noise reduction
6397will be applied by the HAL.</p>
6398<p>FAST/HIGH_QUALITY both mean HAL-determined noise filtering
6399will be applied. HIGH_QUALITY mode indicates that the HAL
6400should use the highest-quality noise filtering algorithms,
6401even if it slows down capture rate. FAST means the HAL should not
6402slow down capture rate when applying noise filtering.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006403 </td>
6404
6405 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006406 <ul class="entry_tags">
6407 <li><a href="#tag_V1">V1</a></li>
6408 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006409 </td>
6410
6411 </tr> <!-- end of entry -->
6412
6413
6414
6415 <!-- end of kind -->
6416 </tbody>
6417
6418 <!-- end of section -->
6419 <tr><td colspan="7" id="section_quirks" class="section">quirks</td></tr>
6420
6421
6422 <tr><td colspan="7" class="kind">static</td></tr>
6423
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006424 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006425 <tr>
6426 <th class="th_name">Property Name</th>
6427 <th class="th_type">Type</th>
6428 <th class="th_description">Description</th>
6429 <th class="th_units">Units</th>
6430 <th class="th_range">Range</th>
6431 <th class="th_notes">Notes</th>
6432 <th class="th_tags">Tags</th>
6433 </tr>
6434 </thead>
6435
6436 <tbody>
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447 <tr class="entry" id="static_android.quirks.meteringCropRegion">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006448 <td class="entry_name"><html><body><p>android.quirks.meteringCropRegion<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006449 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006450 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006451
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006452 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006453
6454
6455 </td> <!-- entry_type -->
6456
6457 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006458 <html><body><p>If set to 1, the camera service does not
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006459scale 'normalized' coordinates with respect to the crop
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006460region. This applies to metering input (a{e,f,wb}Region
6461and output (face rectangles).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006462 </td>
6463
6464 <td class="entry_units">
6465 </td>
6466
6467 <td class="entry_range">
6468 </td>
6469
6470 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006471 <html><body><p>Normalized coordinates refer to those in the
6472(-1000,1000) range mentioned in the
6473android.hardware.Camera API.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006474<p>HAL implementations should instead always use and emit
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006475sensor array-relative coordinates for all region data. Does
6476not need to be listed in static metadata. Support will be
6477removed in future versions of camera service.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006478 </td>
6479
6480 <td class="entry_tags">
6481 </td>
6482
6483 </tr> <!-- end of entry -->
6484
6485
6486 <tr class="entry" id="static_android.quirks.triggerAfWithAuto">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006487 <td class="entry_name"><html><body><p>android.quirks.triggerAfWithAuto<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006488 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006489 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006490
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006491 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006492
6493
6494 </td> <!-- entry_type -->
6495
6496 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006497 <html><body><p>If set to 1, then the camera service always
6498switches to FOCUS_MODE_AUTO before issuing a AF
6499trigger.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006500 </td>
6501
6502 <td class="entry_units">
6503 </td>
6504
6505 <td class="entry_range">
6506 </td>
6507
6508 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006509 <html><body><p>HAL implementations should implement AF trigger
6510modes for AUTO, MACRO, CONTINUOUS_FOCUS, and
6511CONTINUOUS_PICTURE modes instead of using this flag. Does
6512not need to be listed in static metadata. Support will be
6513removed in future versions of camera service<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006514 </td>
6515
6516 <td class="entry_tags">
6517 </td>
6518
6519 </tr> <!-- end of entry -->
6520
6521
6522 <tr class="entry" id="static_android.quirks.useZslFormat">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006523 <td class="entry_name"><html><body><p>android.quirks.useZslFormat<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006524 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006525 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006526
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006527 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006528
6529
6530 </td> <!-- entry_type -->
6531
6532 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006533 <html><body><p>If set to 1, the camera service uses
6534CAMERA2_PIXEL_FORMAT_ZSL instead of
6535HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED for the zero
6536shutter lag stream<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006537 </td>
6538
6539 <td class="entry_units">
6540 </td>
6541
6542 <td class="entry_range">
6543 </td>
6544
6545 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006546 <html><body><p>HAL implementations should use gralloc usage flags
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006547to determine that a stream will be used for
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006548zero-shutter-lag, instead of relying on an explicit
6549format setting. Does not need to be listed in static
6550metadata. Support will be removed in future versions of
6551camera service.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006552 </td>
6553
6554 <td class="entry_tags">
6555 </td>
6556
6557 </tr> <!-- end of entry -->
6558
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006559
6560 <tr class="entry" id="static_android.quirks.usePartialResult">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006561 <td class="entry_name"><html><body><p>android.quirks.usePartialResult<wbr></wbr></p></body></html></td>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006562 <td class="entry_type">
6563 <span class="entry_type_name">byte</span>
6564
Eino-Ville Talvala52a64a52013-11-07 14:43:43 -08006565 <span class="entry_type_visibility"> [hidden]</span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006566
6567
6568 </td> <!-- entry_type -->
6569
6570 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006571 <html><body><p>If set to 1, the HAL will always split result
6572metadata for a single capture into multiple buffers,
6573returned using multiple process_capture_result calls.<wbr></wbr></p></body></html>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006574 </td>
6575
6576 <td class="entry_units">
6577 </td>
6578
6579 <td class="entry_range">
6580 </td>
6581
6582 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006583 <html><body><p>Does not need to be listed in static
6584metadata. Support for partial results will be reworked in
6585future versions of camera service. This quirk will stop
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006586working at that point; DO NOT USE without careful
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006587consideration of future support.<wbr></wbr></p></body></html>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006588 </td>
6589
6590 <td class="entry_tags">
6591 </td>
6592
6593 </tr> <!-- end of entry -->
6594
6595
6596
6597 <!-- end of kind -->
6598 </tbody>
6599 <tr><td colspan="7" class="kind">dynamic</td></tr>
6600
6601 <thead class="entries_header">
6602 <tr>
6603 <th class="th_name">Property Name</th>
6604 <th class="th_type">Type</th>
6605 <th class="th_description">Description</th>
6606 <th class="th_units">Units</th>
6607 <th class="th_range">Range</th>
6608 <th class="th_notes">Notes</th>
6609 <th class="th_tags">Tags</th>
6610 </tr>
6611 </thead>
6612
6613 <tbody>
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624 <tr class="entry" id="dynamic_android.quirks.partialResult">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006625 <td class="entry_name"><html><body><p>android.quirks.partialResult<wbr></wbr></p></body></html></td>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006626 <td class="entry_type">
6627 <span class="entry_type_name entry_type_name_enum">byte</span>
6628
Eino-Ville Talvala52a64a52013-11-07 14:43:43 -08006629 <span class="entry_type_visibility"> [hidden as boolean]</span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006630
6631 <ul class="entry_type_enum">
6632 <li>
6633 <span class="entry_type_enum_name">FINAL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006634 <span class="entry_type_enum_notes"><html><body><p>The last or only metadata result buffer
6635 for this capture.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006636 </li>
6637 <li>
6638 <span class="entry_type_enum_name">PARTIAL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006639 <span class="entry_type_enum_notes"><html><body><p>A partial buffer of result metadata for this
6640 capture. More result buffers for this capture will be sent
6641 by the HAL, the last of which will be marked
6642 FINAL.<wbr></wbr></p></body></html></span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006643 </li>
6644 </ul>
6645
6646 </td> <!-- entry_type -->
6647
6648 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006649 <html><body><p>Whether a result given to the framework is the
6650final one for the capture, or only a partial that contains a
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006651subset of the full set of dynamic metadata
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006652values.<wbr></wbr></p></body></html>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006653 </td>
6654
6655 <td class="entry_units">
6656 </td>
6657
6658 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006659 <html><body><p>Optional. Default value is FINAL.<wbr></wbr></p></body></html>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006660 </td>
6661
6662 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006663 <html><body><p>The entries in the result metadata buffers for a
6664single capture may not overlap, except for this entry. The
Igor Murashkin8aa2a112013-12-09 12:06:17 -08006665FINAL buffers must retain FIFO ordering relative to the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006666requests that generate them, so the FINAL buffer for frame 3 must
6667always be sent to the framework after the FINAL buffer for frame 2, and
6668before the FINAL buffer for frame 4. PARTIAL buffers may be returned
6669in any order relative to other frames, but all PARTIAL buffers for a given
6670capture must arrive before the FINAL buffer for that capture. This entry may
6671only be used by the HAL if quirks.usePartialResult is set to 1.<wbr></wbr></p></body></html>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07006672 </td>
6673
6674 <td class="entry_tags">
6675 </td>
6676
6677 </tr> <!-- end of entry -->
6678
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006679
6680
6681 <!-- end of kind -->
6682 </tbody>
6683
6684 <!-- end of section -->
6685 <tr><td colspan="7" id="section_request" class="section">request</td></tr>
6686
6687
6688 <tr><td colspan="7" class="kind">controls</td></tr>
6689
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006690 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006691 <tr>
6692 <th class="th_name">Property Name</th>
6693 <th class="th_type">Type</th>
6694 <th class="th_description">Description</th>
6695 <th class="th_units">Units</th>
6696 <th class="th_range">Range</th>
6697 <th class="th_notes">Notes</th>
6698 <th class="th_tags">Tags</th>
6699 </tr>
6700 </thead>
6701
6702 <tbody>
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713 <tr class="entry" id="controls_android.request.frameCount">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006714 <td class="entry_name"><html><body><p>android.request.frameCount<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006715 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006716 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006717
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006718 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006719
6720
6721 </td> <!-- entry_type -->
6722
6723 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006724 <html><body><p>A frame counter set by the framework. Must
6725be maintained unchanged in output frame. This value monotonically
6726increases with every new result (that is, each new result has a unique
6727frameCount value).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006728 </td>
6729
6730 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006731 <html><body><p>incrementing integer<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006732 </td>
6733
6734 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006735 <html><body><p>Any int<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006736 </td>
6737
6738 <td class="entry_notes">
6739 </td>
6740
6741 <td class="entry_tags">
6742 </td>
6743
6744 </tr> <!-- end of entry -->
6745
6746
6747 <tr class="entry" id="controls_android.request.id">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006748 <td class="entry_name"><html><body><p>android.request.id<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006749 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006750 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006751
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006752 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006753
6754
6755 </td> <!-- entry_type -->
6756
6757 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006758 <html><body><p>An application-specified ID for the current
6759request. Must be maintained unchanged in output
6760frame<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006761 </td>
6762
6763 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006764 <html><body><p>arbitrary integer assigned by application<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006765 </td>
6766
6767 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006768 <html><body><p>Any int<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006769 </td>
6770
6771 <td class="entry_notes">
6772 </td>
6773
6774 <td class="entry_tags">
6775 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006776 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006777 </ul>
6778 </td>
6779
6780 </tr> <!-- end of entry -->
6781
6782
6783 <tr class="entry" id="controls_android.request.inputStreams">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006784 <td class="entry_name"><html><body><p>android.request.inputStreams<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006785 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006786 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006787 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006788
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006789 <span class="entry_type_array">
6790 n
6791 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006792 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006793
6794
6795 </td> <!-- entry_type -->
6796
6797 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006798 <html><body><p>List which camera reprocess stream is used
6799for the source of reprocessing data.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006800 </td>
6801
6802 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006803 <html><body><p>List of camera reprocess stream IDs<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006804 </td>
6805
6806 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006807 <html><body><p>Typically, only one entry allowed, must be a valid
6808 reprocess stream ID.
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006809
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006810 If android.jpeg.needsThumbnail is set, then multiple
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006811 reprocess streams may be included in a single request; they
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006812 must be different scaled versions of the same image.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006813 </td>
6814
6815 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006816 <html><body><p>Only meaningful when android.request.type ==
6817REPROCESS. Ignored otherwise<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006818 </td>
6819
6820 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006821 <ul class="entry_tags">
6822 <li><a href="#tag_HAL2">HAL2</a></li>
6823 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006824 </td>
6825
6826 </tr> <!-- end of entry -->
6827
6828
6829 <tr class="entry" id="controls_android.request.metadataMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006830 <td class="entry_name"><html><body><p>android.request.metadataMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006831 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006832 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006833
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006834 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006835
6836 <ul class="entry_type_enum">
6837 <li>
6838 <span class="entry_type_enum_name">NONE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006839 <span class="entry_type_enum_notes"><html><body><p>No metadata should be produced on output, except
6840 for application-bound buffer data. If no
6841 application-bound streams exist, no frame should be
6842 placed in the output frame queue. If such streams
6843 exist, a frame should be placed on the output queue
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006844 with null metadata but with the necessary output buffer
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006845 information. Timestamp information should still be
6846 included with any output stream buffers<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006847 </li>
6848 <li>
6849 <span class="entry_type_enum_name">FULL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006850 <span class="entry_type_enum_notes"><html><body><p>All metadata should be produced. Statistics will
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006851 only be produced if they are separately
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006852 enabled<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006853 </li>
6854 </ul>
6855
6856 </td> <!-- entry_type -->
6857
6858 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006859 <html><body><p>How much metadata to produce on
6860output<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006861 </td>
6862
6863 <td class="entry_units">
6864 </td>
6865
6866 <td class="entry_range">
6867 </td>
6868
6869 <td class="entry_notes">
6870 </td>
6871
6872 <td class="entry_tags">
6873 </td>
6874
6875 </tr> <!-- end of entry -->
6876
6877
6878 <tr class="entry" id="controls_android.request.outputStreams">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006879 <td class="entry_name"><html><body><p>android.request.outputStreams<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006880 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006881 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006882 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006883
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006884 <span class="entry_type_array">
6885 n
6886 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006887 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006888
6889
6890 </td> <!-- entry_type -->
6891
6892 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006893 <html><body><p>Lists which camera output streams image data
6894from this capture must be sent to<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006895 </td>
6896
6897 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006898 <html><body><p>List of camera stream IDs<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006899 </td>
6900
6901 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006902 <html><body><p>List must only include streams that have been
6903 created<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006904 </td>
6905
6906 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006907 <html><body><p>If no output streams are listed, then the image
6908data should simply be discarded. The image data must
6909still be captured for metadata and statistics production,
6910and the lens and flash must operate as requested.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006911 </td>
6912
6913 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006914 <ul class="entry_tags">
6915 <li><a href="#tag_HAL2">HAL2</a></li>
6916 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006917 </td>
6918
6919 </tr> <!-- end of entry -->
6920
6921
6922 <tr class="entry" id="controls_android.request.type">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006923 <td class="entry_name"><html><body><p>android.request.type<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006924 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006925 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006926
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006927 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006928
6929 <ul class="entry_type_enum">
6930 <li>
6931 <span class="entry_type_enum_name">CAPTURE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006932 <span class="entry_type_enum_notes"><html><body><p>Capture a new image from the imaging hardware,
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006933 and process it according to the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006934 settings<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006935 </li>
6936 <li>
6937 <span class="entry_type_enum_name">REPROCESS</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006938 <span class="entry_type_enum_notes"><html><body><p>Process previously captured data; the
6939 android.request.inputStream parameter determines the
6940 source reprocessing stream. TODO: Mark dynamic metadata
6941 needed for reprocessing with [RP]<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006942 </li>
6943 </ul>
6944
6945 </td> <!-- entry_type -->
6946
6947 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006948 <html><body><p>The type of the request; either CAPTURE or
6949REPROCESS. For HAL3, this tag is redundant.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006950 </td>
6951
6952 <td class="entry_units">
6953 </td>
6954
6955 <td class="entry_range">
6956 </td>
6957
6958 <td class="entry_notes">
6959 </td>
6960
6961 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006962 <ul class="entry_tags">
6963 <li><a href="#tag_HAL2">HAL2</a></li>
6964 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006965 </td>
6966
6967 </tr> <!-- end of entry -->
6968
6969
6970
6971 <!-- end of kind -->
6972 </tbody>
6973 <tr><td colspan="7" class="kind">static</td></tr>
6974
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006975 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006976 <tr>
6977 <th class="th_name">Property Name</th>
6978 <th class="th_type">Type</th>
6979 <th class="th_description">Description</th>
6980 <th class="th_units">Units</th>
6981 <th class="th_range">Range</th>
6982 <th class="th_notes">Notes</th>
6983 <th class="th_tags">Tags</th>
6984 </tr>
6985 </thead>
6986
6987 <tbody>
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998 <tr class="entry" id="static_android.request.maxNumOutputStreams">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08006999 <td class="entry_name"><html><body><p>android.request.maxNumOutputStreams<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007000 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007001 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007002 <span class="entry_type_container">x</span>
7003
7004 <span class="entry_type_array">
7005 3
7006 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007007 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007008
7009
7010 </td> <!-- entry_type -->
7011
7012 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007013 <html><body><p>How many output streams can be allocated at
7014the same time for each type of stream<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007015 </td>
7016
7017 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007018 <html><body><p>The number of raw sensor streams; the number of
7019 processed, uncompressed streams; and the number of
7020 JPEG-compressed streams<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007021 </td>
7022
7023 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007024 <html><body><p>&gt;=1 for Raw and JPEG-compressed stream. &gt;= 3
7025 for processed, uncompressed streams<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007026 </td>
7027
7028 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007029 <html><body><p>Video snapshot with preview callbacks requires 3
7030processed streams (preview, record, app callbacks) and
7031one JPEG stream (snapshot)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007032 </td>
7033
7034 <td class="entry_tags">
7035 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007036 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007037 </ul>
7038 </td>
7039
7040 </tr> <!-- end of entry -->
7041
7042
7043 <tr class="entry" id="static_android.request.maxNumReprocessStreams">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007044 <td class="entry_name"><html><body><p>android.request.maxNumReprocessStreams<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007045 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007046 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007047 <span class="entry_type_container">x</span>
7048
7049 <span class="entry_type_array">
7050 1
7051 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007052 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007053
7054
7055 </td> <!-- entry_type -->
7056
7057 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007058 <html><body><p>How many reprocessing streams of any type
7059can be allocated at the same time<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007060 </td>
7061
7062 <td class="entry_units">
7063 </td>
7064
7065 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007066 <html><body><p>&gt;= 1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007067 </td>
7068
7069 <td class="entry_notes">
7070 </td>
7071
7072 <td class="entry_tags">
7073 </td>
7074
7075 </tr> <!-- end of entry -->
7076
7077
7078
7079 <!-- end of kind -->
7080 </tbody>
7081 <tr><td colspan="7" class="kind">dynamic</td></tr>
7082
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007083 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007084 <tr>
7085 <th class="th_name">Property Name</th>
7086 <th class="th_type">Type</th>
7087 <th class="th_description">Description</th>
7088 <th class="th_units">Units</th>
7089 <th class="th_range">Range</th>
7090 <th class="th_notes">Notes</th>
7091 <th class="th_tags">Tags</th>
7092 </tr>
7093 </thead>
7094
7095 <tbody>
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106 <tr class="entry" id="dynamic_android.request.frameCount">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007107 <td class="entry_name"><html><body><p>android.request.frameCount<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007108 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007109 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007110
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007111 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007112
7113
7114 </td> <!-- entry_type -->
7115
7116 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007117 <html><body><p>A frame counter set by the framework. This value monotonically
7118increases with every new result (that is, each new result has a unique
7119frameCount value).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007120 </td>
7121
7122 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007123 <html><body><p>count of frames<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007124 </td>
7125
7126 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007127 <html><body><p>&gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007128 </td>
7129
7130 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007131 <html><body><p>Reset on release()<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007132 </td>
7133
7134 <td class="entry_tags">
7135 </td>
7136
7137 </tr> <!-- end of entry -->
7138
7139
7140 <tr class="entry" id="dynamic_android.request.id">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007141 <td class="entry_name"><html><body><p>android.request.id<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007142 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007143 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007144
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007145 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007146
7147
7148 </td> <!-- entry_type -->
7149
7150 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007151 <html><body><p>An application-specified ID for the current
7152request. Must be maintained unchanged in output
7153frame<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007154 </td>
7155
7156 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007157 <html><body><p>arbitrary integer assigned by application<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007158 </td>
7159
7160 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007161 <html><body><p>Any int<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007162 </td>
7163
7164 <td class="entry_notes">
7165 </td>
7166
7167 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007168 <ul class="entry_tags">
7169 <li><a href="#tag_V1">V1</a></li>
7170 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007171 </td>
7172
7173 </tr> <!-- end of entry -->
7174
7175
7176 <tr class="entry" id="dynamic_android.request.metadataMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007177 <td class="entry_name"><html><body><p>android.request.metadataMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007178 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007179 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007180
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007181 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007182
7183 <ul class="entry_type_enum">
7184 <li>
7185 <span class="entry_type_enum_name">NONE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007186 <span class="entry_type_enum_notes"><html><body><p>No metadata should be produced on output, except
7187 for application-bound buffer data. If no
7188 application-bound streams exist, no frame should be
7189 placed in the output frame queue. If such streams
7190 exist, a frame should be placed on the output queue
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007191 with null metadata but with the necessary output buffer
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007192 information. Timestamp information should still be
7193 included with any output stream buffers<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007194 </li>
7195 <li>
7196 <span class="entry_type_enum_name">FULL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007197 <span class="entry_type_enum_notes"><html><body><p>All metadata should be produced. Statistics will
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007198 only be produced if they are separately
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007199 enabled<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007200 </li>
7201 </ul>
7202
7203 </td> <!-- entry_type -->
7204
7205 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007206 <html><body><p>How much metadata to produce on
7207output<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007208 </td>
7209
7210 <td class="entry_units">
7211 </td>
7212
7213 <td class="entry_range">
7214 </td>
7215
7216 <td class="entry_notes">
7217 </td>
7218
7219 <td class="entry_tags">
7220 </td>
7221
7222 </tr> <!-- end of entry -->
7223
7224
7225 <tr class="entry" id="dynamic_android.request.outputStreams">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007226 <td class="entry_name"><html><body><p>android.request.outputStreams<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007227 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07007228 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007229 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007230
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007231 <span class="entry_type_array">
7232 n
7233 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007234 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007235
7236
7237 </td> <!-- entry_type -->
7238
7239 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007240 <html><body><p>Lists which camera output streams image data
7241from this capture must be sent to<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007242 </td>
7243
7244 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007245 <html><body><p>List of camera stream IDs<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007246 </td>
7247
7248 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007249 <html><body><p>List must only include streams that have been
7250 created<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007251 </td>
7252
7253 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007254 <html><body><p>If no output streams are listed, then the image
7255data should simply be discarded. The image data must
7256still be captured for metadata and statistics production,
7257and the lens and flash must operate as requested.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007258 </td>
7259
7260 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007261 <ul class="entry_tags">
7262 <li><a href="#tag_HAL2">HAL2</a></li>
7263 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007264 </td>
7265
7266 </tr> <!-- end of entry -->
7267
7268
7269
7270 <!-- end of kind -->
7271 </tbody>
7272
7273 <!-- end of section -->
7274 <tr><td colspan="7" id="section_scaler" class="section">scaler</td></tr>
7275
7276
7277 <tr><td colspan="7" class="kind">controls</td></tr>
7278
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007279 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007280 <tr>
7281 <th class="th_name">Property Name</th>
7282 <th class="th_type">Type</th>
7283 <th class="th_description">Description</th>
7284 <th class="th_units">Units</th>
7285 <th class="th_range">Range</th>
7286 <th class="th_notes">Notes</th>
7287 <th class="th_tags">Tags</th>
7288 </tr>
7289 </thead>
7290
7291 <tbody>
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302 <tr class="entry" id="controls_android.scaler.cropRegion">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007303 <td class="entry_name"><html><body><p>android.scaler.cropRegion<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007304 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007305 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007306 <span class="entry_type_container">x</span>
7307
7308 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007309 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007310 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007311 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007312
7313
7314 </td> <!-- entry_type -->
7315
7316 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007317 <html><body><p>(x, y, width, height).</p>
7318<p>A rectangle with the top-level corner of (x,y) and size
7319(width, height). The region of the sensor that is used for
7320output. Each stream must use this rectangle to produce its
7321output, cropping to a smaller region if necessary to
7322maintain the stream's aspect ratio.</p>
7323<p>HAL2.x uses only (x, y, width)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007324 </td>
7325
7326 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007327 <html><body><p>(x,y) of top-left corner, width and height of region
7328 in pixels; (0,0) is top-left corner of
7329 android.sensor.activeArraySize<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007330 </td>
7331
7332 <td class="entry_range">
7333 </td>
7334
7335 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007336 <html><body><p>Any additional per-stream cropping must be done to
7337maximize the final pixel area of the stream.</p>
7338<p>For example, if the crop region is set to a 4:3 aspect
7339ratio, then 4:3 streams should use the exact crop
7340region. 16:9 streams should further crop vertically
7341(letterbox).</p>
7342<p>Conversely, if the crop region is set to a 16:9, then 4:3
7343outputs should crop horizontally (pillarbox), and 16:9
7344streams should match exactly. These additional crops must
7345be centered within the crop region.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007346<p>The output streams must maintain square pixels at all
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007347times, no matter what the relative aspect ratios of the
7348crop region and the stream are. Negative values for
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007349corner are allowed for raw output if full pixel array is
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007350larger than active pixel array. Width and height may be
7351rounded to nearest larger supportable width, especially
7352for raw output, where only a few fixed scales may be
7353possible. The width and height of the crop region cannot
7354be set to be smaller than floor( activeArraySize.width /
7355android.scaler.maxDigitalZoom ) and floor(
7356activeArraySize.height / android.scaler.maxDigitalZoom),
7357respectively.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007358 </td>
7359
7360 <td class="entry_tags">
7361 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007362 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007363 </ul>
7364 </td>
7365
7366 </tr> <!-- end of entry -->
7367
7368
7369
7370 <!-- end of kind -->
7371 </tbody>
7372 <tr><td colspan="7" class="kind">static</td></tr>
7373
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007374 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007375 <tr>
7376 <th class="th_name">Property Name</th>
7377 <th class="th_type">Type</th>
7378 <th class="th_description">Description</th>
7379 <th class="th_units">Units</th>
7380 <th class="th_range">Range</th>
7381 <th class="th_notes">Notes</th>
7382 <th class="th_tags">Tags</th>
7383 </tr>
7384 </thead>
7385
7386 <tbody>
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397 <tr class="entry" id="static_android.scaler.availableFormats">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007398 <td class="entry_name"><html><body><p>android.scaler.availableFormats<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007399 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007400 <span class="entry_type_name entry_type_name_enum">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007401 <span class="entry_type_container">x</span>
7402
7403 <span class="entry_type_array">
7404 n
7405 </span>
Eino-Ville Talvalad4e240a2013-08-08 12:56:37 -07007406 <span class="entry_type_visibility"> [public as imageFormat]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007407 <div class="entry_type_notes"><html><body><p>values from HAL_PIXEL_FORMAT_* in /system/core/include/system/graphics.h<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007408
7409 <ul class="entry_type_enum">
7410 <li>
7411 <span class="entry_type_enum_name">RAW_SENSOR</span>
7412 <span class="entry_type_enum_value">0x20</span>
7413 </li>
7414 <li>
7415 <span class="entry_type_enum_name">YV12</span>
7416 <span class="entry_type_enum_value">0x32315659</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007417 <span class="entry_type_enum_notes"><html><body><p>YCrCb 4:2:0 Planar<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007418 </li>
7419 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007420 <span class="entry_type_enum_name">YCrCb_420_SP</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007421 <span class="entry_type_enum_value">0x11</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007422 <span class="entry_type_enum_notes"><html><body><p>NV21<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007423 </li>
7424 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007425 <span class="entry_type_enum_name">IMPLEMENTATION_DEFINED</span>
7426 <span class="entry_type_enum_value">0x22</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007427 <span class="entry_type_enum_notes"><html><body><p>Hal Implementation Defined<wbr></wbr></p></body></html></span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007428 </li>
7429 <li>
7430 <span class="entry_type_enum_name">YCbCr_420_888</span>
7431 <span class="entry_type_enum_value">0x23</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007432 <span class="entry_type_enum_notes"><html><body><p>Flexible YUV420 Format<wbr></wbr></p></body></html></span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007433 </li>
7434 <li>
7435 <span class="entry_type_enum_name">BLOB</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007436 <span class="entry_type_enum_value">0x21</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007437 <span class="entry_type_enum_notes"><html><body><p>JPEG<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007438 </li>
7439 </ul>
7440
7441 </td> <!-- entry_type -->
7442
7443 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007444 <html><body><p>List of app-visible formats<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007445 </td>
7446
7447 <td class="entry_units">
7448 </td>
7449
7450 <td class="entry_range">
7451 </td>
7452
7453 <td class="entry_notes">
7454 </td>
7455
7456 <td class="entry_tags">
7457 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007458 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007459 </ul>
7460 </td>
7461
7462 </tr> <!-- end of entry -->
7463
7464
7465 <tr class="entry" id="static_android.scaler.availableJpegMinDurations">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007466 <td class="entry_name"><html><body><p>android.scaler.availableJpegMinDurations<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007467 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007468 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007469 <span class="entry_type_container">x</span>
7470
7471 <span class="entry_type_array">
7472 n
7473 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007474 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007475
7476
7477 </td> <!-- entry_type -->
7478
7479 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007480 <html><body><p>The minimum frame duration that is supported
7481for each resolution in availableJpegSizes. Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007482correspond to the frame duration when only that JPEG
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007483stream is active and captured in a burst, with all
7484processing set to FAST<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007485 </td>
7486
7487 <td class="entry_units">
7488 </td>
7489
7490 <td class="entry_range">
7491 </td>
7492
7493 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007494 <html><body><p>When multiple streams are configured, the minimum
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007495frame duration will be &gt;= max(individual stream min
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007496durations)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007497 </td>
7498
7499 <td class="entry_tags">
7500 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007501 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007502 </ul>
7503 </td>
7504
7505 </tr> <!-- end of entry -->
7506
7507
7508 <tr class="entry" id="static_android.scaler.availableJpegSizes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007509 <td class="entry_name"><html><body><p>android.scaler.availableJpegSizes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007510 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007511 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007512 <span class="entry_type_container">x</span>
7513
7514 <span class="entry_type_array">
7515 n x 2
7516 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007517 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007518
7519
7520 </td> <!-- entry_type -->
7521
7522 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007523 <html><body><p>The resolutions available for output from
7524the JPEG block. Listed as width x height<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007525 </td>
7526
7527 <td class="entry_units">
7528 </td>
7529
7530 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007531 <html><body><p>Must include: - sensor maximum resolution Should
7532 include: - half/quarter max resolution<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007533 </td>
7534
7535 <td class="entry_notes">
7536 </td>
7537
7538 <td class="entry_tags">
7539 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007540 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007541 </ul>
7542 </td>
7543
7544 </tr> <!-- end of entry -->
7545
7546
7547 <tr class="entry" id="static_android.scaler.availableMaxDigitalZoom">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007548 <td class="entry_name"><html><body><p>android.scaler.availableMaxDigitalZoom<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007549 <td class="entry_type">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007550 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007551
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007552 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007553
7554
7555 </td> <!-- entry_type -->
7556
7557 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007558 <html><body><p>The maximum ratio between active area width
7559and crop region width, or between active area height and
7560crop region height, if the crop region height is larger
7561than width<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007562 </td>
7563
7564 <td class="entry_units">
7565 </td>
7566
7567 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007568 <html><body><p>&gt;=1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007569 </td>
7570
7571 <td class="entry_notes">
7572 </td>
7573
7574 <td class="entry_tags">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007575 <ul class="entry_tags">
7576 <li><a href="#tag_BC">BC</a></li>
7577 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007578 </td>
7579
7580 </tr> <!-- end of entry -->
7581
7582
7583 <tr class="entry" id="static_android.scaler.availableProcessedMinDurations">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007584 <td class="entry_name"><html><body><p>android.scaler.availableProcessedMinDurations<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007585 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007586 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007587 <span class="entry_type_container">x</span>
7588
7589 <span class="entry_type_array">
7590 n
7591 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007592 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007593
7594
7595 </td> <!-- entry_type -->
7596
7597 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007598 <html><body><p>The minimum frame duration that is supported
7599for each resolution in availableProcessedSizes. Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007600correspond to the frame duration when only that processed
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007601stream is active, with all processing set to
7602FAST<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007603 </td>
7604
7605 <td class="entry_units">
7606 </td>
7607
7608 <td class="entry_range">
7609 </td>
7610
7611 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007612 <html><body><p>When multiple streams are configured, the minimum
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007613frame duration will be &gt;= max(individual stream min
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007614durations)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007615 </td>
7616
7617 <td class="entry_tags">
7618 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007619 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007620 </ul>
7621 </td>
7622
7623 </tr> <!-- end of entry -->
7624
7625
7626 <tr class="entry" id="static_android.scaler.availableProcessedSizes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007627 <td class="entry_name"><html><body><p>android.scaler.availableProcessedSizes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007628 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007629 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007630 <span class="entry_type_container">x</span>
7631
7632 <span class="entry_type_array">
7633 n x 2
7634 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007635 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007636
7637
7638 </td> <!-- entry_type -->
7639
7640 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007641 <html><body><p>The resolutions available for use with
7642processed output streams, such as YV12, NV12, and
7643platform opaque YUV/RGB streams to the GPU or video
7644encoders. Listed as width, height<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007645 </td>
7646
7647 <td class="entry_units">
7648 </td>
7649
7650 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007651 <html><body><p>Must include: - sensor maximum resolution -
7652 standard QCIF, 240p, 480p, 720p, and 1080p
7653 resolutions<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007654 </td>
7655
7656 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007657 <html><body><p>The actual supported resolution list may be limited by
7658consumer end points for different use cases. For example, for
7659recording use case, the largest supported resolution may be
7660limited by max supported size from encoder, for preview use
7661case, the largest supported resolution may be limited by max
7662resolution SurfaceTexture/SurfaceView can support.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007663 </td>
7664
7665 <td class="entry_tags">
7666 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007667 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007668 </ul>
7669 </td>
7670
7671 </tr> <!-- end of entry -->
7672
7673
7674 <tr class="entry" id="static_android.scaler.availableRawMinDurations">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007675 <td class="entry_name"><html><body><p>android.scaler.availableRawMinDurations<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007676 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007677 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007678 <span class="entry_type_container">x</span>
7679
7680 <span class="entry_type_array">
7681 n
7682 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007683 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007684
7685
7686 </td> <!-- entry_type -->
7687
7688 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007689 <html><body><p>The minimum frame duration that is supported
7690for each raw resolution in availableRawSizes. Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007691correspond to the frame duration when only the raw stream
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007692is active.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007693 </td>
7694
7695 <td class="entry_units">
7696 </td>
7697
7698 <td class="entry_range">
7699 </td>
7700
7701 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007702 <html><body><p>When multiple streams are configured, the minimum
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007703frame duration will be &gt;= max(individual stream min
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007704durations)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007705 </td>
7706
7707 <td class="entry_tags">
7708 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007709 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007710 </ul>
7711 </td>
7712
7713 </tr> <!-- end of entry -->
7714
7715
7716 <tr class="entry" id="static_android.scaler.availableRawSizes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007717 <td class="entry_name"><html><body><p>android.scaler.availableRawSizes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007718 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007719 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007720 <span class="entry_type_container">x</span>
7721
7722 <span class="entry_type_array">
7723 n x 2
7724 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007725 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007726
7727
7728 </td> <!-- entry_type -->
7729
7730 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007731 <html><body><p>The resolutions available for use with raw
7732sensor output streams, listed as width,
7733height<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007734 </td>
7735
7736 <td class="entry_units">
7737 </td>
7738
7739 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007740 <html><body><p>Must include: - sensor maximum resolution<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007741 </td>
7742
7743 <td class="entry_notes">
7744 </td>
7745
7746 <td class="entry_tags">
7747 </td>
7748
7749 </tr> <!-- end of entry -->
7750
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007751
7752
7753 <!-- end of kind -->
7754 </tbody>
7755 <tr><td colspan="7" class="kind">dynamic</td></tr>
7756
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007757 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007758 <tr>
7759 <th class="th_name">Property Name</th>
7760 <th class="th_type">Type</th>
7761 <th class="th_description">Description</th>
7762 <th class="th_units">Units</th>
7763 <th class="th_range">Range</th>
7764 <th class="th_notes">Notes</th>
7765 <th class="th_tags">Tags</th>
7766 </tr>
7767 </thead>
7768
7769 <tbody>
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780 <tr class="entry" id="dynamic_android.scaler.cropRegion">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007781 <td class="entry_name"><html><body><p>android.scaler.cropRegion<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007782 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007783 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007784 <span class="entry_type_container">x</span>
7785
7786 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007787 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007788 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007789 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007790
7791
7792 </td> <!-- entry_type -->
7793
7794 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007795 <html><body><p>(x, y, width, height).</p>
7796<p>A rectangle with the top-level corner of (x,y) and size
7797(width, height). The region of the sensor that is used for
7798output. Each stream must use this rectangle to produce its
7799output, cropping to a smaller region if necessary to
7800maintain the stream's aspect ratio.</p>
7801<p>HAL2.x uses only (x, y, width)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007802 </td>
7803
7804 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007805 <html><body><p>(x,y) of top-left corner, width and height of region
7806 in pixels; (0,0) is top-left corner of
7807 android.sensor.activeArraySize<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007808 </td>
7809
7810 <td class="entry_range">
7811 </td>
7812
7813 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007814 <html><body><p>Any additional per-stream cropping must be done to
7815maximize the final pixel area of the stream.</p>
7816<p>For example, if the crop region is set to a 4:3 aspect
7817ratio, then 4:3 streams should use the exact crop
7818region. 16:9 streams should further crop vertically
7819(letterbox).</p>
7820<p>Conversely, if the crop region is set to a 16:9, then 4:3
7821outputs should crop horizontally (pillarbox), and 16:9
7822streams should match exactly. These additional crops must
7823be centered within the crop region.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007824<p>The output streams must maintain square pixels at all
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007825times, no matter what the relative aspect ratios of the
7826crop region and the stream are. Negative values for
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007827corner are allowed for raw output if full pixel array is
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007828larger than active pixel array. Width and height may be
7829rounded to nearest larger supportable width, especially
7830for raw output, where only a few fixed scales may be
7831possible. The width and height of the crop region cannot
7832be set to be smaller than floor( activeArraySize.width /
7833android.scaler.maxDigitalZoom ) and floor(
7834activeArraySize.height / android.scaler.maxDigitalZoom),
7835respectively.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007836 </td>
7837
7838 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007839 <ul class="entry_tags">
7840 <li><a href="#tag_BC">BC</a></li>
7841 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007842 </td>
7843
7844 </tr> <!-- end of entry -->
7845
7846
7847
7848 <!-- end of kind -->
7849 </tbody>
7850
7851 <!-- end of section -->
7852 <tr><td colspan="7" id="section_sensor" class="section">sensor</td></tr>
7853
7854
7855 <tr><td colspan="7" class="kind">controls</td></tr>
7856
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007857 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007858 <tr>
7859 <th class="th_name">Property Name</th>
7860 <th class="th_type">Type</th>
7861 <th class="th_description">Description</th>
7862 <th class="th_units">Units</th>
7863 <th class="th_range">Range</th>
7864 <th class="th_notes">Notes</th>
7865 <th class="th_tags">Tags</th>
7866 </tr>
7867 </thead>
7868
7869 <tbody>
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880 <tr class="entry" id="controls_android.sensor.exposureTime">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007881 <td class="entry_name"><html><body><p>android.sensor.exposureTime<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007882 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007883 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007884
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007885 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007886
7887
7888 </td> <!-- entry_type -->
7889
7890 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007891 <html><body><p>Duration each pixel is exposed to
7892light.</p>
7893<p>If the sensor can't expose this exact duration, it should shorten the
7894duration exposed to the nearest possible value (rather than expose longer).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007895 </td>
7896
7897 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007898 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007899 </td>
7900
7901 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007902 <html><body><p>android.sensor.info.exposureTimeRange<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007903 </td>
7904
7905 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007906 <html><body><p>1/10000 - 30 sec range. No bulb mode<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007907 </td>
7908
7909 <td class="entry_tags">
7910 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007911 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007912 </ul>
7913 </td>
7914
7915 </tr> <!-- end of entry -->
7916
7917
7918 <tr class="entry" id="controls_android.sensor.frameDuration">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007919 <td class="entry_name"><html><body><p>android.sensor.frameDuration<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007920 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007921 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007922
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007923 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007924
7925
7926 </td> <!-- entry_type -->
7927
7928 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007929 <html><body><p>Duration from start of frame exposure to
7930start of next frame exposure<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007931 </td>
7932
7933 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007934 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007935 </td>
7936
7937 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007938 <html><body><p>see android.sensor.info.maxFrameDuration,
7939 android.scaler.info.availableMinFrameDurations<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007940 </td>
7941
7942 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007943 <html><body><p>Exposure time has priority, so duration is set to
7944max(duration, exposure time + overhead)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007945 </td>
7946
7947 <td class="entry_tags">
7948 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007949 <li><a href="#tag_V1">V1</a></li>
7950 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007951 </ul>
7952 </td>
7953
7954 </tr> <!-- end of entry -->
7955
7956
7957 <tr class="entry" id="controls_android.sensor.sensitivity">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007958 <td class="entry_name"><html><body><p>android.sensor.sensitivity<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007959 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007960 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007961
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007962 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007963
7964
7965 </td> <!-- entry_type -->
7966
7967 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007968 <html><body><p>Gain applied to image data. Must be
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007969implemented through analog gain only if set to values
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007970below 'maximum analog sensitivity'.</p>
7971<p>If the sensor can't apply this exact gain, it should lessen the
7972gain to the nearest possible value (rather than gain more).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007973 </td>
7974
7975 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007976 <html><body><p>ISO arithmetic units<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007977 </td>
7978
7979 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007980 <html><body><p>android.sensor.info.sensitivityRange<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007981 </td>
7982
7983 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08007984 <html><body><p>ISO 12232:2006 REI method<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007985 </td>
7986
7987 <td class="entry_tags">
7988 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007989 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007990 </ul>
7991 </td>
7992
7993 </tr> <!-- end of entry -->
7994
7995
7996
7997 <!-- end of kind -->
7998 </tbody>
7999 <tr><td colspan="7" class="kind">static</td></tr>
8000
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008001 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008002 <tr>
8003 <th class="th_name">Property Name</th>
8004 <th class="th_type">Type</th>
8005 <th class="th_description">Description</th>
8006 <th class="th_units">Units</th>
8007 <th class="th_range">Range</th>
8008 <th class="th_notes">Notes</th>
8009 <th class="th_tags">Tags</th>
8010 </tr>
8011 </thead>
8012
8013 <tbody>
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026 <tr class="entry" id="static_android.sensor.info.activeArraySize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008027 <td class="entry_name"><html><body><p>android.sensor.info.activeArraySize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008028 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008029 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008030 <span class="entry_type_container">x</span>
8031
8032 <span class="entry_type_array">
8033 4
8034 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07008035 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008036 <div class="entry_type_notes"><html><body><p>Four ints defining the active pixel rectangle<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008037
8038
8039 </td> <!-- entry_type -->
8040
8041 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008042 <html><body><p>Area of raw data which corresponds to only
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008043active pixels; smaller or equal to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008044pixelArraySize.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008045 </td>
8046
8047 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008048 <html><body><p>xmin, ymin, width, height. Top left of full
8049 pixel array is (0,0)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008050 </td>
8051
8052 <td class="entry_range">
8053 </td>
8054
8055 <td class="entry_notes">
8056 </td>
8057
8058 <td class="entry_tags">
8059 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008060 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008061 </ul>
8062 </td>
8063
8064 </tr> <!-- end of entry -->
8065
8066
Zhijun He69fc0ea2013-07-17 09:42:58 -07008067 <tr class="entry" id="static_android.sensor.info.sensitivityRange">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008068 <td class="entry_name"><html><body><p>android.sensor.info.sensitivityRange<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008069 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008070 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008071 <span class="entry_type_container">x</span>
8072
8073 <span class="entry_type_array">
Zhijun He69fc0ea2013-07-17 09:42:58 -07008074 2
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008075 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008076 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008077 <div class="entry_type_notes"><html><body><p>Range of supported sensitivities<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008078
8079
8080 </td> <!-- entry_type -->
8081
8082 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008083 <html><body><p>Range of valid sensitivities<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008084 </td>
8085
8086 <td class="entry_units">
8087 </td>
8088
8089 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008090 <html><body><p>Min = 1600<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008091 </td>
8092
8093 <td class="entry_notes">
8094 </td>
8095
8096 <td class="entry_tags">
8097 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008098 <li><a href="#tag_BC">BC</a></li>
8099 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008100 </ul>
8101 </td>
8102
8103 </tr> <!-- end of entry -->
8104
8105
8106 <tr class="entry" id="static_android.sensor.info.colorFilterArrangement">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008107 <td class="entry_name"><html><body><p>android.sensor.info.colorFilterArrangement<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008108 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008109 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008110
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008111 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008112
8113 <ul class="entry_type_enum">
8114 <li>
8115 <span class="entry_type_enum_name">RGGB</span>
8116 </li>
8117 <li>
8118 <span class="entry_type_enum_name">GRBG</span>
8119 </li>
8120 <li>
8121 <span class="entry_type_enum_name">GBRG</span>
8122 </li>
8123 <li>
8124 <span class="entry_type_enum_name">BGGR</span>
8125 </li>
8126 <li>
8127 <span class="entry_type_enum_name">RGB</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008128 <span class="entry_type_enum_notes"><html><body><p>Sensor is not Bayer; output has 3 16-bit
8129 values for each pixel, instead of just 1 16-bit value
8130 per pixel.<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008131 </li>
8132 </ul>
8133
8134 </td> <!-- entry_type -->
8135
8136 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008137 <html><body><p>Arrangement of color filters on sensor;
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008138represents the colors in the top-left 2x2 section of
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008139the sensor, in reading order<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008140 </td>
8141
8142 <td class="entry_units">
8143 </td>
8144
8145 <td class="entry_range">
8146 </td>
8147
8148 <td class="entry_notes">
8149 </td>
8150
8151 <td class="entry_tags">
8152 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008153 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008154 </ul>
8155 </td>
8156
8157 </tr> <!-- end of entry -->
8158
8159
8160 <tr class="entry" id="static_android.sensor.info.exposureTimeRange">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008161 <td class="entry_name"><html><body><p>android.sensor.info.exposureTimeRange<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008162 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008163 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008164 <span class="entry_type_container">x</span>
8165
8166 <span class="entry_type_array">
8167 2
8168 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008169 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008170 <div class="entry_type_notes"><html><body><p>nanoseconds<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008171
8172
8173 </td> <!-- entry_type -->
8174
8175 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008176 <html><body><p>Range of valid exposure
8177times<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008178 </td>
8179
8180 <td class="entry_units">
8181 </td>
8182
8183 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008184 <html><body><p>Min = 30e9 (30
8185 sec)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008186 </td>
8187
8188 <td class="entry_notes">
8189 </td>
8190
8191 <td class="entry_tags">
8192 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008193 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008194 </ul>
8195 </td>
8196
8197 </tr> <!-- end of entry -->
8198
8199
8200 <tr class="entry" id="static_android.sensor.info.maxFrameDuration">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008201 <td class="entry_name"><html><body><p>android.sensor.info.maxFrameDuration<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008202 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008203 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008204
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008205 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008206
8207
8208 </td> <!-- entry_type -->
8209
8210 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008211 <html><body><p>Maximum possible frame duration (minimum frame
8212rate)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008213 </td>
8214
8215 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008216 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008217 </td>
8218
8219 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008220 <html><body><p>&gt;= 30e9<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008221 </td>
8222
8223 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008224 <html><body><p>Minimum duration is a function of resolution,
8225processing settings. See
8226android.scaler.availableProcessedMinDurations
8227android.scaler.availableJpegMinDurations
8228android.scaler.availableRawMinDurations<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008229 </td>
8230
8231 <td class="entry_tags">
8232 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008233 <li><a href="#tag_BC">BC</a></li>
8234 <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.info.physicalSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008242 <td class="entry_name"><html><body><p>android.sensor.info.physicalSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008243 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008244 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008245 <span class="entry_type_container">x</span>
8246
8247 <span class="entry_type_array">
8248 2
8249 </span>
Timothy Knightec817d52013-08-16 16:15:29 -07008250 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008251 <div class="entry_type_notes"><html><body><p>width x height in millimeters<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008252
8253
8254 </td> <!-- entry_type -->
8255
8256 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008257 <html><body><p>The physical dimensions of the full pixel
8258array<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008259 </td>
8260
8261 <td class="entry_units">
8262 </td>
8263
8264 <td class="entry_range">
8265 </td>
8266
8267 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008268 <html><body><p>Needed for FOV calculation for old API<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008269 </td>
8270
8271 <td class="entry_tags">
8272 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008273 <li><a href="#tag_V1">V1</a></li>
8274 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008275 </ul>
8276 </td>
8277
8278 </tr> <!-- end of entry -->
8279
8280
8281 <tr class="entry" id="static_android.sensor.info.pixelArraySize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008282 <td class="entry_name"><html><body><p>android.sensor.info.pixelArraySize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008283 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008284 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008285 <span class="entry_type_container">x</span>
8286
8287 <span class="entry_type_array">
8288 2
8289 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07008290 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008291
8292
8293 </td> <!-- entry_type -->
8294
8295 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008296 <html><body><p>Dimensions of full pixel array, possibly
8297including black calibration pixels<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008298 </td>
8299
8300 <td class="entry_units">
8301 </td>
8302
8303 <td class="entry_range">
8304 </td>
8305
8306 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008307 <html><body><p>Maximum output resolution for raw format must
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008308match this in
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008309android.scaler.info.availableSizesPerFormat<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008310 </td>
8311
8312 <td class="entry_tags">
8313 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008314 <li><a href="#tag_DNG">DNG</a></li>
8315 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008316 </ul>
8317 </td>
8318
8319 </tr> <!-- end of entry -->
8320
8321
8322 <tr class="entry" id="static_android.sensor.info.whiteLevel">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008323 <td class="entry_name"><html><body><p>android.sensor.info.whiteLevel<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008324 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008325 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008326
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008327 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008328
8329
8330 </td> <!-- entry_type -->
8331
8332 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008333 <html><body><p>Maximum raw value output by
8334sensor<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008335 </td>
8336
8337 <td class="entry_units">
8338 </td>
8339
8340 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008341 <html><body><p>&gt; 1024 (10-bit output)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008342 </td>
8343
8344 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008345 <html><body><p>Defines sensor bit depth (10-14 bits is
8346expected)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008347 </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
8359
8360
8361 <tr class="entry" id="static_android.sensor.baseGainFactor">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008362 <td class="entry_name"><html><body><p>android.sensor.baseGainFactor<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008363 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008364 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008365
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008366 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008367
8368
8369 </td> <!-- entry_type -->
8370
8371 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008372 <html><body><p>Gain factor from electrons to raw units when
8373ISO=100<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008374 </td>
8375
8376 <td class="entry_units">
8377 </td>
8378
8379 <td class="entry_range">
8380 </td>
8381
8382 <td class="entry_notes">
8383 </td>
8384
8385 <td class="entry_tags">
8386 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008387 <li><a href="#tag_V1">V1</a></li>
Alex Rayef40ad62013-10-01 17:52:33 -07008388 <li><a href="#tag_FULL">FULL</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008389 </ul>
8390 </td>
8391
8392 </tr> <!-- end of entry -->
8393
8394
8395 <tr class="entry" id="static_android.sensor.blackLevelPattern">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008396 <td class="entry_name"><html><body><p>android.sensor.blackLevelPattern<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008397 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008398 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008399 <span class="entry_type_container">x</span>
8400
8401 <span class="entry_type_array">
8402 4
8403 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008404 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008405 <div class="entry_type_notes"><html><body><p>2x2 raw count block<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008406
8407
8408 </td> <!-- entry_type -->
8409
8410 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008411 <html><body><p>A fixed black level offset for each of the
8412Bayer mosaic channels<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008413 </td>
8414
8415 <td class="entry_units">
8416 </td>
8417
8418 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008419 <html><body><p>&gt;= 0 each<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008420 </td>
8421
8422 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008423 <html><body><p>As per DNG BlackLevelRepeatDim / BlackLevel
8424tags<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008425 </td>
8426
8427 <td class="entry_tags">
8428 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008429 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008430 </ul>
8431 </td>
8432
8433 </tr> <!-- end of entry -->
8434
8435
8436 <tr class="entry" id="static_android.sensor.calibrationTransform1">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008437 <td class="entry_name"><html><body><p>android.sensor.calibrationTransform1<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008438 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008439 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008440 <span class="entry_type_container">x</span>
8441
8442 <span class="entry_type_array">
8443 9
8444 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008445 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008446 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008447
8448
8449 </td> <!-- entry_type -->
8450
8451 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008452 <html><body><p>Per-device calibration on top of color space
8453transform 1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008454 </td>
8455
8456 <td class="entry_units">
8457 </td>
8458
8459 <td class="entry_range">
8460 </td>
8461
8462 <td class="entry_notes">
8463 </td>
8464
8465 <td class="entry_tags">
8466 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008467 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008468 </ul>
8469 </td>
8470
8471 </tr> <!-- end of entry -->
8472
8473
8474 <tr class="entry" id="static_android.sensor.calibrationTransform2">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008475 <td class="entry_name"><html><body><p>android.sensor.calibrationTransform2<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008476 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008477 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008478 <span class="entry_type_container">x</span>
8479
8480 <span class="entry_type_array">
8481 9
8482 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008483 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008484 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008485
8486
8487 </td> <!-- entry_type -->
8488
8489 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008490 <html><body><p>Per-device calibration on top of color space
8491transform 2<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008492 </td>
8493
8494 <td class="entry_units">
8495 </td>
8496
8497 <td class="entry_range">
8498 </td>
8499
8500 <td class="entry_notes">
8501 </td>
8502
8503 <td class="entry_tags">
8504 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008505 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008506 </ul>
8507 </td>
8508
8509 </tr> <!-- end of entry -->
8510
8511
8512 <tr class="entry" id="static_android.sensor.colorTransform1">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008513 <td class="entry_name"><html><body><p>android.sensor.colorTransform1<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008514 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008515 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008516 <span class="entry_type_container">x</span>
8517
8518 <span class="entry_type_array">
8519 9
8520 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008521 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008522 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008523
8524
8525 </td> <!-- entry_type -->
8526
8527 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008528 <html><body><p>Linear mapping from XYZ (D50) color space to
8529reference linear sensor color, for first reference
8530illuminant<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008531 </td>
8532
8533 <td class="entry_units">
8534 </td>
8535
8536 <td class="entry_range">
8537 </td>
8538
8539 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008540 <html><body><p>Use as follows XYZ = inv(transform) * clip( (raw -
8541black level(raw) ) / ( white level - max black level) ).
8542At least in the simple case<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008543 </td>
8544
8545 <td class="entry_tags">
8546 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008547 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008548 </ul>
8549 </td>
8550
8551 </tr> <!-- end of entry -->
8552
8553
8554 <tr class="entry" id="static_android.sensor.colorTransform2">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008555 <td class="entry_name"><html><body><p>android.sensor.colorTransform2<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008556 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008557 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008558 <span class="entry_type_container">x</span>
8559
8560 <span class="entry_type_array">
8561 9
8562 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008563 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008564 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008565
8566
8567 </td> <!-- entry_type -->
8568
8569 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008570 <html><body><p>Linear mapping from XYZ (D50) color space to
8571reference linear sensor color, for second reference
8572illuminant<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008573 </td>
8574
8575 <td class="entry_units">
8576 </td>
8577
8578 <td class="entry_range">
8579 </td>
8580
8581 <td class="entry_notes">
8582 </td>
8583
8584 <td class="entry_tags">
8585 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008586 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008587 </ul>
8588 </td>
8589
8590 </tr> <!-- end of entry -->
8591
8592
8593 <tr class="entry" id="static_android.sensor.forwardMatrix1">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008594 <td class="entry_name"><html><body><p>android.sensor.forwardMatrix1<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008595 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008596 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008597 <span class="entry_type_container">x</span>
8598
8599 <span class="entry_type_array">
8600 9
8601 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008602 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008603 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008604
8605
8606 </td> <!-- entry_type -->
8607
8608 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008609 <html><body><p>Used by DNG for better WB
8610adaptation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008611 </td>
8612
8613 <td class="entry_units">
8614 </td>
8615
8616 <td class="entry_range">
8617 </td>
8618
8619 <td class="entry_notes">
8620 </td>
8621
8622 <td class="entry_tags">
8623 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008624 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008625 </ul>
8626 </td>
8627
8628 </tr> <!-- end of entry -->
8629
8630
8631 <tr class="entry" id="static_android.sensor.forwardMatrix2">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008632 <td class="entry_name"><html><body><p>android.sensor.forwardMatrix2<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008633 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008634 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008635 <span class="entry_type_container">x</span>
8636
8637 <span class="entry_type_array">
8638 9
8639 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008640 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008641 <div class="entry_type_notes"><html><body><p>3x3 matrix in row-major-order<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008642
8643
8644 </td> <!-- entry_type -->
8645
8646 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008647 <html><body><p>Used by DNG for better WB
8648adaptation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008649 </td>
8650
8651 <td class="entry_units">
8652 </td>
8653
8654 <td class="entry_range">
8655 </td>
8656
8657 <td class="entry_notes">
8658 </td>
8659
8660 <td class="entry_tags">
8661 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008662 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008663 </ul>
8664 </td>
8665
8666 </tr> <!-- end of entry -->
8667
8668
8669 <tr class="entry" id="static_android.sensor.maxAnalogSensitivity">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008670 <td class="entry_name"><html><body><p>android.sensor.maxAnalogSensitivity<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008671 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008672 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008673
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008674 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008675
8676
8677 </td> <!-- entry_type -->
8678
8679 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008680 <html><body><p>Maximum sensitivity that is implemented
8681purely through analog gain<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008682 </td>
8683
8684 <td class="entry_units">
8685 </td>
8686
8687 <td class="entry_range">
8688 </td>
8689
8690 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008691 <html><body><p>For android.sensor.sensitivity values less than or
8692equal to this, all applied gain must be analog. For
8693values above this, it can be a mix of analog and
8694digital<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008695 </td>
8696
8697 <td class="entry_tags">
8698 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008699 <li><a href="#tag_V1">V1</a></li>
Alex Rayef40ad62013-10-01 17:52:33 -07008700 <li><a href="#tag_FULL">FULL</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008701 </ul>
8702 </td>
8703
8704 </tr> <!-- end of entry -->
8705
8706
8707 <tr class="entry" id="static_android.sensor.noiseModelCoefficients">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008708 <td class="entry_name"><html><body><p>android.sensor.noiseModelCoefficients<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008709 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008710 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008711 <span class="entry_type_container">x</span>
8712
8713 <span class="entry_type_array">
8714 2
8715 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008716 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008717 <div class="entry_type_notes"><html><body><p>float constants A, B for the noise variance model<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008718
8719
8720 </td> <!-- entry_type -->
8721
8722 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008723 <html><body><p>Estimation of sensor noise
8724characteristics<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008725 </td>
8726
8727 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008728 <html><body><p>var(raw pixel value) = electrons * (baseGainFactor
8729 * iso/100)^2 + A * (baseGainFactor * iso/100)^2 +
8730 B<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008731 </td>
8732
8733 <td class="entry_range">
8734 </td>
8735
8736 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008737 <html><body><p>A represents sensor read noise before analog
8738amplification; B represents noise from A/D conversion and
8739other circuits after amplification. Both noise sources
8740are assumed to be gaussian, independent, and not to vary
8741across the sensor<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008742 </td>
8743
8744 <td class="entry_tags">
8745 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008746 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008747 </ul>
8748 </td>
8749
8750 </tr> <!-- end of entry -->
8751
8752
8753 <tr class="entry" id="static_android.sensor.orientation">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008754 <td class="entry_name"><html><body><p>android.sensor.orientation<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008755 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008756 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008757
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008758 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008759
8760
8761 </td> <!-- entry_type -->
8762
8763 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008764 <html><body><p>Clockwise angle through which the output
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008765image needs to be rotated to be upright on the device
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008766screen in its native orientation. Also defines the
8767direction of rolling shutter readout, which is from top
8768to bottom in the sensor's coordinate system<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008769 </td>
8770
8771 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008772 <html><body><p>degrees clockwise rotation, only multiples of
8773 90<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008774 </td>
8775
8776 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008777 <html><body><p>0,90,180,270<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008778 </td>
8779
8780 <td class="entry_notes">
8781 </td>
8782
8783 <td class="entry_tags">
8784 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008785 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008786 </ul>
8787 </td>
8788
8789 </tr> <!-- end of entry -->
8790
8791
8792 <tr class="entry" id="static_android.sensor.referenceIlluminant1">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008793 <td class="entry_name"><html><body><p>android.sensor.referenceIlluminant1<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008794 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008795 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008796
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008797 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008798
8799 <ul class="entry_type_enum">
8800 <li>
8801 <span class="entry_type_enum_name">DAYLIGHT</span>
8802 <span class="entry_type_enum_value">1</span>
8803 </li>
8804 <li>
8805 <span class="entry_type_enum_name">FLUORESCENT</span>
8806 <span class="entry_type_enum_value">2</span>
8807 </li>
8808 <li>
8809 <span class="entry_type_enum_name">TUNGSTEN</span>
8810 <span class="entry_type_enum_value">3</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008811 <span class="entry_type_enum_notes"><html><body><p>Incandescent light<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008812 </li>
8813 <li>
8814 <span class="entry_type_enum_name">FLASH</span>
8815 <span class="entry_type_enum_value">4</span>
8816 </li>
8817 <li>
8818 <span class="entry_type_enum_name">FINE_WEATHER</span>
8819 <span class="entry_type_enum_value">9</span>
8820 </li>
8821 <li>
8822 <span class="entry_type_enum_name">CLOUDY_WEATHER</span>
8823 <span class="entry_type_enum_value">10</span>
8824 </li>
8825 <li>
8826 <span class="entry_type_enum_name">SHADE</span>
8827 <span class="entry_type_enum_value">11</span>
8828 </li>
8829 <li>
8830 <span class="entry_type_enum_name">DAYLIGHT_FLUORESCENT</span>
8831 <span class="entry_type_enum_value">12</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008832 <span class="entry_type_enum_notes"><html><body><p>D 5700 - 7100K<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008833 </li>
8834 <li>
8835 <span class="entry_type_enum_name">DAY_WHITE_FLUORESCENT</span>
8836 <span class="entry_type_enum_value">13</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008837 <span class="entry_type_enum_notes"><html><body><p>N 4600 - 5400K<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008838 </li>
8839 <li>
8840 <span class="entry_type_enum_name">COOL_WHITE_FLUORESCENT</span>
8841 <span class="entry_type_enum_value">14</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008842 <span class="entry_type_enum_notes"><html><body><p>W 3900 - 4500K<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008843 </li>
8844 <li>
8845 <span class="entry_type_enum_name">WHITE_FLUORESCENT</span>
8846 <span class="entry_type_enum_value">15</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008847 <span class="entry_type_enum_notes"><html><body><p>WW 3200 - 3700K<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008848 </li>
8849 <li>
8850 <span class="entry_type_enum_name">STANDARD_A</span>
8851 <span class="entry_type_enum_value">17</span>
8852 </li>
8853 <li>
8854 <span class="entry_type_enum_name">STANDARD_B</span>
8855 <span class="entry_type_enum_value">18</span>
8856 </li>
8857 <li>
8858 <span class="entry_type_enum_name">STANDARD_C</span>
8859 <span class="entry_type_enum_value">19</span>
8860 </li>
8861 <li>
8862 <span class="entry_type_enum_name">D55</span>
8863 <span class="entry_type_enum_value">20</span>
8864 </li>
8865 <li>
8866 <span class="entry_type_enum_name">D65</span>
8867 <span class="entry_type_enum_value">21</span>
8868 </li>
8869 <li>
8870 <span class="entry_type_enum_name">D75</span>
8871 <span class="entry_type_enum_value">22</span>
8872 </li>
8873 <li>
8874 <span class="entry_type_enum_name">D50</span>
8875 <span class="entry_type_enum_value">23</span>
8876 </li>
8877 <li>
8878 <span class="entry_type_enum_name">ISO_STUDIO_TUNGSTEN</span>
8879 <span class="entry_type_enum_value">24</span>
8880 </li>
8881 </ul>
8882
8883 </td> <!-- entry_type -->
8884
8885 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008886 <html><body><p>Light source used to define transform
88871<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008888 </td>
8889
8890 <td class="entry_units">
8891 </td>
8892
8893 <td class="entry_range">
8894 </td>
8895
8896 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008897 <html><body><p>[EXIF LightSource tag] Must all these be
8898supported? Need CCT for each!<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008899 </td>
8900
8901 <td class="entry_tags">
8902 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008903 <li><a href="#tag_DNG">DNG</a></li>
8904 <li><a href="#tag_EXIF">EXIF</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008905 </ul>
8906 </td>
8907
8908 </tr> <!-- end of entry -->
8909
8910
8911 <tr class="entry" id="static_android.sensor.referenceIlluminant2">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008912 <td class="entry_name"><html><body><p>android.sensor.referenceIlluminant2<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008913 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008914 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008915
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008916 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008917
8918
8919 </td> <!-- entry_type -->
8920
8921 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008922 <html><body><p>Light source used to define transform
89232<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008924 </td>
8925
8926 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008927 <html><body><p>Same as illuminant 1<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008928 </td>
8929
8930 <td class="entry_range">
8931 </td>
8932
8933 <td class="entry_notes">
8934 </td>
8935
8936 <td class="entry_tags">
8937 </td>
8938
8939 </tr> <!-- end of entry -->
8940
8941
8942
8943 <!-- end of kind -->
8944 </tbody>
8945 <tr><td colspan="7" class="kind">dynamic</td></tr>
8946
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008947 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008948 <tr>
8949 <th class="th_name">Property Name</th>
8950 <th class="th_type">Type</th>
8951 <th class="th_description">Description</th>
8952 <th class="th_units">Units</th>
8953 <th class="th_range">Range</th>
8954 <th class="th_notes">Notes</th>
8955 <th class="th_tags">Tags</th>
8956 </tr>
8957 </thead>
8958
8959 <tbody>
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970 <tr class="entry" id="dynamic_android.sensor.exposureTime">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008971 <td class="entry_name"><html><body><p>android.sensor.exposureTime<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008972 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008973 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008974
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008975 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008976
8977
8978 </td> <!-- entry_type -->
8979
8980 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008981 <html><body><p>Duration each pixel is exposed to
8982light.</p>
8983<p>If the sensor can't expose this exact duration, it should shorten the
8984duration exposed to the nearest possible value (rather than expose longer).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008985 </td>
8986
8987 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008988 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008989 </td>
8990
8991 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008992 <html><body><p>android.sensor.info.exposureTimeRange<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008993 </td>
8994
8995 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08008996 <html><body><p>1/10000 - 30 sec range. No bulb mode<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008997 </td>
8998
8999 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009000 <ul class="entry_tags">
9001 <li><a href="#tag_V1">V1</a></li>
9002 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009003 </td>
9004
9005 </tr> <!-- end of entry -->
9006
9007
9008 <tr class="entry" id="dynamic_android.sensor.frameDuration">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009009 <td class="entry_name"><html><body><p>android.sensor.frameDuration<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009010 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009011 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009012
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009013 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009014
9015
9016 </td> <!-- entry_type -->
9017
9018 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009019 <html><body><p>Duration from start of frame exposure to
9020start of next frame exposure<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009021 </td>
9022
9023 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009024 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009025 </td>
9026
9027 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009028 <html><body><p>see android.sensor.info.maxFrameDuration,
9029 android.scaler.info.availableMinFrameDurations<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009030 </td>
9031
9032 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009033 <html><body><p>Exposure time has priority, so duration is set to
9034max(duration, exposure time + overhead)<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009035 </td>
9036
9037 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009038 <ul class="entry_tags">
9039 <li><a href="#tag_V1">V1</a></li>
9040 <li><a href="#tag_BC">BC</a></li>
9041 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009042 </td>
9043
9044 </tr> <!-- end of entry -->
9045
9046
9047 <tr class="entry" id="dynamic_android.sensor.sensitivity">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009048 <td class="entry_name"><html><body><p>android.sensor.sensitivity<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009049 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009050 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009051
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009052 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009053
9054
9055 </td> <!-- entry_type -->
9056
9057 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009058 <html><body><p>Gain applied to image data. Must be
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009059implemented through analog gain only if set to values
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009060below 'maximum analog sensitivity'.</p>
9061<p>If the sensor can't apply this exact gain, it should lessen the
9062gain to the nearest possible value (rather than gain more).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009063 </td>
9064
9065 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009066 <html><body><p>ISO arithmetic units<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009067 </td>
9068
9069 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009070 <html><body><p>android.sensor.info.sensitivityRange<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009071 </td>
9072
9073 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009074 <html><body><p>ISO 12232:2006 REI method<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009075 </td>
9076
9077 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009078 <ul class="entry_tags">
9079 <li><a href="#tag_V1">V1</a></li>
9080 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009081 </td>
9082
9083 </tr> <!-- end of entry -->
9084
9085
9086 <tr class="entry" id="dynamic_android.sensor.timestamp">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009087 <td class="entry_name"><html><body><p>android.sensor.timestamp<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009088 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009089 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009090
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009091 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009092
9093
9094 </td> <!-- entry_type -->
9095
9096 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009097 <html><body><p>Time at start of exposure of first
9098row<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009099 </td>
9100
9101 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009102 <html><body><p>nanoseconds<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009103 </td>
9104
9105 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009106 <html><body><p>&gt; 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009107 </td>
9108
9109 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009110 <html><body><p>Monotonic, should be synced to other timestamps in
9111system<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009112 </td>
9113
9114 <td class="entry_tags">
9115 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009116 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009117 </ul>
9118 </td>
9119
9120 </tr> <!-- end of entry -->
9121
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009122
9123 <tr class="entry" id="dynamic_android.sensor.temperature">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009124 <td class="entry_name"><html><body><p>android.sensor.temperature<wbr></wbr></p></body></html></td>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009125 <td class="entry_type">
9126 <span class="entry_type_name">float</span>
9127
9128 <span class="entry_type_visibility"> [public]</span>
9129
9130
9131 </td> <!-- entry_type -->
9132
9133 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009134 <html><body><p>The temperature of the sensor, sampled at the time
9135exposure began for this frame.</p>
9136<p>The thermal diode being queried should be inside the sensor PCB, or
9137somewhere close to it.<wbr></wbr></p></body></html>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009138 </td>
9139
9140 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009141 <html><body><p>celsius<wbr></wbr></p></body></html>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009142 </td>
9143
9144 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009145 <html><body><p>Optional. This value is missing if no temperature is available.<wbr></wbr></p></body></html>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009146 </td>
9147
9148 <td class="entry_notes">
9149 </td>
9150
9151 <td class="entry_tags">
Alex Rayef40ad62013-10-01 17:52:33 -07009152 <ul class="entry_tags">
9153 <li><a href="#tag_FULL">FULL</a></li>
9154 </ul>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009155 </td>
9156
9157 </tr> <!-- end of entry -->
9158
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009159
9160
9161 <!-- end of kind -->
9162 </tbody>
9163
9164 <!-- end of section -->
9165 <tr><td colspan="7" id="section_shading" class="section">shading</td></tr>
9166
9167
9168 <tr><td colspan="7" class="kind">controls</td></tr>
9169
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009170 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009171 <tr>
9172 <th class="th_name">Property Name</th>
9173 <th class="th_type">Type</th>
9174 <th class="th_description">Description</th>
9175 <th class="th_units">Units</th>
9176 <th class="th_range">Range</th>
9177 <th class="th_notes">Notes</th>
9178 <th class="th_tags">Tags</th>
9179 </tr>
9180 </thead>
9181
9182 <tbody>
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193 <tr class="entry" id="controls_android.shading.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009194 <td class="entry_name"><html><body><p>android.shading.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009195 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009196 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009197
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009198 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009199
9200 <ul class="entry_type_enum">
9201 <li>
9202 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009203 <span class="entry_type_enum_notes"><html><body><p>No shading correction is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009204 </li>
9205 <li>
9206 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009207 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
9208 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009209 </li>
9210 <li>
9211 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009212 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
9213 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009214 </li>
9215 </ul>
9216
9217 </td> <!-- entry_type -->
9218
9219 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009220 <html><body><p>Quality of lens shading correction applied
9221to the image data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009222 </td>
9223
9224 <td class="entry_units">
9225 </td>
9226
9227 <td class="entry_range">
9228 </td>
9229
9230 <td class="entry_notes">
9231 </td>
9232
9233 <td class="entry_tags">
9234 </td>
9235
9236 </tr> <!-- end of entry -->
9237
9238
9239 <tr class="entry" id="controls_android.shading.strength">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009240 <td class="entry_name"><html><body><p>android.shading.strength<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009241 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009242 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009243
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009244 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009245
9246
9247 </td> <!-- entry_type -->
9248
9249 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009250 <html><body><p>Control the amount of shading correction
9251applied to the images<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009252 </td>
9253
9254 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009255 <html><body><p>unitless: 1-10; 10 is full shading
9256 compensation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009257 </td>
9258
9259 <td class="entry_range">
9260 </td>
9261
9262 <td class="entry_notes">
9263 </td>
9264
9265 <td class="entry_tags">
9266 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009267 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009268 </ul>
9269 </td>
9270
9271 </tr> <!-- end of entry -->
9272
9273
9274
9275 <!-- end of kind -->
9276 </tbody>
9277 <tr><td colspan="7" class="kind">dynamic</td></tr>
9278
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009279 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009280 <tr>
9281 <th class="th_name">Property Name</th>
9282 <th class="th_type">Type</th>
9283 <th class="th_description">Description</th>
9284 <th class="th_units">Units</th>
9285 <th class="th_range">Range</th>
9286 <th class="th_notes">Notes</th>
9287 <th class="th_tags">Tags</th>
9288 </tr>
9289 </thead>
9290
9291 <tbody>
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302 <tr class="entry" id="dynamic_android.shading.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009303 <td class="entry_name"><html><body><p>android.shading.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009304 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009305 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009306
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009307 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009308
9309 <ul class="entry_type_enum">
9310 <li>
9311 <span class="entry_type_enum_name">OFF</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009312 <span class="entry_type_enum_notes"><html><body><p>No shading correction is applied<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009313 </li>
9314 <li>
9315 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009316 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
9317 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009318 </li>
9319 <li>
9320 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009321 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
9322 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009323 </li>
9324 </ul>
9325
9326 </td> <!-- entry_type -->
9327
9328 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009329 <html><body><p>Quality of lens shading correction applied
9330to the image data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009331 </td>
9332
9333 <td class="entry_units">
9334 </td>
9335
9336 <td class="entry_range">
9337 </td>
9338
9339 <td class="entry_notes">
9340 </td>
9341
9342 <td class="entry_tags">
9343 </td>
9344
9345 </tr> <!-- end of entry -->
9346
9347
9348
9349 <!-- end of kind -->
9350 </tbody>
9351
9352 <!-- end of section -->
9353 <tr><td colspan="7" id="section_statistics" class="section">statistics</td></tr>
9354
9355
9356 <tr><td colspan="7" class="kind">controls</td></tr>
9357
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009358 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009359 <tr>
9360 <th class="th_name">Property Name</th>
9361 <th class="th_type">Type</th>
9362 <th class="th_description">Description</th>
9363 <th class="th_units">Units</th>
9364 <th class="th_range">Range</th>
9365 <th class="th_notes">Notes</th>
9366 <th class="th_tags">Tags</th>
9367 </tr>
9368 </thead>
9369
9370 <tbody>
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381 <tr class="entry" id="controls_android.statistics.faceDetectMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009382 <td class="entry_name"><html><body><p>android.statistics.faceDetectMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009383 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009384 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009385
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009386 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009387
9388 <ul class="entry_type_enum">
9389 <li>
9390 <span class="entry_type_enum_name">OFF</span>
9391 </li>
9392 <li>
9393 <span class="entry_type_enum_name">SIMPLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009394 <span class="entry_type_enum_notes"><html><body><p>Optional Return rectangle and confidence
9395 only<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009396 </li>
9397 <li>
9398 <span class="entry_type_enum_name">FULL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009399 <span class="entry_type_enum_notes"><html><body><p>Optional Return all face
9400 metadata<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009401 </li>
9402 </ul>
9403
9404 </td> <!-- entry_type -->
9405
9406 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009407 <html><body><p>State of the face detector
9408unit<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009409 </td>
9410
9411 <td class="entry_units">
9412 </td>
9413
9414 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009415 <html><body><p>android.statistics.info.availableFaceDetectModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009416 </td>
9417
9418 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009419 <html><body><p>Whether face detection is enabled, and whether it
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009420should output just the basic fields or the full set of
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009421fields. Value must be one of the
9422android.statistics.info.availableFaceDetectModes.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009423 </td>
9424
9425 <td class="entry_tags">
9426 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009427 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009428 </ul>
9429 </td>
9430
9431 </tr> <!-- end of entry -->
9432
9433
9434 <tr class="entry" id="controls_android.statistics.histogramMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009435 <td class="entry_name"><html><body><p>android.statistics.histogramMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009436 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009437 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009438
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009439 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009440
9441 <ul class="entry_type_enum">
9442 <li>
9443 <span class="entry_type_enum_name">OFF</span>
9444 </li>
9445 <li>
9446 <span class="entry_type_enum_name">ON</span>
9447 </li>
9448 </ul>
9449
9450 </td> <!-- entry_type -->
9451
9452 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009453 <html><body><p>Operating mode for histogram
9454generation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009455 </td>
9456
9457 <td class="entry_units">
9458 </td>
9459
9460 <td class="entry_range">
9461 </td>
9462
9463 <td class="entry_notes">
9464 </td>
9465
9466 <td class="entry_tags">
9467 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009468 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009469 </ul>
9470 </td>
9471
9472 </tr> <!-- end of entry -->
9473
9474
9475 <tr class="entry" id="controls_android.statistics.sharpnessMapMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009476 <td class="entry_name"><html><body><p>android.statistics.sharpnessMapMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009477 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009478 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009479
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009480 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009481
9482 <ul class="entry_type_enum">
9483 <li>
9484 <span class="entry_type_enum_name">OFF</span>
9485 </li>
9486 <li>
9487 <span class="entry_type_enum_name">ON</span>
9488 </li>
9489 </ul>
9490
9491 </td> <!-- entry_type -->
9492
9493 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009494 <html><body><p>Operating mode for sharpness map
9495generation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009496 </td>
9497
9498 <td class="entry_units">
9499 </td>
9500
9501 <td class="entry_range">
9502 </td>
9503
9504 <td class="entry_notes">
9505 </td>
9506
9507 <td class="entry_tags">
9508 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009509 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009510 </ul>
9511 </td>
9512
9513 </tr> <!-- end of entry -->
9514
Zhijun He69fc0ea2013-07-17 09:42:58 -07009515
9516 <tr class="entry" id="controls_android.statistics.lensShadingMapMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009517 <td class="entry_name"><html><body><p>android.statistics.lensShadingMapMode<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -07009518 <td class="entry_type">
9519 <span class="entry_type_name entry_type_name_enum">byte</span>
9520
9521 <span class="entry_type_visibility"> [public]</span>
9522
9523 <ul class="entry_type_enum">
9524 <li>
9525 <span class="entry_type_enum_name">OFF</span>
9526 </li>
9527 <li>
9528 <span class="entry_type_enum_name">ON</span>
9529 </li>
9530 </ul>
9531
9532 </td> <!-- entry_type -->
9533
9534 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009535 <html><body><p>Whether the HAL needs to output the lens
9536shading map in output result metadata<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -07009537 </td>
9538
9539 <td class="entry_units">
9540 </td>
9541
9542 <td class="entry_range">
9543 </td>
9544
9545 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009546 <html><body><p>When set to ON,
9547android.statistics.lensShadingMap must be provided in
9548the output result metadata.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -07009549 </td>
9550
9551 <td class="entry_tags">
9552 </td>
9553
9554 </tr> <!-- end of entry -->
9555
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009556
9557
9558 <!-- end of kind -->
9559 </tbody>
9560 <tr><td colspan="7" class="kind">static</td></tr>
9561
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009562 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009563 <tr>
9564 <th class="th_name">Property Name</th>
9565 <th class="th_type">Type</th>
9566 <th class="th_description">Description</th>
9567 <th class="th_units">Units</th>
9568 <th class="th_range">Range</th>
9569 <th class="th_notes">Notes</th>
9570 <th class="th_tags">Tags</th>
9571 </tr>
9572 </thead>
9573
9574 <tbody>
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587 <tr class="entry" id="static_android.statistics.info.availableFaceDetectModes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009588 <td class="entry_name"><html><body><p>android.statistics.info.availableFaceDetectModes<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009589 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009590 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009591 <span class="entry_type_container">x</span>
9592
9593 <span class="entry_type_array">
9594 n
9595 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009596 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009597 <div class="entry_type_notes"><html><body><p>List of enums from android.statistics.faceDetectMode<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009598
9599
9600 </td> <!-- entry_type -->
9601
9602 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009603 <html><body><p>Which face detection modes are available,
9604if any<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009605 </td>
9606
9607 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009608 <html><body><p>List of enum:
Zhijun He69fc0ea2013-07-17 09:42:58 -07009609 OFF
9610 SIMPLE
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009611 FULL<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009612 </td>
9613
9614 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009615 </td>
9616
9617 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009618 <html><body><p>OFF means face detection is disabled, it must
9619be included in the list.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009620<p>SIMPLE means the device supports the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009621android.statistics.faceRectangles and
9622android.statistics.faceScores outputs.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009623<p>FULL means the device additionally supports the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009624android.statistics.faceIds and
9625android.statistics.faceLandmarks outputs.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009626 </td>
9627
9628 <td class="entry_tags">
9629 </td>
9630
9631 </tr> <!-- end of entry -->
9632
9633
9634 <tr class="entry" id="static_android.statistics.info.histogramBucketCount">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009635 <td class="entry_name"><html><body><p>android.statistics.info.histogramBucketCount<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009636 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009637 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009638
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009639 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009640
9641
9642 </td> <!-- entry_type -->
9643
9644 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009645 <html><body><p>Number of histogram buckets
9646supported<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009647 </td>
9648
9649 <td class="entry_units">
9650 </td>
9651
9652 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009653 <html><body><p>&gt;= 64<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009654 </td>
9655
9656 <td class="entry_notes">
9657 </td>
9658
9659 <td class="entry_tags">
9660 </td>
9661
9662 </tr> <!-- end of entry -->
9663
9664
9665 <tr class="entry" id="static_android.statistics.info.maxFaceCount">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009666 <td class="entry_name"><html><body><p>android.statistics.info.maxFaceCount<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009667 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009668 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009669
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009670 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009671
9672
9673 </td> <!-- entry_type -->
9674
9675 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009676 <html><body><p>Maximum number of simultaneously detectable
9677faces<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009678 </td>
9679
9680 <td class="entry_units">
9681 </td>
9682
9683 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009684 <html><body><p>&gt;= 4 if availableFaceDetectionModes lists
9685 modes besides OFF, otherwise 0<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009686 </td>
9687
9688 <td class="entry_notes">
9689 </td>
9690
9691 <td class="entry_tags">
9692 </td>
9693
9694 </tr> <!-- end of entry -->
9695
9696
9697 <tr class="entry" id="static_android.statistics.info.maxHistogramCount">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009698 <td class="entry_name"><html><body><p>android.statistics.info.maxHistogramCount<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009699 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009700 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009701
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009702 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009703
9704
9705 </td> <!-- entry_type -->
9706
9707 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009708 <html><body><p>Maximum value possible for a histogram
9709bucket<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009710 </td>
9711
9712 <td class="entry_units">
9713 </td>
9714
9715 <td class="entry_range">
9716 </td>
9717
9718 <td class="entry_notes">
9719 </td>
9720
9721 <td class="entry_tags">
9722 </td>
9723
9724 </tr> <!-- end of entry -->
9725
9726
9727 <tr class="entry" id="static_android.statistics.info.maxSharpnessMapValue">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009728 <td class="entry_name"><html><body><p>android.statistics.info.maxSharpnessMapValue<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009729 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009730 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009731
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009732 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009733
9734
9735 </td> <!-- entry_type -->
9736
9737 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009738 <html><body><p>Maximum value possible for a sharpness map
9739region.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009740 </td>
9741
9742 <td class="entry_units">
9743 </td>
9744
9745 <td class="entry_range">
9746 </td>
9747
9748 <td class="entry_notes">
9749 </td>
9750
9751 <td class="entry_tags">
9752 </td>
9753
9754 </tr> <!-- end of entry -->
9755
9756
9757 <tr class="entry" id="static_android.statistics.info.sharpnessMapSize">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009758 <td class="entry_name"><html><body><p>android.statistics.info.sharpnessMapSize<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009759 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009760 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009761 <span class="entry_type_container">x</span>
9762
9763 <span class="entry_type_array">
9764 2
9765 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009766 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009767 <div class="entry_type_notes"><html><body><p>width x height<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009768
9769
9770 </td> <!-- entry_type -->
9771
9772 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009773 <html><body><p>Dimensions of the sharpness
9774map<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009775 </td>
9776
9777 <td class="entry_units">
9778 </td>
9779
9780 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009781 <html><body><p>Must be at least 32 x 32<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009782 </td>
9783
9784 <td class="entry_notes">
9785 </td>
9786
9787 <td class="entry_tags">
9788 </td>
9789
9790 </tr> <!-- end of entry -->
9791
9792
9793
9794
9795
9796
9797 <!-- end of kind -->
9798 </tbody>
9799 <tr><td colspan="7" class="kind">dynamic</td></tr>
9800
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009801 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009802 <tr>
9803 <th class="th_name">Property Name</th>
9804 <th class="th_type">Type</th>
9805 <th class="th_description">Description</th>
9806 <th class="th_units">Units</th>
9807 <th class="th_range">Range</th>
9808 <th class="th_notes">Notes</th>
9809 <th class="th_tags">Tags</th>
9810 </tr>
9811 </thead>
9812
9813 <tbody>
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824 <tr class="entry" id="dynamic_android.statistics.faceDetectMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009825 <td class="entry_name"><html><body><p>android.statistics.faceDetectMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009826 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009827 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009828
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009829 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009830
9831 <ul class="entry_type_enum">
9832 <li>
9833 <span class="entry_type_enum_name">OFF</span>
9834 </li>
9835 <li>
9836 <span class="entry_type_enum_name">SIMPLE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009837 <span class="entry_type_enum_notes"><html><body><p>Optional Return rectangle and confidence
9838 only<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009839 </li>
9840 <li>
9841 <span class="entry_type_enum_name">FULL</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009842 <span class="entry_type_enum_notes"><html><body><p>Optional Return all face
9843 metadata<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009844 </li>
9845 </ul>
9846
9847 </td> <!-- entry_type -->
9848
9849 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009850 <html><body><p>State of the face detector
9851unit<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009852 </td>
9853
9854 <td class="entry_units">
9855 </td>
9856
9857 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009858 <html><body><p>android.statistics.info.availableFaceDetectModes<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009859 </td>
9860
9861 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009862 <html><body><p>Whether face detection is enabled, and whether it
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009863should output just the basic fields or the full set of
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009864fields. Value must be one of the
9865android.statistics.info.availableFaceDetectModes.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009866 </td>
9867
9868 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009869 <ul class="entry_tags">
9870 <li><a href="#tag_BC">BC</a></li>
9871 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009872 </td>
9873
9874 </tr> <!-- end of entry -->
9875
9876
9877 <tr class="entry" id="dynamic_android.statistics.faceIds">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009878 <td class="entry_name"><html><body><p>android.statistics.faceIds<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009879 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009880 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009881 <span class="entry_type_container">x</span>
9882
9883 <span class="entry_type_array">
9884 n
9885 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -07009886 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009887
9888
9889 </td> <!-- entry_type -->
9890
9891 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009892 <html><body><p>List of unique IDs for detected
9893faces<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009894 </td>
9895
9896 <td class="entry_units">
9897 </td>
9898
9899 <td class="entry_range">
9900 </td>
9901
9902 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009903 <html><body><p>Only available if faceDetectMode == FULL<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009904 </td>
9905
9906 <td class="entry_tags">
9907 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009908 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009909 </ul>
9910 </td>
9911
9912 </tr> <!-- end of entry -->
9913
9914
9915 <tr class="entry" id="dynamic_android.statistics.faceLandmarks">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009916 <td class="entry_name"><html><body><p>android.statistics.faceLandmarks<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009917 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009918 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009919 <span class="entry_type_container">x</span>
9920
9921 <span class="entry_type_array">
9922 n x 6
9923 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -07009924 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009925 <div class="entry_type_notes"><html><body><p>(leftEyeX, leftEyeY, rightEyeX, rightEyeY, mouthX, mouthY)<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009926
9927
9928 </td> <!-- entry_type -->
9929
9930 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009931 <html><body><p>List of landmarks for detected
9932faces<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009933 </td>
9934
9935 <td class="entry_units">
9936 </td>
9937
9938 <td class="entry_range">
9939 </td>
9940
9941 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009942 <html><body><p>Only available if faceDetectMode == FULL<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009943 </td>
9944
9945 <td class="entry_tags">
9946 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009947 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009948 </ul>
9949 </td>
9950
9951 </tr> <!-- end of entry -->
9952
9953
9954 <tr class="entry" id="dynamic_android.statistics.faceRectangles">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009955 <td class="entry_name"><html><body><p>android.statistics.faceRectangles<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009956 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009957 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009958 <span class="entry_type_container">x</span>
9959
9960 <span class="entry_type_array">
9961 n x 4
9962 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -07009963 <span class="entry_type_visibility"> [hidden as rectangle]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009964 <div class="entry_type_notes"><html><body><p>(xmin, ymin, xmax, ymax). (0,0) is top-left of active pixel area<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009965
9966
9967 </td> <!-- entry_type -->
9968
9969 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009970 <html><body><p>List of the bounding rectangles for detected
9971faces<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009972 </td>
9973
9974 <td class="entry_units">
9975 </td>
9976
9977 <td class="entry_range">
9978 </td>
9979
9980 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009981 <html><body><p>Only available if faceDetectMode != OFF<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009982 </td>
9983
9984 <td class="entry_tags">
9985 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009986 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009987 </ul>
9988 </td>
9989
9990 </tr> <!-- end of entry -->
9991
9992
9993 <tr class="entry" id="dynamic_android.statistics.faceScores">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -08009994 <td class="entry_name"><html><body><p>android.statistics.faceScores<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009995 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009996 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009997 <span class="entry_type_container">x</span>
9998
9999 <span class="entry_type_array">
10000 n
10001 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -070010002 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010003
10004
10005 </td> <!-- entry_type -->
10006
10007 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010008 <html><body><p>List of the face confidence scores for
10009detected faces<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010010 </td>
10011
10012 <td class="entry_units">
10013 </td>
10014
10015 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010016 <html><body><p>1-100<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010017 </td>
10018
10019 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010020 <html><body><p>Only available if faceDetectMode != OFF. The value should be
10021meaningful (for example, setting 100 at all times is illegal).<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010022 </td>
10023
10024 <td class="entry_tags">
10025 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010026 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010027 </ul>
10028 </td>
10029
10030 </tr> <!-- end of entry -->
10031
10032
10033 <tr class="entry" id="dynamic_android.statistics.histogram">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010034 <td class="entry_name"><html><body><p>android.statistics.histogram<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010035 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010036 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010037 <span class="entry_type_container">x</span>
10038
10039 <span class="entry_type_array">
10040 n x 3
10041 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010042 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010043 <div class="entry_type_notes"><html><body><p>count of pixels for each color channel that fall into each histogram bucket, scaled to be between 0 and maxHistogramCount<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010044
10045
10046 </td> <!-- entry_type -->
10047
10048 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010049 <html><body><p>A 3-channel histogram based on the raw
10050sensor data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010051 </td>
10052
10053 <td class="entry_units">
10054 </td>
10055
10056 <td class="entry_range">
10057 </td>
10058
10059 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010060 <html><body><p>The k'th bucket (0-based) covers the input range
10061(with w = android.sensor.info.whiteLevel) of [ k * w/N,
10062(k + 1) * w / N ). If only a monochrome sharpness map is
10063supported, all channels should have the same data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010064 </td>
10065
10066 <td class="entry_tags">
10067 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010068 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010069 </ul>
10070 </td>
10071
10072 </tr> <!-- end of entry -->
10073
10074
10075 <tr class="entry" id="dynamic_android.statistics.histogramMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010076 <td class="entry_name"><html><body><p>android.statistics.histogramMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010077 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010078 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010079
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010080 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010081
10082 <ul class="entry_type_enum">
10083 <li>
10084 <span class="entry_type_enum_name">OFF</span>
10085 </li>
10086 <li>
10087 <span class="entry_type_enum_name">ON</span>
10088 </li>
10089 </ul>
10090
10091 </td> <!-- entry_type -->
10092
10093 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010094 <html><body><p>Operating mode for histogram
10095generation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010096 </td>
10097
10098 <td class="entry_units">
10099 </td>
10100
10101 <td class="entry_range">
10102 </td>
10103
10104 <td class="entry_notes">
10105 </td>
10106
10107 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010108 <ul class="entry_tags">
10109 <li><a href="#tag_V1">V1</a></li>
10110 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010111 </td>
10112
10113 </tr> <!-- end of entry -->
10114
10115
10116 <tr class="entry" id="dynamic_android.statistics.sharpnessMap">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010117 <td class="entry_name"><html><body><p>android.statistics.sharpnessMap<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010118 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010119 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010120 <span class="entry_type_container">x</span>
10121
10122 <span class="entry_type_array">
10123 n x m x 3
10124 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010125 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010126 <div class="entry_type_notes"><html><body><p>estimated sharpness for each region of the input image. Normalized to be between 0 and maxSharpnessMapValue. Higher values mean sharper (better focused)<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010127
10128
10129 </td> <!-- entry_type -->
10130
10131 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010132 <html><body><p>A 3-channel sharpness map, based on the raw
10133sensor data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010134 </td>
10135
10136 <td class="entry_units">
10137 </td>
10138
10139 <td class="entry_range">
10140 </td>
10141
10142 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010143 <html><body><p>If only a monochrome sharpness map is supported,
10144all channels should have the same data<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010145 </td>
10146
10147 <td class="entry_tags">
10148 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010149 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010150 </ul>
10151 </td>
10152
10153 </tr> <!-- end of entry -->
10154
10155
10156 <tr class="entry" id="dynamic_android.statistics.sharpnessMapMode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010157 <td class="entry_name"><html><body><p>android.statistics.sharpnessMapMode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010158 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010159 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010160
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010161 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010162
10163 <ul class="entry_type_enum">
10164 <li>
10165 <span class="entry_type_enum_name">OFF</span>
10166 </li>
10167 <li>
10168 <span class="entry_type_enum_name">ON</span>
10169 </li>
10170 </ul>
10171
10172 </td> <!-- entry_type -->
10173
10174 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010175 <html><body><p>Operating mode for sharpness map
10176generation<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010177 </td>
10178
10179 <td class="entry_units">
10180 </td>
10181
10182 <td class="entry_range">
10183 </td>
10184
10185 <td class="entry_notes">
10186 </td>
10187
10188 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010189 <ul class="entry_tags">
10190 <li><a href="#tag_V1">V1</a></li>
10191 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010192 </td>
10193
10194 </tr> <!-- end of entry -->
10195
Zhijun He69fc0ea2013-07-17 09:42:58 -070010196
10197 <tr class="entry" id="dynamic_android.statistics.lensShadingMap">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010198 <td class="entry_name"><html><body><p>android.statistics.lensShadingMap<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010199 <td class="entry_type">
10200 <span class="entry_type_name">float</span>
10201 <span class="entry_type_container">x</span>
10202
10203 <span class="entry_type_array">
10204 4 x n x m
10205 </span>
10206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010207 <div class="entry_type_notes"><html><body><p>2D array of float gain factors per channel to correct lens shading<wbr></wbr></p></body></html></div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010208
10209
10210 </td> <!-- entry_type -->
10211
10212 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010213 <html><body><p>The shading map is a low-resolution floating-point map
10214that lists the coefficients used to correct for vignetting, for each
10215Bayer color channel.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010216 </td>
10217
10218 <td class="entry_units">
10219 </td>
10220
10221 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010222 <html><body><p>Each gain factor is &gt;= 1<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010223 </td>
10224
10225 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010226 <html><body><p>The least shaded section of the image should have a gain factor
10227of 1; all other sections should have gains above 1.</p>
10228<p>When android.colorCorrection.mode = TRANSFORM_MATRIX, the map
10229must take into account the colorCorrection settings.</p>
10230<p>The shading map is for the entire active pixel array, and is not
10231affected by the crop region specified in the request. Each shading map
10232entry is the value of the shading compensation map over a specific
10233pixel on the sensor. Specifically, with a (N x M) resolution shading
10234map, and an active pixel array size (W x H), shading map entry
10235(x,y) ϵ (0 ... N-1, 0 ... M-1) is the value of the shading map at
10236pixel ( ((W-1)/(N-1)) * x, ((H-1)/(M-1)) * y) for the four color channels.
10237The map is assumed to be bilinearly interpolated between the sample points.</p>
10238<p>The channel order is [R, Geven, Godd, B], where Geven is the green
10239channel for the even rows of a Bayer pattern, and Godd is the odd rows.
10240The shading map is stored in a fully interleaved format, and its size
10241is provided in the camera static metadata by android.lens.info.shadingMapSize.</p>
10242<p>The shading map should have on the order of 30-40 rows and columns,
10243and must be smaller than 64x64.</p>
10244<p>As an example, given a very small map defined as:</p>
10245<pre><code>android.lens.info.shadingMapSize = [ 4, 3 ]
10246android.statistics.lensShadingMap =
10247[ 1.3, 1.2, 1.15, 1.2, 1.2, 1.2, 1.15, 1.2,
10248 1.1, 1.2, 1.2, 1.2, 1.3, 1.2, 1.3, 1.3,
10249 1.2, 1.2, 1.25, 1.1, 1.1, 1.1, 1.1, 1.0,
10250 1.0, 1.0, 1.0, 1.0, 1.2, 1.3, 1.25, 1.2,
10251 1.3, 1.2, 1.2, 1.3, 1.2, 1.15, 1.1, 1.2,
10252 1.2, 1.1, 1.0, 1.2, 1.3, 1.15, 1.2, 1.3 ]
10253</code></pre>
10254<p>The low-resolution scaling map images for each channel are
10255(displayed using nearest-neighbor interpolation):</p>
10256<p><img alt="Red lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/red_shading.png"/>
10257<img alt="Green (even rows) lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/green_e_shading.png"/>
10258<img alt="Green (odd rows) lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/green_o_shading.png"/>
10259<img alt="Blue lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/blue_shading.png"/></p>
10260<p>As a visualization only, inverting the full-color map to recover an
10261image of a gray wall (using bicubic interpolation for visual quality) as captured by the sensor gives:</p>
10262<wbr></wbr><p><img alt="Image of a uniform white wall (inverse shading map)" src="images/camera2/metadata/android.statistics.lensShadingMap/inv_shading.png"/></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010263 </td>
10264
10265 <td class="entry_tags">
10266 </td>
10267
10268 </tr> <!-- end of entry -->
10269
10270
10271 <tr class="entry" id="dynamic_android.statistics.predictedColorGains">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010272 <td class="entry_name"><html><body><p>android.statistics.predictedColorGains<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010273 <td class="entry_type">
10274 <span class="entry_type_name">float</span>
10275 <span class="entry_type_container">x</span>
10276
10277 <span class="entry_type_array">
10278 4
10279 </span>
10280 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010281 <div class="entry_type_notes"><html><body><p>A 1D array of floats for 4 color channel gains<wbr></wbr></p></body></html></div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010282
10283
10284 </td> <!-- entry_type -->
10285
10286 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010287 <html><body><p>The best-fit color channel gains calculated
10288by the HAL's statistics units for the current output frame<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010289 </td>
10290
10291 <td class="entry_units">
10292 </td>
10293
10294 <td class="entry_range">
10295 </td>
10296
10297 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010298 <html><body><p>This may be different than the gains used for this frame,
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010299since statistics processing on data from a new frame
10300typically completes after the transform has already been
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010301applied to that frame.</p>
10302<p>The 4 channel gains are defined in Bayer domain,
10303see android.colorCorrection.gains for details.</p>
10304<p>This value should always be calculated by the AWB block,
10305regardless of the android.control.* current values.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010306 </td>
10307
10308 <td class="entry_tags">
10309 </td>
10310
10311 </tr> <!-- end of entry -->
10312
10313
10314 <tr class="entry" id="dynamic_android.statistics.predictedColorTransform">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010315 <td class="entry_name"><html><body><p>android.statistics.predictedColorTransform<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010316 <td class="entry_type">
10317 <span class="entry_type_name">rational</span>
10318 <span class="entry_type_container">x</span>
10319
10320 <span class="entry_type_array">
10321 3 x 3
10322 </span>
10323 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010324 <div class="entry_type_notes"><html><body><p>3x3 rational matrix in row-major order<wbr></wbr></p></body></html></div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010325
10326
10327 </td> <!-- entry_type -->
10328
10329 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010330 <html><body><p>The best-fit color transform matrix estimate
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010331calculated by the HAL's statistics units for the current
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010332output frame<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010333 </td>
10334
10335 <td class="entry_units">
10336 </td>
10337
10338 <td class="entry_range">
10339 </td>
10340
10341 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010342 <html><body><p>The HAL must provide the estimate from its
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010343statistics unit on the white balance transforms to use
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010344for the next frame. These are the values the HAL believes
10345are the best fit for the current output frame. This may
10346be different than the transform used for this frame, since
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010347statistics processing on data from a new frame typically
10348completes after the transform has already been applied to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010349that frame.</p>
10350<p>These estimates must be provided for all frames, even if
10351capture settings and color transforms are set by the application.</p>
10352<p>This value should always be calculated by the AWB block,
10353regardless of the android.control.* current values.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010354 </td>
10355
10356 <td class="entry_tags">
10357 </td>
10358
10359 </tr> <!-- end of entry -->
10360
10361
10362 <tr class="entry" id="dynamic_android.statistics.sceneFlicker">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010363 <td class="entry_name"><html><body><p>android.statistics.sceneFlicker<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010364 <td class="entry_type">
10365 <span class="entry_type_name entry_type_name_enum">byte</span>
10366
10367 <span class="entry_type_visibility"> [public]</span>
10368
10369 <ul class="entry_type_enum">
10370 <li>
10371 <span class="entry_type_enum_name">NONE</span>
10372 </li>
10373 <li>
10374 <span class="entry_type_enum_name">50HZ</span>
10375 </li>
10376 <li>
10377 <span class="entry_type_enum_name">60HZ</span>
10378 </li>
10379 </ul>
10380
10381 </td> <!-- entry_type -->
10382
10383 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010384 <html><body><p>The HAL estimated scene illumination lighting
10385frequency<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010386 </td>
10387
10388 <td class="entry_units">
10389 </td>
10390
10391 <td class="entry_range">
10392 </td>
10393
10394 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010395 <html><body><p>Report NONE if there doesn't appear to be flickering
10396illumination<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010397 </td>
10398
10399 <td class="entry_tags">
10400 </td>
10401
10402 </tr> <!-- end of entry -->
10403
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010404
10405
10406 <!-- end of kind -->
10407 </tbody>
10408
10409 <!-- end of section -->
10410 <tr><td colspan="7" id="section_tonemap" class="section">tonemap</td></tr>
10411
10412
10413 <tr><td colspan="7" class="kind">controls</td></tr>
10414
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010415 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010416 <tr>
10417 <th class="th_name">Property Name</th>
10418 <th class="th_type">Type</th>
10419 <th class="th_description">Description</th>
10420 <th class="th_units">Units</th>
10421 <th class="th_range">Range</th>
10422 <th class="th_notes">Notes</th>
10423 <th class="th_tags">Tags</th>
10424 </tr>
10425 </thead>
10426
10427 <tbody>
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438 <tr class="entry" id="controls_android.tonemap.curveBlue">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010439 <td class="entry_name"><html><body><p>android.tonemap.curveBlue<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010440 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010441 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010442 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010443
Zhijun He704d1282013-08-19 15:26:33 -070010444 <span class="entry_type_array">
10445 n x 2
10446 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010447 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010448 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010449
10450
10451 </td> <!-- entry_type -->
10452
10453 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010454 <html><body><p>Table mapping blue input values to output
10455values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010456 </td>
10457
10458 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010459 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010460 </td>
10461
10462 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010463 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010464 </td>
10465
10466 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010467 <html><body><p>Tonemapping / contrast / gamma curve for the blue
10468channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
10469<p>See android.tonemap.curveRed for more details.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010470 </td>
10471
10472 <td class="entry_tags">
10473 </td>
10474
10475 </tr> <!-- end of entry -->
10476
10477
10478 <tr class="entry" id="controls_android.tonemap.curveGreen">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010479 <td class="entry_name"><html><body><p>android.tonemap.curveGreen<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010480 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010481 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010482 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010483
Zhijun He704d1282013-08-19 15:26:33 -070010484 <span class="entry_type_array">
10485 n x 2
10486 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010487 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010488 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010489
10490
10491 </td> <!-- entry_type -->
10492
10493 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010494 <html><body><p>Table mapping green input values to output
10495values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010496 </td>
10497
10498 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010499 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010500 </td>
10501
10502 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010503 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010504 </td>
10505
10506 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010507 <html><body><p>Tonemapping / contrast / gamma curve for the green
10508channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
10509<p>See android.tonemap.curveRed for more details.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010510 </td>
10511
10512 <td class="entry_tags">
10513 </td>
10514
10515 </tr> <!-- end of entry -->
10516
10517
10518 <tr class="entry" id="controls_android.tonemap.curveRed">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010519 <td class="entry_name"><html><body><p>android.tonemap.curveRed<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010520 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010521 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010522 <span class="entry_type_container">x</span>
10523
10524 <span class="entry_type_array">
10525 n x 2
10526 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010527 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010528 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010529
10530
10531 </td> <!-- entry_type -->
10532
10533 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010534 <html><body><p>Table mapping red input values to output
10535values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010536 </td>
10537
10538 <td class="entry_units">
10539 </td>
10540
10541 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010542 <html><body><p>0-1 on input and output coordinates.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010543 </td>
10544
10545 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010546 <html><body><p>Tonemapping / contrast / gamma curve for the red
10547channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010548<p>Since the input and output ranges may vary depending on
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010549the camera pipeline, the input and output pixel values
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010550are represented by normalized floating-point values
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010551between 0 and 1, with 0 == black and 1 == white.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010552<p>The curve should be linearly interpolated between the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010553defined points. The points will be listed in increasing
10554order of P_IN. For example, if the array is: [0.0, 0.0,
105550.3, 0.5, 1.0, 1.0], then the input-&gt;output mapping
10556for a few sample points would be: 0 -&gt; 0, 0.15 -&gt;
105570.25, 0.3 -&gt; 0.5, 0.5 -&gt; 0.64<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010558 </td>
10559
10560 <td class="entry_tags">
10561 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010562 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010563 </ul>
10564 </td>
10565
10566 </tr> <!-- end of entry -->
10567
10568
10569 <tr class="entry" id="controls_android.tonemap.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010570 <td class="entry_name"><html><body><p>android.tonemap.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010571 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010572 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010573
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010574 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010575
10576 <ul class="entry_type_enum">
10577 <li>
10578 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010579 <span class="entry_type_enum_notes"><html><body><p>Use the tone mapping curve specified in
10580 android.tonemap.curve<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010581 </li>
10582 <li>
10583 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010584 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
10585 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010586 </li>
10587 <li>
10588 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010589 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
10590 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010591 </li>
10592 </ul>
10593
10594 </td> <!-- entry_type -->
10595
10596 <td class="entry_description">
10597 </td>
10598
10599 <td class="entry_units">
10600 </td>
10601
10602 <td class="entry_range">
10603 </td>
10604
10605 <td class="entry_notes">
10606 </td>
10607
10608 <td class="entry_tags">
10609 </td>
10610
10611 </tr> <!-- end of entry -->
10612
10613
10614
10615 <!-- end of kind -->
10616 </tbody>
10617 <tr><td colspan="7" class="kind">static</td></tr>
10618
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010619 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010620 <tr>
10621 <th class="th_name">Property Name</th>
10622 <th class="th_type">Type</th>
10623 <th class="th_description">Description</th>
10624 <th class="th_units">Units</th>
10625 <th class="th_range">Range</th>
10626 <th class="th_notes">Notes</th>
10627 <th class="th_tags">Tags</th>
10628 </tr>
10629 </thead>
10630
10631 <tbody>
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642 <tr class="entry" id="static_android.tonemap.maxCurvePoints">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010643 <td class="entry_name"><html><body><p>android.tonemap.maxCurvePoints<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010644 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010645 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010646
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010647 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010648
10649
10650 </td> <!-- entry_type -->
10651
10652 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010653 <html><body><p>Maximum number of supported points in the
10654tonemap curve<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010655 </td>
10656
10657 <td class="entry_units">
10658 </td>
10659
10660 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010661 <html><body><p>&gt;= 128<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010662 </td>
10663
10664 <td class="entry_notes">
10665 </td>
10666
10667 <td class="entry_tags">
10668 </td>
10669
10670 </tr> <!-- end of entry -->
10671
10672
10673
10674 <!-- end of kind -->
10675 </tbody>
10676 <tr><td colspan="7" class="kind">dynamic</td></tr>
10677
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010678 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010679 <tr>
10680 <th class="th_name">Property Name</th>
10681 <th class="th_type">Type</th>
10682 <th class="th_description">Description</th>
10683 <th class="th_units">Units</th>
10684 <th class="th_range">Range</th>
10685 <th class="th_notes">Notes</th>
10686 <th class="th_tags">Tags</th>
10687 </tr>
10688 </thead>
10689
10690 <tbody>
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701 <tr class="entry" id="dynamic_android.tonemap.curveBlue">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010702 <td class="entry_name"><html><body><p>android.tonemap.curveBlue<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010703 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010704 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010705 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010706
Zhijun He704d1282013-08-19 15:26:33 -070010707 <span class="entry_type_array">
10708 n x 2
10709 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010710 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010711 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010712
10713
10714 </td> <!-- entry_type -->
10715
10716 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010717 <html><body><p>Table mapping blue input values to output
10718values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010719 </td>
10720
10721 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010722 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010723 </td>
10724
10725 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010726 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010727 </td>
10728
10729 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010730 <html><body><p>Tonemapping / contrast / gamma curve for the blue
10731channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
10732<p>See android.tonemap.curveRed for more details.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010733 </td>
10734
10735 <td class="entry_tags">
10736 </td>
10737
10738 </tr> <!-- end of entry -->
10739
10740
10741 <tr class="entry" id="dynamic_android.tonemap.curveGreen">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010742 <td class="entry_name"><html><body><p>android.tonemap.curveGreen<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010743 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010744 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010745 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010746
Zhijun He704d1282013-08-19 15:26:33 -070010747 <span class="entry_type_array">
10748 n x 2
10749 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010750 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010751 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010752
10753
10754 </td> <!-- entry_type -->
10755
10756 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010757 <html><body><p>Table mapping green input values to output
10758values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010759 </td>
10760
10761 <td class="entry_units">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010762 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010763 </td>
10764
10765 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010766 <html><body><p>same as android.tonemap.curveRed<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010767 </td>
10768
10769 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010770 <html><body><p>Tonemapping / contrast / gamma curve for the green
10771channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
10772<p>See android.tonemap.curveRed for more details.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010773 </td>
10774
10775 <td class="entry_tags">
10776 </td>
10777
10778 </tr> <!-- end of entry -->
10779
10780
10781 <tr class="entry" id="dynamic_android.tonemap.curveRed">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010782 <td class="entry_name"><html><body><p>android.tonemap.curveRed<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010783 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010784 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010785 <span class="entry_type_container">x</span>
10786
10787 <span class="entry_type_array">
10788 n x 2
10789 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010790 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010791 <div class="entry_type_notes"><html><body><p>1D array of float pairs (P_IN, P_OUT). The maximum number of pairs is specified by android.tonemap.maxCurvePoints.<wbr></wbr></p></body></html></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010792
10793
10794 </td> <!-- entry_type -->
10795
10796 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010797 <html><body><p>Table mapping red input values to output
10798values<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010799 </td>
10800
10801 <td class="entry_units">
10802 </td>
10803
10804 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010805 <html><body><p>0-1 on input and output coordinates.<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010806 </td>
10807
10808 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010809 <html><body><p>Tonemapping / contrast / gamma curve for the red
10810channel, to use when android.tonemap.mode is CONTRAST_CURVE.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010811<p>Since the input and output ranges may vary depending on
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010812the camera pipeline, the input and output pixel values
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010813are represented by normalized floating-point values
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010814between 0 and 1, with 0 == black and 1 == white.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010815<p>The curve should be linearly interpolated between the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010816defined points. The points will be listed in increasing
10817order of P_IN. For example, if the array is: [0.0, 0.0,
108180.3, 0.5, 1.0, 1.0], then the input-&gt;output mapping
10819for a few sample points would be: 0 -&gt; 0, 0.15 -&gt;
108200.25, 0.3 -&gt; 0.5, 0.5 -&gt; 0.64<wbr></wbr></p></body></html>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010821 </td>
10822
10823 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010824 <ul class="entry_tags">
10825 <li><a href="#tag_DNG">DNG</a></li>
10826 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010827 </td>
10828
10829 </tr> <!-- end of entry -->
10830
10831
10832 <tr class="entry" id="dynamic_android.tonemap.mode">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010833 <td class="entry_name"><html><body><p>android.tonemap.mode<wbr></wbr></p></body></html></td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010834 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010835 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010836
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010837 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010838
10839 <ul class="entry_type_enum">
10840 <li>
10841 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010842 <span class="entry_type_enum_notes"><html><body><p>Use the tone mapping curve specified in
10843 android.tonemap.curve<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010844 </li>
10845 <li>
10846 <span class="entry_type_enum_name">FAST</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010847 <span class="entry_type_enum_notes"><html><body><p>Must not slow down frame rate relative to raw
10848 bayer output<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010849 </li>
10850 <li>
10851 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010852 <span class="entry_type_enum_notes"><html><body><p>Frame rate may be reduced by high
10853 quality<wbr></wbr></p></body></html></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010854 </li>
10855 </ul>
10856
10857 </td> <!-- entry_type -->
10858
10859 <td class="entry_description">
10860 </td>
10861
10862 <td class="entry_units">
10863 </td>
10864
10865 <td class="entry_range">
10866 </td>
10867
10868 <td class="entry_notes">
10869 </td>
10870
10871 <td class="entry_tags">
10872 </td>
10873
10874 </tr> <!-- end of entry -->
10875
10876
10877
10878 <!-- end of kind -->
10879 </tbody>
10880
10881 <!-- end of section -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010882 <tr><td colspan="7" id="section_led" class="section">led</td></tr>
10883
10884
10885 <tr><td colspan="7" class="kind">controls</td></tr>
10886
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010887 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010888 <tr>
10889 <th class="th_name">Property Name</th>
10890 <th class="th_type">Type</th>
10891 <th class="th_description">Description</th>
10892 <th class="th_units">Units</th>
10893 <th class="th_range">Range</th>
10894 <th class="th_notes">Notes</th>
10895 <th class="th_tags">Tags</th>
10896 </tr>
10897 </thead>
10898
10899 <tbody>
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910 <tr class="entry" id="controls_android.led.transmit">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010911 <td class="entry_name"><html><body><p>android.led.transmit<wbr></wbr></p></body></html></td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010912 <td class="entry_type">
10913 <span class="entry_type_name entry_type_name_enum">byte</span>
10914
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010915 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010916
10917 <ul class="entry_type_enum">
10918 <li>
10919 <span class="entry_type_enum_name">OFF</span>
10920 </li>
10921 <li>
10922 <span class="entry_type_enum_name">ON</span>
10923 </li>
10924 </ul>
10925
10926 </td> <!-- entry_type -->
10927
10928 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010929 <html><body><p>This LED is nominally used to indicate to the user
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010930that the camera is powered on and may be streaming images back to the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010931Application Processor. In certain rare circumstances, the OS may
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010932disable this when video is processed locally and not transmitted to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010933any untrusted applications.</p>
10934<p>In particular, the LED <em>must</em> always be on when the data could be
10935transmitted off the device. The LED <em>should</em> always be on whenever
10936data is stored locally on the device.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010937<p>The LED <em>may</em> be off if a trusted application is using the data that
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010938doesn't violate the above rules.<wbr></wbr></p></body></html>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010939 </td>
10940
10941 <td class="entry_units">
10942 </td>
10943
10944 <td class="entry_range">
10945 </td>
10946
10947 <td class="entry_notes">
10948 </td>
10949
10950 <td class="entry_tags">
10951 </td>
10952
10953 </tr> <!-- end of entry -->
10954
10955
10956
10957 <!-- end of kind -->
10958 </tbody>
10959 <tr><td colspan="7" class="kind">dynamic</td></tr>
10960
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010961 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010962 <tr>
10963 <th class="th_name">Property Name</th>
10964 <th class="th_type">Type</th>
10965 <th class="th_description">Description</th>
10966 <th class="th_units">Units</th>
10967 <th class="th_range">Range</th>
10968 <th class="th_notes">Notes</th>
10969 <th class="th_tags">Tags</th>
10970 </tr>
10971 </thead>
10972
10973 <tbody>
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984 <tr class="entry" id="dynamic_android.led.transmit">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080010985 <td class="entry_name"><html><body><p>android.led.transmit<wbr></wbr></p></body></html></td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010986 <td class="entry_type">
10987 <span class="entry_type_name entry_type_name_enum">byte</span>
10988
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010989 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010990
10991 <ul class="entry_type_enum">
10992 <li>
10993 <span class="entry_type_enum_name">OFF</span>
10994 </li>
10995 <li>
10996 <span class="entry_type_enum_name">ON</span>
10997 </li>
10998 </ul>
10999
11000 </td> <!-- entry_type -->
11001
11002 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011003 <html><body><p>This LED is nominally used to indicate to the user
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011004that the camera is powered on and may be streaming images back to the
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011005Application Processor. In certain rare circumstances, the OS may
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011006disable this when video is processed locally and not transmitted to
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011007any untrusted applications.</p>
11008<p>In particular, the LED <em>must</em> always be on when the data could be
11009transmitted off the device. The LED <em>should</em> always be on whenever
11010data is stored locally on the device.</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011011<p>The LED <em>may</em> be off if a trusted application is using the data that
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011012doesn't violate the above rules.<wbr></wbr></p></body></html>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011013 </td>
11014
11015 <td class="entry_units">
11016 </td>
11017
11018 <td class="entry_range">
11019 </td>
11020
11021 <td class="entry_notes">
11022 </td>
11023
11024 <td class="entry_tags">
11025 </td>
11026
11027 </tr> <!-- end of entry -->
11028
11029
11030
11031 <!-- end of kind -->
11032 </tbody>
11033 <tr><td colspan="7" class="kind">static</td></tr>
11034
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011035 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011036 <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="static_android.led.availableLeds">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011059 <td class="entry_name"><html><body><p>android.led.availableLeds<wbr></wbr></p></body></html></td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011060 <td class="entry_type">
11061 <span class="entry_type_name entry_type_name_enum">byte</span>
11062 <span class="entry_type_container">x</span>
11063
11064 <span class="entry_type_array">
11065 n
11066 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011067 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011068
11069 <ul class="entry_type_enum">
11070 <li>
11071 <span class="entry_type_enum_name">TRANSMIT</span>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011072 <span class="entry_type_enum_notes"><html><body><p>android.led.transmit control is used<wbr></wbr></p></body></html></span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011073 </li>
11074 </ul>
11075
11076 </td> <!-- entry_type -->
11077
11078 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011079 <html><body><p>A list of camera LEDs that are available on this system.<wbr></wbr></p></body></html>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070011080 </td>
11081
11082 <td class="entry_units">
11083 </td>
11084
11085 <td class="entry_range">
11086 </td>
11087
11088 <td class="entry_notes">
11089 </td>
11090
11091 <td class="entry_tags">
11092 </td>
11093
11094 </tr> <!-- end of entry -->
11095
11096
11097
11098 <!-- end of kind -->
11099 </tbody>
11100
11101 <!-- end of section -->
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011102 <tr><td colspan="7" id="section_info" class="section">info</td></tr>
11103
11104
11105 <tr><td colspan="7" class="kind">static</td></tr>
11106
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011107 <thead class="entries_header">
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011108 <tr>
11109 <th class="th_name">Property Name</th>
11110 <th class="th_type">Type</th>
11111 <th class="th_description">Description</th>
11112 <th class="th_units">Units</th>
11113 <th class="th_range">Range</th>
11114 <th class="th_notes">Notes</th>
11115 <th class="th_tags">Tags</th>
11116 </tr>
11117 </thead>
11118
11119 <tbody>
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130 <tr class="entry" id="static_android.info.supportedHardwareLevel">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011131 <td class="entry_name"><html><body><p>android.info.supportedHardwareLevel<wbr></wbr></p></body></html></td>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011132 <td class="entry_type">
11133 <span class="entry_type_name entry_type_name_enum">byte</span>
11134
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011135 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011136
11137 <ul class="entry_type_enum">
11138 <li>
11139 <span class="entry_type_enum_name">LIMITED</span>
11140 </li>
11141 <li>
11142 <span class="entry_type_enum_name">FULL</span>
11143 </li>
11144 </ul>
11145
11146 </td> <!-- entry_type -->
11147
11148 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011149 <html><body><p>The camera 3 HAL device can implement one of two possible
11150operational modes; limited and full. Full support is
11151expected from new higher-end devices. Limited mode has
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011152hardware requirements roughly in line with those for a
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011153camera HAL device v1 implementation, and is expected from
11154older or inexpensive devices. Full is a strict superset of
11155limited, and they share the same essential operational flow.</p>
11156<p>For full details refer to "S3. Operational Modes" in camera3.h<wbr></wbr></p></body></html>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011157 </td>
11158
11159 <td class="entry_units">
11160 </td>
11161
11162 <td class="entry_range">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011163 <html><body><p>Optional. Default value is LIMITED.<wbr></wbr></p></body></html>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070011164 </td>
11165
11166 <td class="entry_notes">
11167 </td>
11168
11169 <td class="entry_tags">
11170 </td>
11171
11172 </tr> <!-- end of entry -->
11173
11174
11175
11176 <!-- end of kind -->
11177 </tbody>
11178
11179 <!-- end of section -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070011180 <tr><td colspan="7" id="section_blackLevel" class="section">blackLevel</td></tr>
11181
11182
11183 <tr><td colspan="7" class="kind">controls</td></tr>
11184
11185 <thead class="entries_header">
11186 <tr>
11187 <th class="th_name">Property Name</th>
11188 <th class="th_type">Type</th>
11189 <th class="th_description">Description</th>
11190 <th class="th_units">Units</th>
11191 <th class="th_range">Range</th>
11192 <th class="th_notes">Notes</th>
11193 <th class="th_tags">Tags</th>
11194 </tr>
11195 </thead>
11196
11197 <tbody>
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208 <tr class="entry" id="controls_android.blackLevel.lock">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011209 <td class="entry_name"><html><body><p>android.blackLevel.lock<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011210 <td class="entry_type">
11211 <span class="entry_type_name entry_type_name_enum">byte</span>
11212
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011213 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011214
11215 <ul class="entry_type_enum">
11216 <li>
11217 <span class="entry_type_enum_name">OFF</span>
11218 </li>
11219 <li>
11220 <span class="entry_type_enum_name">ON</span>
11221 </li>
11222 </ul>
11223
11224 </td> <!-- entry_type -->
11225
11226 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011227 <html><body><p>Whether black-level compensation is locked
11228to its current values, or is free to vary<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011229 </td>
11230
11231 <td class="entry_units">
11232 </td>
11233
11234 <td class="entry_range">
11235 </td>
11236
11237 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011238 <html><body><p>When set to ON, the values used for black-level
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011239compensation must not change until the lock is set to
11240OFF</p>
11241<p>Since changes to certain capture parameters (such as
11242exposure time) may require resetting of black level
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011243compensation, the HAL must report whether setting the
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011244black level lock was successful in the output result
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011245metadata.</p>
11246<p>For example, if a sequence of requests is as follows:</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011247<ul>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011248<li>Request 1: Exposure = 10ms, Black level lock = OFF</li>
11249<li>Request 2: Exposure = 10ms, Black level lock = ON</li>
11250<li>Request 3: Exposure = 10ms, Black level lock = ON</li>
11251<li>Request 4: Exposure = 20ms, Black level lock = ON</li>
11252<li>Request 5: Exposure = 20ms, Black level lock = ON</li>
11253<li>Request 6: Exposure = 20ms, Black level lock = ON</li>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011254</ul>
11255<p>And the exposure change in Request 4 requires resetting the black
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011256level offsets, then the output result metadata is expected to be:</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011257<ul>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011258<li>Result 1: Exposure = 10ms, Black level lock = OFF</li>
11259<li>Result 2: Exposure = 10ms, Black level lock = ON</li>
11260<li>Result 3: Exposure = 10ms, Black level lock = ON</li>
11261<li>Result 4: Exposure = 20ms, Black level lock = OFF</li>
11262<li>Result 5: Exposure = 20ms, Black level lock = ON</li>
11263<li>Result 6: Exposure = 20ms, Black level lock = ON</li>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011264</ul>
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011265<p>This indicates to the application that on frame 4, black levels were
11266reset due to exposure value changes, and pixel values may not be
11267consistent across captures.</p>
11268<p>The black level locking must happen at the sensor, and not at the ISP.
11269If for some reason black level locking is no longer legal (for example,
11270the analog gain has changed, which forces black levels to be
11271recalculated), then the HAL is free to override this request (and it
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011272must report 'OFF' when this does happen) until the next time locking
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011273is legal again.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011274 </td>
11275
11276 <td class="entry_tags">
11277 <ul class="entry_tags">
11278 <li><a href="#tag_HAL2">HAL2</a></li>
11279 </ul>
11280 </td>
11281
11282 </tr> <!-- end of entry -->
11283
11284
11285
11286 <!-- end of kind -->
11287 </tbody>
11288 <tr><td colspan="7" class="kind">dynamic</td></tr>
11289
11290 <thead class="entries_header">
11291 <tr>
11292 <th class="th_name">Property Name</th>
11293 <th class="th_type">Type</th>
11294 <th class="th_description">Description</th>
11295 <th class="th_units">Units</th>
11296 <th class="th_range">Range</th>
11297 <th class="th_notes">Notes</th>
11298 <th class="th_tags">Tags</th>
11299 </tr>
11300 </thead>
11301
11302 <tbody>
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313 <tr class="entry" id="dynamic_android.blackLevel.lock">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011314 <td class="entry_name"><html><body><p>android.blackLevel.lock<wbr></wbr></p></body></html></td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011315 <td class="entry_type">
11316 <span class="entry_type_name entry_type_name_enum">byte</span>
11317
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011318 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011319
11320 <ul class="entry_type_enum">
11321 <li>
11322 <span class="entry_type_enum_name">OFF</span>
11323 </li>
11324 <li>
11325 <span class="entry_type_enum_name">ON</span>
11326 </li>
11327 </ul>
11328
11329 </td> <!-- entry_type -->
11330
11331 <td class="entry_description">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011332 <html><body><p>Whether black-level compensation is locked
11333to its current values, or is free to vary<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011334 </td>
11335
11336 <td class="entry_units">
11337 </td>
11338
11339 <td class="entry_range">
11340 </td>
11341
11342 <td class="entry_notes">
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080011343 <html><body><p>Whether the black level offset was locked for this frame.
11344Should be ON if android.blackLevel.lock was ON in the capture request,
11345unless a change in capture settings forced a black level reset.<wbr></wbr></p></body></html>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011346 </td>
11347
11348 <td class="entry_tags">
11349 <ul class="entry_tags">
11350 <li><a href="#tag_HAL2">HAL2</a></li>
11351 </ul>
11352 </td>
11353
11354 </tr> <!-- end of entry -->
11355
11356
11357
11358 <!-- end of kind -->
11359 </tbody>
11360
11361 <!-- end of section -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011362<!-- </namespace> -->
11363 </table>
11364
11365 <div class="tags" id="tag_index">
11366 <h2>Tags</h2>
11367 <ul>
11368 <li id="tag_AWB">AWB -
11369 Needed for auto white balance
11370
11371 <ul class="tags_entries">
11372 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11373 </ul>
11374 </li> <!-- tag_AWB -->
11375 <li id="tag_BC">BC -
11376 Needed for backwards compatibility with old Java API
11377
11378 <ul class="tags_entries">
11379 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a> (controls)</li>
11380 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a> (controls)</li>
11381 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a> (controls)</li>
11382 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a> (controls)</li>
11383 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011384 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011385 <li><a href="#controls_android.control.afMode">android.control.afMode</a> (controls)</li>
11386 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011387 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011388 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a> (controls)</li>
11389 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11390 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a> (controls)</li>
11391 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a> (controls)</li>
11392 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a> (controls)</li>
11393 <li><a href="#controls_android.control.mode">android.control.mode</a> (controls)</li>
11394 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a> (controls)</li>
11395 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a> (controls)</li>
11396 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a> (static)</li>
11397 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a> (static)</li>
11398 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a> (static)</li>
11399 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a> (static)</li>
11400 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a> (static)</li>
11401 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a> (static)</li>
11402 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a> (static)</li>
11403 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a> (static)</li>
11404 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a> (static)</li>
11405 <li><a href="#controls_android.flash.mode">android.flash.mode</a> (controls)</li>
11406 <li><a href="#static_android.flash.info.available">android.flash.info.available</a> (static)</li>
11407 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a> (controls)</li>
11408 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a> (controls)</li>
11409 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a> (controls)</li>
11410 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a> (controls)</li>
11411 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a> (controls)</li>
11412 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a> (controls)</li>
11413 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a> (controls)</li>
11414 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a> (static)</li>
11415 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11416 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11417 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a> (static)</li>
11418 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a> (dynamic)</li>
11419 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a> (static)</li>
11420 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a> (controls)</li>
11421 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a> (static)</li>
11422 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a> (static)</li>
11423 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a> (static)</li>
Igor Murashkinf11a4df2013-05-07 10:00:46 -070011424 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011425 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a> (static)</li>
11426 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a> (static)</li>
11427 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011428 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011429 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011430 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11431 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11432 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11433 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a> (static)</li>
11434 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a> (dynamic)</li>
11435 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a> (controls)</li>
11436 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a> (dynamic)</li>
11437 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a> (dynamic)</li>
11438 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a> (dynamic)</li>
11439 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a> (dynamic)</li>
11440 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a> (dynamic)</li>
11441 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a> (dynamic)</li>
11442 </ul>
11443 </li> <!-- tag_BC -->
11444 <li id="tag_V1">V1 -
11445 New features for first camera 2 release (API1)
11446
11447 <ul class="tags_entries">
11448 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a> (controls)</li>
11449 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a> (controls)</li>
11450 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a> (controls)</li>
11451 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a> (static)</li>
11452 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a> (controls)</li>
11453 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a> (controls)</li>
11454 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a> (controls)</li>
11455 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a> (controls)</li>
11456 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11457 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (controls)</li>
11458 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a> (static)</li>
11459 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a> (static)</li>
11460 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11461 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a> (static)</li>
11462 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a> (static)</li>
11463 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a> (static)</li>
11464 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a> (static)</li>
11465 <li><a href="#static_android.lens.position">android.lens.position</a> (static)</li>
11466 <li><a href="#dynamic_android.lens.state">android.lens.state</a> (dynamic)</li>
11467 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a> (controls)</li>
11468 <li><a href="#controls_android.request.id">android.request.id</a> (controls)</li>
11469 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a> (controls)</li>
11470 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
11471 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011472 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011473 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a> (static)</li>
11474 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11475 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11476 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
11477 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
11478 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a> (static)</li>
11479 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a> (controls)</li>
11480 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a> (controls)</li>
11481 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a> (dynamic)</li>
11482 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a> (dynamic)</li>
11483 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a> (dynamic)</li>
11484 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a> (dynamic)</li>
11485 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a> (dynamic)</li>
11486 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (dynamic)</li>
11487 </ul>
11488 </li> <!-- tag_V1 -->
11489 <li id="tag_ADV">ADV - None
11490 <ul class="tags_entries">
11491 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a> (static)</li>
11492 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a> (static)</li>
11493 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a> (controls)</li>
11494 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a> (static)</li>
11495 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a> (static)</li>
11496 <li><a href="#controls_android.shading.strength">android.shading.strength</a> (controls)</li>
11497 </ul>
11498 </li> <!-- tag_ADV -->
11499 <li id="tag_DNG">DNG -
11500 Needed for DNG file support
11501
11502 <ul class="tags_entries">
11503 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011504 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a> (static)</li>
11505 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a> (static)</li>
11506 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11507 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a> (static)</li>
11508 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a> (static)</li>
11509 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a> (static)</li>
11510 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a> (static)</li>
11511 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a> (static)</li>
11512 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a> (static)</li>
11513 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a> (static)</li>
11514 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a> (static)</li>
11515 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11516 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a> (controls)</li>
11517 </ul>
11518 </li> <!-- tag_DNG -->
11519 <li id="tag_EXIF">EXIF - None
11520 <ul class="tags_entries">
11521 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11522 </ul>
11523 </li> <!-- tag_EXIF -->
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011524 <li id="tag_HAL2">HAL2 -
Alex Rayef40ad62013-10-01 17:52:33 -070011525 Entry is only used by camera device HAL 2.x
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011526
11527 <ul class="tags_entries">
11528 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a> (controls)</li>
11529 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a> (controls)</li>
11530 <li><a href="#controls_android.request.type">android.request.type</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011531 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a> (controls)</li>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011532 </ul>
11533 </li> <!-- tag_HAL2 -->
Alex Rayef40ad62013-10-01 17:52:33 -070011534 <li id="tag_FULL">FULL -
11535 Entry is required for full hardware level devices, and optional for other hardware levels
11536
11537 <ul class="tags_entries">
11538 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
11539 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
11540 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a> (dynamic)</li>
11541 </ul>
11542 </li> <!-- tag_FULL -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011543 </ul>
11544 </div>
11545
11546 [ <a href="#">top</a> ]
11547
11548</body>
11549</html>