blob: bd752bb7ed1a9f9245b5dfa63fc8b835b748dac2 [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 }
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080031 .entry_cont { background-color: #f0f0f0 }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070032 .entries_header { background-color: #dddddd; text-align: center}
33
34 /* toc style */
35 .toc_section_header { font-size:1.3em; }
36 .toc_kind_header { font-size:1.2em; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080037
38 /* table column sizes */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070039 table { border-collapse:collapse; table-layout: fixed; width: 100%; word-wrap: break-word }
40 td,th { border: 1px solid; border-color: #aaaaaa; padding-left: 0.5em; padding-right: 0.5em }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080041 .th_name { width: 20% }
42 .th_units { width: 10% }
43 .th_tags { width: 5% }
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080044 .th_details { width: 25% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080045 .th_type { width: 20% }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070046 .th_description { width: 20% }
47 .th_range { width: 10% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080048 td { font-size: 0.9em; }
49
50 /* hide the first thead, we need it there only to enforce column sizes */
51 .thead_dummy { visibility: hidden; }
52
53 /* Entry flair */
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080054 .entry_name { color: #333333; padding-left:1.0em; font-size:1.1em; font-family: monospace; vertical-align:top; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080055
56 /* Entry type flair */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070057 .entry_type_name { font-size:1.1em; color: #669900; font-weight: bold;}
58 .entry_type_name_enum:after { color: #669900; font-weight: bold; content:" (enum)" }
59 .entry_type_visibility { font-weight: bolder; padding-left:1em}
Igor Murashkin08b8aad2012-11-29 15:23:03 -080060 .entry_type_enum_name { font-family: monospace; font-weight: bolder; }
61 .entry_type_enum_notes:before { content:" - " }
Igor Murashkina10351a2014-01-15 17:05:22 -080062 .entry_type_enum_notes>p:first-child { display:inline; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080063 .entry_type_enum_value:before { content:" = " }
64 .entry_type_enum_value { font-family: monospace; }
65 .entry ul { margin: 0 0 0 0; list-style-position: inside; padding-left: 0.5em; }
66 .entry ul li { padding: 0 0 0 0; margin: 0 0 0 0;}
67
68 /* Entry tags flair */
69 .entry_tags ul { list-style-type: none; }
70
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080071 /* Entry details (full docs) flair */
72 .entry_details_header { font-weight: bold; background-color: #dddddd;
73 text-align: center; font-size: 1.1em; margin-left: 0em; margin-right: 0em; }
74
75 /* Entry spacer flair */
76 .entry_spacer { background-color: transparent; border-style: none; height: 0.5em; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080077
78 /* TODO: generate abbr element for each tag link? */
79 /* TODO for each x.y.z try to link it to the entry */
80
81 </style>
82
83 <style>
84
85 {
86 /* broken...
87 supposedly there is a bug in chrome that it lays out tables before
88 it knows its being printed, so the page-break-* styles are ignored
89 */
90 tr { page-break-after: always; page-break-inside: avoid; }
91 }
92
93 </style>
94</head>
95
96
97
Igor Murashkin08b8aad2012-11-29 15:23:03 -080098<body>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070099 <h1>Android Camera HAL3.0 Properties</h1>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800100
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700101
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800102 <h2>Table of Contents</h2>
103 <ul class="toc">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700104 <li><a href="#tag_index" class="toc_section_header">Tags</a></li>
105 <li>
106 <span class="toc_section_header"><a href="#section_colorCorrection">colorCorrection</a></span>
107 <ul class="toc_section">
108 <li>
109 <span class="toc_kind_header">controls</span>
110 <ul class="toc_section">
111 <li><a href="#controls_android.colorCorrection.mode">android.colorCorrection.mode</a></li>
112 <li><a href="#controls_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700113 <li><a href="#controls_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700114 </ul>
115 </li>
116 <li>
117 <span class="toc_kind_header">dynamic</span>
118 <ul class="toc_section">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700119 <li><a href="#dynamic_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
120 <li><a href="#dynamic_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700121 </ul>
122 </li>
123 </ul> <!-- toc_section -->
124 </li>
125 <li>
126 <span class="toc_section_header"><a href="#section_control">control</a></span>
127 <ul class="toc_section">
128 <li>
129 <span class="toc_kind_header">controls</span>
130 <ul class="toc_section">
131 <li><a href="#controls_android.control.aeAntibandingMode">android.control.aeAntibandingMode</a></li>
132 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a></li>
133 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a></li>
134 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a></li>
135 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a></li>
136 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a></li>
137 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a></li>
138 <li><a href="#controls_android.control.afMode">android.control.afMode</a></li>
139 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a></li>
140 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a></li>
141 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a></li>
142 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a></li>
143 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a></li>
144 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a></li>
145 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a></li>
146 <li><a href="#controls_android.control.mode">android.control.mode</a></li>
147 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a></li>
148 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a></li>
149 </ul>
150 </li>
151 <li>
152 <span class="toc_kind_header">static</span>
153 <ul class="toc_section">
154 <li><a href="#static_android.control.aeAvailableAntibandingModes">android.control.aeAvailableAntibandingModes</a></li>
155 <li><a href="#static_android.control.aeAvailableModes">android.control.aeAvailableModes</a></li>
156 <li><a href="#static_android.control.aeAvailableTargetFpsRanges">android.control.aeAvailableTargetFpsRanges</a></li>
157 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a></li>
158 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a></li>
159 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a></li>
160 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a></li>
161 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a></li>
162 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a></li>
163 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a></li>
164 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a></li>
165 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a></li>
166 </ul>
167 </li>
168 <li>
169 <span class="toc_kind_header">dynamic</span>
170 <ul class="toc_section">
171 <li><a href="#dynamic_android.control.aePrecaptureId">android.control.aePrecaptureId</a></li>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -0800172 <li><a href="#dynamic_android.control.aeMode">android.control.aeMode</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700173 <li><a href="#dynamic_android.control.aeRegions">android.control.aeRegions</a></li>
174 <li><a href="#dynamic_android.control.aeState">android.control.aeState</a></li>
175 <li><a href="#dynamic_android.control.afMode">android.control.afMode</a></li>
176 <li><a href="#dynamic_android.control.afRegions">android.control.afRegions</a></li>
177 <li><a href="#dynamic_android.control.afState">android.control.afState</a></li>
178 <li><a href="#dynamic_android.control.afTriggerId">android.control.afTriggerId</a></li>
179 <li><a href="#dynamic_android.control.awbMode">android.control.awbMode</a></li>
180 <li><a href="#dynamic_android.control.awbRegions">android.control.awbRegions</a></li>
181 <li><a href="#dynamic_android.control.awbState">android.control.awbState</a></li>
182 <li><a href="#dynamic_android.control.mode">android.control.mode</a></li>
183 </ul>
184 </li>
185 </ul> <!-- toc_section -->
186 </li>
187 <li>
188 <span class="toc_section_header"><a href="#section_demosaic">demosaic</a></span>
189 <ul class="toc_section">
190 <li>
191 <span class="toc_kind_header">controls</span>
192 <ul class="toc_section">
193 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a></li>
194 </ul>
195 </li>
196 </ul> <!-- toc_section -->
197 </li>
198 <li>
199 <span class="toc_section_header"><a href="#section_edge">edge</a></span>
200 <ul class="toc_section">
201 <li>
202 <span class="toc_kind_header">controls</span>
203 <ul class="toc_section">
204 <li><a href="#controls_android.edge.mode">android.edge.mode</a></li>
205 <li><a href="#controls_android.edge.strength">android.edge.strength</a></li>
206 </ul>
207 </li>
208 <li>
209 <span class="toc_kind_header">dynamic</span>
210 <ul class="toc_section">
211 <li><a href="#dynamic_android.edge.mode">android.edge.mode</a></li>
212 </ul>
213 </li>
214 </ul> <!-- toc_section -->
215 </li>
216 <li>
217 <span class="toc_section_header"><a href="#section_flash">flash</a></span>
218 <ul class="toc_section">
219 <li>
220 <span class="toc_kind_header">controls</span>
221 <ul class="toc_section">
222 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a></li>
223 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a></li>
224 <li><a href="#controls_android.flash.mode">android.flash.mode</a></li>
225 </ul>
226 </li>
227 <li>
228 <span class="toc_kind_header">static</span>
229 <ul class="toc_section">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800230
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700231 <li><a href="#static_android.flash.info.available">android.flash.info.available</a></li>
232 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800233
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700234 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a></li>
235 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a></li>
236 </ul>
237 </li>
238 <li>
239 <span class="toc_kind_header">dynamic</span>
240 <ul class="toc_section">
241 <li><a href="#dynamic_android.flash.firingPower">android.flash.firingPower</a></li>
242 <li><a href="#dynamic_android.flash.firingTime">android.flash.firingTime</a></li>
243 <li><a href="#dynamic_android.flash.mode">android.flash.mode</a></li>
244 <li><a href="#dynamic_android.flash.state">android.flash.state</a></li>
245 </ul>
246 </li>
247 </ul> <!-- toc_section -->
248 </li>
249 <li>
250 <span class="toc_section_header"><a href="#section_geometric">geometric</a></span>
251 <ul class="toc_section">
252 <li>
253 <span class="toc_kind_header">controls</span>
254 <ul class="toc_section">
255 <li><a href="#controls_android.geometric.mode">android.geometric.mode</a></li>
256 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a></li>
257 </ul>
258 </li>
259 </ul> <!-- toc_section -->
260 </li>
261 <li>
262 <span class="toc_section_header"><a href="#section_hotPixel">hotPixel</a></span>
263 <ul class="toc_section">
264 <li>
265 <span class="toc_kind_header">controls</span>
266 <ul class="toc_section">
267 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a></li>
268 </ul>
269 </li>
270 <li>
271 <span class="toc_kind_header">static</span>
272 <ul class="toc_section">
273
274 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a></li>
275
276 </ul>
277 </li>
278 <li>
279 <span class="toc_kind_header">dynamic</span>
280 <ul class="toc_section">
281 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a></li>
282 </ul>
283 </li>
284 </ul> <!-- toc_section -->
285 </li>
286 <li>
287 <span class="toc_section_header"><a href="#section_jpeg">jpeg</a></span>
288 <ul class="toc_section">
289 <li>
290 <span class="toc_kind_header">controls</span>
291 <ul class="toc_section">
292 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
293 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
294 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
295 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a></li>
296 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a></li>
297 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
298 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
299 </ul>
300 </li>
301 <li>
302 <span class="toc_kind_header">static</span>
303 <ul class="toc_section">
304 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a></li>
305 <li><a href="#static_android.jpeg.maxSize">android.jpeg.maxSize</a></li>
306 </ul>
307 </li>
308 <li>
309 <span class="toc_kind_header">dynamic</span>
310 <ul class="toc_section">
311 <li><a href="#dynamic_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
312 <li><a href="#dynamic_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
313 <li><a href="#dynamic_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
314 <li><a href="#dynamic_android.jpeg.orientation">android.jpeg.orientation</a></li>
315 <li><a href="#dynamic_android.jpeg.quality">android.jpeg.quality</a></li>
316 <li><a href="#dynamic_android.jpeg.size">android.jpeg.size</a></li>
317 <li><a href="#dynamic_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
318 <li><a href="#dynamic_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
319 </ul>
320 </li>
321 </ul> <!-- toc_section -->
322 </li>
323 <li>
324 <span class="toc_section_header"><a href="#section_lens">lens</a></span>
325 <ul class="toc_section">
326 <li>
327 <span class="toc_kind_header">controls</span>
328 <ul class="toc_section">
329 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a></li>
330 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a></li>
331 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a></li>
332 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a></li>
333 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
334 </ul>
335 </li>
336 <li>
337 <span class="toc_kind_header">static</span>
338 <ul class="toc_section">
339
340 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a></li>
341 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a></li>
342 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a></li>
343 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a></li>
344 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a></li>
345 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a></li>
346 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a></li>
347 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700348 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a></li>
349
350 <li><a href="#static_android.lens.facing">android.lens.facing</a></li>
351 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a></li>
352 <li><a href="#static_android.lens.position">android.lens.position</a></li>
353 </ul>
354 </li>
355 <li>
356 <span class="toc_kind_header">dynamic</span>
357 <ul class="toc_section">
358 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a></li>
359 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a></li>
360 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a></li>
361 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a></li>
362 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a></li>
363 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
364 <li><a href="#dynamic_android.lens.state">android.lens.state</a></li>
365 </ul>
366 </li>
367 </ul> <!-- toc_section -->
368 </li>
369 <li>
370 <span class="toc_section_header"><a href="#section_noiseReduction">noiseReduction</a></span>
371 <ul class="toc_section">
372 <li>
373 <span class="toc_kind_header">controls</span>
374 <ul class="toc_section">
375 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
376 <li><a href="#controls_android.noiseReduction.strength">android.noiseReduction.strength</a></li>
377 </ul>
378 </li>
379 <li>
380 <span class="toc_kind_header">dynamic</span>
381 <ul class="toc_section">
382 <li><a href="#dynamic_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
383 </ul>
384 </li>
385 </ul> <!-- toc_section -->
386 </li>
387 <li>
388 <span class="toc_section_header"><a href="#section_quirks">quirks</a></span>
389 <ul class="toc_section">
390 <li>
391 <span class="toc_kind_header">static</span>
392 <ul class="toc_section">
393 <li><a href="#static_android.quirks.meteringCropRegion">android.quirks.meteringCropRegion</a></li>
394 <li><a href="#static_android.quirks.triggerAfWithAuto">android.quirks.triggerAfWithAuto</a></li>
395 <li><a href="#static_android.quirks.useZslFormat">android.quirks.useZslFormat</a></li>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -0700396 <li><a href="#static_android.quirks.usePartialResult">android.quirks.usePartialResult</a></li>
397 </ul>
398 </li>
399 <li>
400 <span class="toc_kind_header">dynamic</span>
401 <ul class="toc_section">
402 <li><a href="#dynamic_android.quirks.partialResult">android.quirks.partialResult</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700403 </ul>
404 </li>
405 </ul> <!-- toc_section -->
406 </li>
407 <li>
408 <span class="toc_section_header"><a href="#section_request">request</a></span>
409 <ul class="toc_section">
410 <li>
411 <span class="toc_kind_header">controls</span>
412 <ul class="toc_section">
413 <li><a href="#controls_android.request.frameCount">android.request.frameCount</a></li>
414 <li><a href="#controls_android.request.id">android.request.id</a></li>
415 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a></li>
416 <li><a href="#controls_android.request.metadataMode">android.request.metadataMode</a></li>
417 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a></li>
418 <li><a href="#controls_android.request.type">android.request.type</a></li>
419 </ul>
420 </li>
421 <li>
422 <span class="toc_kind_header">static</span>
423 <ul class="toc_section">
424 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a></li>
425 <li><a href="#static_android.request.maxNumReprocessStreams">android.request.maxNumReprocessStreams</a></li>
426 </ul>
427 </li>
428 <li>
429 <span class="toc_kind_header">dynamic</span>
430 <ul class="toc_section">
431 <li><a href="#dynamic_android.request.frameCount">android.request.frameCount</a></li>
432 <li><a href="#dynamic_android.request.id">android.request.id</a></li>
433 <li><a href="#dynamic_android.request.metadataMode">android.request.metadataMode</a></li>
434 <li><a href="#dynamic_android.request.outputStreams">android.request.outputStreams</a></li>
435 </ul>
436 </li>
437 </ul> <!-- toc_section -->
438 </li>
439 <li>
440 <span class="toc_section_header"><a href="#section_scaler">scaler</a></span>
441 <ul class="toc_section">
442 <li>
443 <span class="toc_kind_header">controls</span>
444 <ul class="toc_section">
445 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
446 </ul>
447 </li>
448 <li>
449 <span class="toc_kind_header">static</span>
450 <ul class="toc_section">
451 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a></li>
452 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a></li>
453 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a></li>
454 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a></li>
455 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a></li>
456 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a></li>
457 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a></li>
458 <li><a href="#static_android.scaler.availableRawSizes">android.scaler.availableRawSizes</a></li>
459 </ul>
460 </li>
461 <li>
462 <span class="toc_kind_header">dynamic</span>
463 <ul class="toc_section">
464 <li><a href="#dynamic_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
465 </ul>
466 </li>
467 </ul> <!-- toc_section -->
468 </li>
469 <li>
470 <span class="toc_section_header"><a href="#section_sensor">sensor</a></span>
471 <ul class="toc_section">
472 <li>
473 <span class="toc_kind_header">controls</span>
474 <ul class="toc_section">
475 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
476 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
477 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
478 </ul>
479 </li>
480 <li>
481 <span class="toc_kind_header">static</span>
482 <ul class="toc_section">
483
484 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700485 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700486 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a></li>
487 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a></li>
488 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a></li>
489 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a></li>
490 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a></li>
491 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a></li>
492
493 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a></li>
494 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a></li>
495 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a></li>
496 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a></li>
497 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a></li>
498 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a></li>
499 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a></li>
500 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a></li>
501 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a></li>
502 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a></li>
503 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a></li>
504 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a></li>
505 <li><a href="#static_android.sensor.referenceIlluminant2">android.sensor.referenceIlluminant2</a></li>
506 </ul>
507 </li>
508 <li>
509 <span class="toc_kind_header">dynamic</span>
510 <ul class="toc_section">
511 <li><a href="#dynamic_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
512 <li><a href="#dynamic_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
513 <li><a href="#dynamic_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
514 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a></li>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700515 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700516 </ul>
517 </li>
518 </ul> <!-- toc_section -->
519 </li>
520 <li>
521 <span class="toc_section_header"><a href="#section_shading">shading</a></span>
522 <ul class="toc_section">
523 <li>
524 <span class="toc_kind_header">controls</span>
525 <ul class="toc_section">
526 <li><a href="#controls_android.shading.mode">android.shading.mode</a></li>
527 <li><a href="#controls_android.shading.strength">android.shading.strength</a></li>
528 </ul>
529 </li>
530 <li>
531 <span class="toc_kind_header">dynamic</span>
532 <ul class="toc_section">
533 <li><a href="#dynamic_android.shading.mode">android.shading.mode</a></li>
534 </ul>
535 </li>
536 </ul> <!-- toc_section -->
537 </li>
538 <li>
539 <span class="toc_section_header"><a href="#section_statistics">statistics</a></span>
540 <ul class="toc_section">
541 <li>
542 <span class="toc_kind_header">controls</span>
543 <ul class="toc_section">
544 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
545 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
546 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700547 <li><a href="#controls_android.statistics.lensShadingMapMode">android.statistics.lensShadingMapMode</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700548 </ul>
549 </li>
550 <li>
551 <span class="toc_kind_header">static</span>
552 <ul class="toc_section">
553
554 <li><a href="#static_android.statistics.info.availableFaceDetectModes">android.statistics.info.availableFaceDetectModes</a></li>
555 <li><a href="#static_android.statistics.info.histogramBucketCount">android.statistics.info.histogramBucketCount</a></li>
556 <li><a href="#static_android.statistics.info.maxFaceCount">android.statistics.info.maxFaceCount</a></li>
557 <li><a href="#static_android.statistics.info.maxHistogramCount">android.statistics.info.maxHistogramCount</a></li>
558 <li><a href="#static_android.statistics.info.maxSharpnessMapValue">android.statistics.info.maxSharpnessMapValue</a></li>
559 <li><a href="#static_android.statistics.info.sharpnessMapSize">android.statistics.info.sharpnessMapSize</a></li>
560
561 </ul>
562 </li>
563 <li>
564 <span class="toc_kind_header">dynamic</span>
565 <ul class="toc_section">
566 <li><a href="#dynamic_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
567 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a></li>
568 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a></li>
569 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a></li>
570 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a></li>
571 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a></li>
572 <li><a href="#dynamic_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
573 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a></li>
574 <li><a href="#dynamic_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700575 <li><a href="#dynamic_android.statistics.lensShadingMap">android.statistics.lensShadingMap</a></li>
576 <li><a href="#dynamic_android.statistics.predictedColorGains">android.statistics.predictedColorGains</a></li>
577 <li><a href="#dynamic_android.statistics.predictedColorTransform">android.statistics.predictedColorTransform</a></li>
578 <li><a href="#dynamic_android.statistics.sceneFlicker">android.statistics.sceneFlicker</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700579 </ul>
580 </li>
581 </ul> <!-- toc_section -->
582 </li>
583 <li>
584 <span class="toc_section_header"><a href="#section_tonemap">tonemap</a></span>
585 <ul class="toc_section">
586 <li>
587 <span class="toc_kind_header">controls</span>
588 <ul class="toc_section">
589 <li><a href="#controls_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
590 <li><a href="#controls_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
591 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
592 <li><a href="#controls_android.tonemap.mode">android.tonemap.mode</a></li>
593 </ul>
594 </li>
595 <li>
596 <span class="toc_kind_header">static</span>
597 <ul class="toc_section">
598 <li><a href="#static_android.tonemap.maxCurvePoints">android.tonemap.maxCurvePoints</a></li>
599 </ul>
600 </li>
601 <li>
602 <span class="toc_kind_header">dynamic</span>
603 <ul class="toc_section">
604 <li><a href="#dynamic_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
605 <li><a href="#dynamic_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
606 <li><a href="#dynamic_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
607 <li><a href="#dynamic_android.tonemap.mode">android.tonemap.mode</a></li>
608 </ul>
609 </li>
610 </ul> <!-- toc_section -->
611 </li>
612 <li>
613 <span class="toc_section_header"><a href="#section_led">led</a></span>
614 <ul class="toc_section">
615 <li>
616 <span class="toc_kind_header">controls</span>
617 <ul class="toc_section">
618 <li><a href="#controls_android.led.transmit">android.led.transmit</a></li>
619 </ul>
620 </li>
621 <li>
622 <span class="toc_kind_header">dynamic</span>
623 <ul class="toc_section">
624 <li><a href="#dynamic_android.led.transmit">android.led.transmit</a></li>
625 </ul>
626 </li>
627 <li>
628 <span class="toc_kind_header">static</span>
629 <ul class="toc_section">
630 <li><a href="#static_android.led.availableLeds">android.led.availableLeds</a></li>
631 </ul>
632 </li>
633 </ul> <!-- toc_section -->
634 </li>
635 <li>
636 <span class="toc_section_header"><a href="#section_info">info</a></span>
637 <ul class="toc_section">
638 <li>
639 <span class="toc_kind_header">static</span>
640 <ul class="toc_section">
641 <li><a href="#static_android.info.supportedHardwareLevel">android.info.supportedHardwareLevel</a></li>
642 </ul>
643 </li>
644 </ul> <!-- toc_section -->
645 </li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700646 <li>
647 <span class="toc_section_header"><a href="#section_blackLevel">blackLevel</a></span>
648 <ul class="toc_section">
649 <li>
650 <span class="toc_kind_header">controls</span>
651 <ul class="toc_section">
652 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a></li>
653 </ul>
654 </li>
655 <li>
656 <span class="toc_kind_header">dynamic</span>
657 <ul class="toc_section">
658 <li><a href="#dynamic_android.blackLevel.lock">android.blackLevel.lock</a></li>
659 </ul>
660 </li>
661 </ul> <!-- toc_section -->
662 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800663 </ul>
664
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700665
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800666 <h1>Properties</h1>
667 <table class="properties">
668
669 <thead class="thead_dummy">
670 <tr>
671 <th class="th_name">Property Name</th>
672 <th class="th_type">Type</th>
673 <th class="th_description">Description</th>
674 <th class="th_units">Units</th>
675 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800676 <th class="th_tags">Tags</th>
677 </tr>
678 </thead> <!-- so that the first occurrence of thead is not
679 above the first occurrence of tr -->
680<!-- <namespace name="android"> -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800681 <tr><td colspan="6" id="section_colorCorrection" class="section">colorCorrection</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800682
683
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800684 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800685
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700686 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800687 <tr>
688 <th class="th_name">Property Name</th>
689 <th class="th_type">Type</th>
690 <th class="th_description">Description</th>
691 <th class="th_units">Units</th>
692 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800693 <th class="th_tags">Tags</th>
694 </tr>
695 </thead>
696
697 <tbody>
698
699
700
701
702
703
704
705
706
707
708 <tr class="entry" id="controls_android.colorCorrection.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800709 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -0800710 android.<wbr/>color<wbr/>Correction.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800711 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800712 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800713 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800714
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700715 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800716
717 <ul class="entry_type_enum">
718 <li>
719 <span class="entry_type_enum_name">TRANSFORM_MATRIX</span>
Igor Murashkina10351a2014-01-15 17:05:22 -0800720 <span class="entry_type_enum_notes"><p>Use the <a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a> matrix
721and <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> to do color conversion</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800722 </li>
723 <li>
724 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -0800725 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
726bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800727 </li>
728 <li>
729 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -0800730 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
731quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800732 </li>
733 </ul>
734
735 </td> <!-- entry_type -->
736
737 <td class="entry_description">
738 </td>
739
740 <td class="entry_units">
741 </td>
742
743 <td class="entry_range">
744 </td>
745
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800746 <td class="entry_tags">
747 </td>
748
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800749 </tr>
750 <tr class="entries_header">
751 <th class="th_details" colspan="5">Details</th>
752 </tr>
753 <tr class="entry_cont">
754 <td class="entry_details" colspan="5">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800755 <p>When <a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a> is not OFF,<wbr/> TRANSFORM_<wbr/>MATRIX
Igor Murashkin0b080452013-12-27 15:30:25 -0800756should be ignored.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800757 </td>
758 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800759
760
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800761 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
762 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800763
764
765 <tr class="entry" id="controls_android.colorCorrection.transform">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800766 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -0800767 android.<wbr/>color<wbr/>Correction.<wbr/>transform
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800768 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800769 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700770 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800771 <span class="entry_type_container">x</span>
772
773 <span class="entry_type_array">
774 3 x 3
775 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700776 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -0800777 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800778
779
780 </td> <!-- entry_type -->
781
782 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -0800783 <p>A color transform matrix to use to transform
784from sensor RGB color space to output linear sRGB color space</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800785 </td>
786
787 <td class="entry_units">
788 </td>
789
790 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800791 <p>Output values are expected to be in the range
792(0,<wbr/>1)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800793 </td>
794
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800795 <td class="entry_tags">
796 </td>
797
798 </tr>
799 <tr class="entries_header">
800 <th class="th_details" colspan="5">Details</th>
801 </tr>
802 <tr class="entry_cont">
803 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -0800804 <p>This matrix is either set by HAL when the request
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800805<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is not TRANSFORM_<wbr/>MATRIX,<wbr/> or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800806directly by the application in the request when the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800807<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is TRANSFORM_<wbr/>MATRIX.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -0800808<p>In the latter case,<wbr/> the HAL may round the matrix to account
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800809for precision issues; the final rounded matrix should be
Igor Murashkin0b080452013-12-27 15:30:25 -0800810reported back in this matrix result metadata.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700811 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800812 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800813
814
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800815 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
816 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -0700817
818
819 <tr class="entry" id="controls_android.colorCorrection.gains">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800820 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -0800821 android.<wbr/>color<wbr/>Correction.<wbr/>gains
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800822 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700823 <td class="entry_type">
824 <span class="entry_type_name">float</span>
825 <span class="entry_type_container">x</span>
826
827 <span class="entry_type_array">
828 4
829 </span>
830 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -0800831 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700832
833
834 </td> <!-- entry_type -->
835
836 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -0800837 <p>Gains applying to Bayer color channels for
838white-balance</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700839 </td>
840
841 <td class="entry_units">
842 </td>
843
844 <td class="entry_range">
845 </td>
846
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800847 <td class="entry_tags">
848 </td>
849
850 </tr>
851 <tr class="entries_header">
852 <th class="th_details" colspan="5">Details</th>
853 </tr>
854 <tr class="entry_cont">
855 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -0800856 <p>The 4-channel white-balance gains are defined in
857the order of [R G_<wbr/>even G_<wbr/>odd B],<wbr/> where G_<wbr/>even is the gain
858for green pixels on even rows of the output,<wbr/> and G_<wbr/>odd
859is the gain for greenpixels on the odd rows.<wbr/> if a HAL
860does not support a separate gain for even/<wbr/>odd green channels,<wbr/>
861it should use the G_<wbr/>even value,<wbr/>and write G_<wbr/>odd equal to
862G_<wbr/>even in the output result metadata.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800863<p>This array is either set by HAL when the request
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800864<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is not TRANSFORM_<wbr/>MATRIX,<wbr/> or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800865directly by the application in the request when the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800866<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is TRANSFORM_<wbr/>MATRIX.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800867<p>The ouput should be the gains actually applied by the HAL to
Igor Murashkin0b080452013-12-27 15:30:25 -0800868the current frame.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800869 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800870 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800871
872
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800873 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
874 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800875
876
877
878 <!-- end of kind -->
879 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800880 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800881
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700882 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800883 <tr>
884 <th class="th_name">Property Name</th>
885 <th class="th_type">Type</th>
886 <th class="th_description">Description</th>
887 <th class="th_units">Units</th>
888 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800889 <th class="th_tags">Tags</th>
890 </tr>
891 </thead>
892
893 <tbody>
894
895
896
897
898
899
900
901
902
903
Zhijun He69fc0ea2013-07-17 09:42:58 -0700904 <tr class="entry" id="dynamic_android.colorCorrection.transform">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800905 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -0800906 android.<wbr/>color<wbr/>Correction.<wbr/>transform
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800907 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800908 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700909 <span class="entry_type_name">rational</span>
910 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800911
Zhijun He69fc0ea2013-07-17 09:42:58 -0700912 <span class="entry_type_array">
913 3 x 3
914 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700915 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -0800916 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800917
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800918
919 </td> <!-- entry_type -->
920
921 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -0800922 <p>A color transform matrix to use to transform
923from sensor RGB color space to output linear sRGB color space</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700924 </td>
925
926 <td class="entry_units">
927 </td>
928
929 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800930 <p>Output values are expected to be in the range
931(0,<wbr/>1)</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700932 </td>
933
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800934 <td class="entry_tags">
935 </td>
936
937 </tr>
938 <tr class="entries_header">
939 <th class="th_details" colspan="5">Details</th>
940 </tr>
941 <tr class="entry_cont">
942 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -0800943 <p>This matrix is either set by HAL when the request
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800944<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is not TRANSFORM_<wbr/>MATRIX,<wbr/> or
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800945directly by the application in the request when the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -0800946<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is TRANSFORM_<wbr/>MATRIX.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -0800947<p>In the latter case,<wbr/> the HAL may round the matrix to account
Igor Murashkin8aa2a112013-12-09 12:06:17 -0800948for precision issues; the final rounded matrix should be
Igor Murashkin0b080452013-12-27 15:30:25 -0800949reported back in this matrix result metadata.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700950 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800951 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800952
953
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800954 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
955 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -0700956
957
958 <tr class="entry" id="dynamic_android.colorCorrection.gains">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800959 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -0800960 android.<wbr/>color<wbr/>Correction.<wbr/>gains
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -0800961 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700962 <td class="entry_type">
963 <span class="entry_type_name">float</span>
964 <span class="entry_type_container">x</span>
965
966 <span class="entry_type_array">
967 4
968 </span>
969 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -0800970 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700971
972
973 </td> <!-- entry_type -->
974
975 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -0800976 <p>Gains applying to Bayer color channels for
977white-balance</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800978 </td>
979
980 <td class="entry_units">
981 </td>
982
983 <td class="entry_range">
984 </td>
985
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -0800986 <td class="entry_tags">
987 </td>
988
989 </tr>
990 <tr class="entries_header">
991 <th class="th_details" colspan="5">Details</th>
992 </tr>
993 <tr class="entry_cont">
994 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -0800995 <p>The 4-channel white-balance gains are defined in
996the order of [R G_<wbr/>even G_<wbr/>odd B],<wbr/> where G_<wbr/>even is the gain
997for green pixels on even rows of the output,<wbr/> and G_<wbr/>odd
998is the gain for greenpixels on the odd rows.<wbr/> if a HAL
999does not support a separate gain for even/<wbr/>odd green channels,<wbr/>
1000it should use the G_<wbr/>even value,<wbr/>and write G_<wbr/>odd equal to
1001G_<wbr/>even in the output result metadata.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001002<p>This array is either set by HAL when the request
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001003<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is not TRANSFORM_<wbr/>MATRIX,<wbr/> or
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001004directly by the application in the request when the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001005<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> is TRANSFORM_<wbr/>MATRIX.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001006<p>The ouput should be the gains actually applied by the HAL to
Igor Murashkin0b080452013-12-27 15:30:25 -08001007the current frame.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001008 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001009 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001010
1011
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001012 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1013 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001014
1015
1016
1017 <!-- end of kind -->
1018 </tbody>
1019
1020 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001021 <tr><td colspan="6" id="section_control" class="section">control</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001022
1023
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001024 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001025
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001026 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001027 <tr>
1028 <th class="th_name">Property Name</th>
1029 <th class="th_type">Type</th>
1030 <th class="th_description">Description</th>
1031 <th class="th_units">Units</th>
1032 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001033 <th class="th_tags">Tags</th>
1034 </tr>
1035 </thead>
1036
1037 <tbody>
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048 <tr class="entry" id="controls_android.control.aeAntibandingMode">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08001049 <td class="entry_name" rowspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001050 android.<wbr/>control.<wbr/>ae<wbr/>Antibanding<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001051 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001052 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001053 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001054
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001055 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001056
1057 <ul class="entry_type_enum">
1058 <li>
1059 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001060 <span class="entry_type_enum_notes"><p>The camera device will not adjust exposure duration to
1061avoid banding problems.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001062 </li>
1063 <li>
1064 <span class="entry_type_enum_name">50HZ</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001065 <span class="entry_type_enum_notes"><p>The camera device will adjust exposure duration to
1066avoid banding problems with 50Hz illumination sources.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001067 </li>
1068 <li>
1069 <span class="entry_type_enum_name">60HZ</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001070 <span class="entry_type_enum_notes"><p>The camera device will adjust exposure duration to
1071avoid banding problems with 60Hz illumination
1072sources.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001073 </li>
1074 <li>
1075 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001076 <span class="entry_type_enum_notes"><p>The camera device will automatically adapt its
1077antibanding routine to the current illumination
1078conditions.<wbr/> This is the default.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001079 </li>
1080 </ul>
1081
1082 </td> <!-- entry_type -->
1083
1084 <td class="entry_description">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08001085 <p>The desired setting for the camera device's auto-exposure
1086algorithm's antibanding compensation.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001087 </td>
1088
1089 <td class="entry_units">
1090 </td>
1091
1092 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001093 <p><a href="#static_android.control.aeAvailableAntibandingModes">android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Antibanding<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001094 </td>
1095
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001096 <td class="entry_tags">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08001097 <ul class="entry_tags">
1098 <li><a href="#tag_BC">BC</a></li>
1099 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001100 </td>
1101
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001102 </tr>
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08001103 <tr class="entries_header">
1104 <th class="th_details" colspan="5">Details</th>
1105 </tr>
1106 <tr class="entry_cont">
1107 <td class="entry_details" colspan="5">
1108 <p>Some kinds of lighting fixtures,<wbr/> such as some fluorescent
1109lights,<wbr/> flicker at the rate of the power supply frequency
1110(60Hz or 50Hz,<wbr/> depending on country).<wbr/> While this is
1111typically not noticeable to a person,<wbr/> it can be visible to
1112a camera device.<wbr/> If a camera sets its exposure time to the
1113wrong value,<wbr/> the flicker may become visible in the
1114viewfinder as flicker or in a final captured image,<wbr/> as a
1115set of variable-brightness bands across the image.<wbr/></p>
1116<p>Therefore,<wbr/> the auto-exposure routines of camera devices
1117include antibanding routines that ensure that the chosen
1118exposure value will not cause such banding.<wbr/> The choice of
1119exposure time depends on the rate of flicker,<wbr/> which the
1120camera device can detect automatically,<wbr/> or the expected
1121rate can be selected by the application using this
1122control.<wbr/></p>
1123<p>A given camera device may not support all of the possible
1124options for the antibanding mode.<wbr/> The
1125<a href="#static_android.control.aeAvailableAntibandingModes">android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Antibanding<wbr/>Modes</a> key contains
1126the available modes for a given camera device.<wbr/></p>
1127<p>The default mode is AUTO,<wbr/> which must be supported by all
1128camera devices.<wbr/></p>
1129<p>If manual exposure control is enabled (by setting
1130<a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> or <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> to OFF),<wbr/>
1131then this setting has no effect,<wbr/> and the application must
1132ensure it selects exposure times that do not cause banding
1133issues.<wbr/> The <a href="#dynamic_android.statistics.sceneFlicker">android.<wbr/>statistics.<wbr/>scene<wbr/>Flicker</a> key can assist
1134the application in this.<wbr/></p>
1135 </td>
1136 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001137
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08001138 <tr class="entries_header">
1139 <th class="th_details" colspan="5">HAL Implementation Details</th>
1140 </tr>
1141 <tr class="entry_cont">
1142 <td class="entry_details" colspan="5">
1143 <p>For all capture request templates,<wbr/> this field must be set
1144to AUTO.<wbr/> AUTO is the only mode that must supported;
1145OFF,<wbr/> 50HZ,<wbr/> 60HZ are all optional.<wbr/></p>
1146<p>If manual exposure control is enabled (by setting
1147<a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> or <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> to OFF),<wbr/>
1148then the exposure values provided by the application must not be
1149adjusted for antibanding.<wbr/></p>
1150 </td>
1151 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001152
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001153 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1154 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001155
1156
1157 <tr class="entry" id="controls_android.control.aeExposureCompensation">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001158 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001159 android.<wbr/>control.<wbr/>ae<wbr/>Exposure<wbr/>Compensation
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001160 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001161 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001162 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001163
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001164 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001165
1166
1167 </td> <!-- entry_type -->
1168
1169 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001170 <p>Adjustment to AE target image
1171brightness</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001172 </td>
1173
1174 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08001175 count of positive/<wbr/>negative EV steps
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001176 </td>
1177
1178 <td class="entry_range">
1179 </td>
1180
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001181 <td class="entry_tags">
1182 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001183 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001184 </ul>
1185 </td>
1186
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001187 </tr>
1188 <tr class="entries_header">
1189 <th class="th_details" colspan="5">Details</th>
1190 </tr>
1191 <tr class="entry_cont">
1192 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001193 <p>For example,<wbr/> if EV step is 0.<wbr/>333,<wbr/> '6' will mean an
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001194exposure compensation of +2 EV; -3 will mean an exposure
Igor Murashkin0b080452013-12-27 15:30:25 -08001195compensation of -1</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001196 </td>
1197 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001198
1199
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001200 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1201 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001202
1203
1204 <tr class="entry" id="controls_android.control.aeLock">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001205 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001206 android.<wbr/>control.<wbr/>ae<wbr/>Lock
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001207 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001208 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001209 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001210
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001211 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001212
1213 <ul class="entry_type_enum">
1214 <li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001215 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001216 <span class="entry_type_enum_notes"><p>Autoexposure lock is disabled; the AE algorithm
1217is free to update its parameters.<wbr/></p></span>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001218 </li>
1219 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001220 <span class="entry_type_enum_name">ON</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001221 <span class="entry_type_enum_notes"><p>Autoexposure lock is enabled; the AE algorithm
1222must not update the exposure and sensitivity parameters
1223while the lock is active</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001224 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001225 </ul>
1226
1227 </td> <!-- entry_type -->
1228
1229 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001230 <p>Whether AE is currently locked to its latest
1231calculated values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001232 </td>
1233
1234 <td class="entry_units">
1235 </td>
1236
1237 <td class="entry_range">
1238 </td>
1239
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001240 <td class="entry_tags">
1241 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001242 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001243 </ul>
1244 </td>
1245
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001246 </tr>
1247 <tr class="entries_header">
1248 <th class="th_details" colspan="5">Details</th>
1249 </tr>
1250 <tr class="entry_cont">
1251 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001252 <p>Note that even when AE is locked,<wbr/> the flash may be
1253fired if the AE mode is ON_<wbr/>AUTO_<wbr/>FLASH /<wbr/> ON_<wbr/>ALWAYS_<wbr/>FLASH /<wbr/>
1254ON_<wbr/>AUTO_<wbr/>FLASH_<wbr/>REDEYE.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001255 </td>
1256 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001257
1258
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001259 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1260 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001261
1262
1263 <tr class="entry" id="controls_android.control.aeMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001264 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001265 android.<wbr/>control.<wbr/>ae<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001266 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001267 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001268 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001269
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001270 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001271
1272 <ul class="entry_type_enum">
1273 <li>
1274 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001275 <span class="entry_type_enum_notes"><p>The camera device's autoexposure routine is disabled;
1276the application-selected <a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
1277<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a> and
1278<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a> are used by the camera
1279device,<wbr/> along with android.<wbr/>flash.<wbr/>* fields,<wbr/> if there's
1280a flash unit for this camera device.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001281 </li>
1282 <li>
1283 <span class="entry_type_enum_name">ON</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001284 <span class="entry_type_enum_notes"><p>The camera device's autoexposure routine is active,<wbr/>
1285with no flash control.<wbr/> The application's values for
1286<a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
1287<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and
1288<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a> are ignored.<wbr/> The
1289application has control over the various
1290android.<wbr/>flash.<wbr/>* fields.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001291 </li>
1292 <li>
1293 <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001294 <span class="entry_type_enum_notes"><p>Like ON,<wbr/> except that the camera device also controls
1295the camera's flash unit,<wbr/> firing it in low-light
1296conditions.<wbr/> The flash may be fired during a
1297precapture sequence (triggered by
1298<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>) and may be fired
1299for captures for which the
1300<a href="#controls_android.control.captureIntent">android.<wbr/>control.<wbr/>capture<wbr/>Intent</a> field is set to
1301STILL_<wbr/>CAPTURE</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001302 </li>
1303 <li>
1304 <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001305 <span class="entry_type_enum_notes"><p>Like ON,<wbr/> except that the camera device also controls
1306the camera's flash unit,<wbr/> always firing it for still
1307captures.<wbr/> The flash may be fired during a precapture
1308sequence (triggered by
1309<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>) and will always
1310be fired for captures for which the
1311<a href="#controls_android.control.captureIntent">android.<wbr/>control.<wbr/>capture<wbr/>Intent</a> field is set to
1312STILL_<wbr/>CAPTURE</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001313 </li>
1314 <li>
1315 <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001316 <span class="entry_type_enum_notes"><p>Like ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/> but with automatic red eye
1317reduction.<wbr/> If deemed necessary by the camera device,<wbr/>
1318a red eye reduction flash will fire during the
1319precapture sequence.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001320 </li>
1321 </ul>
1322
1323 </td> <!-- entry_type -->
1324
1325 <td class="entry_description">
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08001326 <p>The desired mode for the camera device's
1327auto-exposure routine.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001328 </td>
1329
1330 <td class="entry_units">
1331 </td>
1332
1333 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001334 <p><a href="#static_android.control.aeAvailableModes">android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001335 </td>
1336
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001337 <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>
1344 <tr class="entries_header">
1345 <th class="th_details" colspan="5">Details</th>
1346 </tr>
1347 <tr class="entry_cont">
1348 <td class="entry_details" colspan="5">
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08001349 <p>This control is only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> is
1350AUTO.<wbr/></p>
1351<p>When set to any of the ON modes,<wbr/> the camera device's
1352auto-exposure routine is enabled,<wbr/> overriding the
1353application's selected exposure time,<wbr/> sensor sensitivity,<wbr/>
1354and frame duration (<a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
1355<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and
1356<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a>).<wbr/> If one of the FLASH modes
1357is selected,<wbr/> the camera device's flash unit controls are
1358also overridden.<wbr/></p>
1359<p>The FLASH modes are only available if the camera device
1360has a flash unit (<a href="#static_android.flash.info.available">android.<wbr/>flash.<wbr/>info.<wbr/>available</a> is <code>true</code>).<wbr/></p>
1361<p>If flash TORCH mode is desired,<wbr/> this field must be set to
1362ON or OFF,<wbr/> and <a href="#controls_android.flash.mode">android.<wbr/>flash.<wbr/>mode</a> set to TORCH.<wbr/></p>
1363<p>When set to any of the ON modes,<wbr/> the values chosen by the
1364camera device auto-exposure routine for the overridden
1365fields for a given capture will be available in its
1366CaptureResult.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001367 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001368 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001369
1370
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001371 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1372 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001373
1374
1375 <tr class="entry" id="controls_android.control.aeRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001376 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001377 android.<wbr/>control.<wbr/>ae<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001378 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001379 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001380 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001381 <span class="entry_type_container">x</span>
1382
1383 <span class="entry_type_array">
1384 5 x area_count
1385 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001386 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001387
1388
1389 </td> <!-- entry_type -->
1390
1391 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001392 <p>List of areas to use for
1393metering</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001394 </td>
1395
1396 <td class="entry_units">
1397 </td>
1398
1399 <td class="entry_range">
1400 </td>
1401
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001402 <td class="entry_tags">
1403 <ul class="entry_tags">
1404 <li><a href="#tag_BC">BC</a></li>
1405 </ul>
1406 </td>
1407
1408 </tr>
1409 <tr class="entries_header">
1410 <th class="th_details" colspan="5">Details</th>
1411 </tr>
1412 <tr class="entry_cont">
1413 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001414 <p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
1415xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
1416specified coordinates.<wbr/></p>
1417<p>The coordinate system is based on the active pixel array,<wbr/>
1418with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001419(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
1420<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08001421bottom-right pixel in the active pixel array.<wbr/> The weight
1422should be nonnegative.<wbr/></p>
1423<p>If all regions have 0 weight,<wbr/> then no specific metering area
1424needs to be used by the HAL.<wbr/> If the metering region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001425outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001426should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08001427used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001428 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001429 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001430
1431
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001432 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1433 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001434
1435
1436 <tr class="entry" id="controls_android.control.aeTargetFpsRange">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001437 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001438 android.<wbr/>control.<wbr/>ae<wbr/>Target<wbr/>Fps<wbr/>Range
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001439 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001440 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001441 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001442 <span class="entry_type_container">x</span>
1443
1444 <span class="entry_type_array">
1445 2
1446 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001447 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001448
1449
1450 </td> <!-- entry_type -->
1451
1452 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001453 <p>Range over which fps can be adjusted to
1454maintain exposure</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001455 </td>
1456
1457 <td class="entry_units">
1458 </td>
1459
1460 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001461 <p><a href="#static_android.control.aeAvailableTargetFpsRanges">android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Target<wbr/>Fps<wbr/>Ranges</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001462 </td>
1463
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001464 <td class="entry_tags">
1465 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001466 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001467 </ul>
1468 </td>
1469
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001470 </tr>
1471 <tr class="entries_header">
1472 <th class="th_details" colspan="5">Details</th>
1473 </tr>
1474 <tr class="entry_cont">
1475 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001476 <p>Only constrains AE algorithm,<wbr/> not manual control
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001477of <a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001478 </td>
1479 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001480
1481
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001482 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1483 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001484
1485
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001486 <tr class="entry" id="controls_android.control.aePrecaptureTrigger">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001487 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001488 android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001489 </td>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001490 <td class="entry_type">
1491 <span class="entry_type_name entry_type_name_enum">byte</span>
1492
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001493 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001494
1495 <ul class="entry_type_enum">
1496 <li>
1497 <span class="entry_type_enum_name">IDLE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001498 <span class="entry_type_enum_notes"><p>The trigger is idle.<wbr/></p></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001499 </li>
1500 <li>
1501 <span class="entry_type_enum_name">START</span>
Zhijun He92e698d2014-01-13 16:24:31 -08001502 <span class="entry_type_enum_notes"><p>The precapture metering sequence will be started
1503by the camera device.<wbr/> The exact effect of the precapture
1504trigger depends on the current AE mode and state.<wbr/></p></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001505 </li>
1506 </ul>
1507
1508 </td> <!-- entry_type -->
1509
1510 <td class="entry_description">
Zhijun He92e698d2014-01-13 16:24:31 -08001511 <p>Whether the camera device will trigger a precapture
1512metering sequence when it processes this request.<wbr/></p>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001513 </td>
1514
1515 <td class="entry_units">
1516 </td>
1517
1518 <td class="entry_range">
1519 </td>
1520
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001521 <td class="entry_tags">
1522 <ul class="entry_tags">
1523 <li><a href="#tag_BC">BC</a></li>
1524 </ul>
1525 </td>
1526
1527 </tr>
1528 <tr class="entries_header">
1529 <th class="th_details" colspan="5">Details</th>
1530 </tr>
1531 <tr class="entry_cont">
1532 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001533 <p>This entry is normally set to IDLE,<wbr/> or is not
1534included at all in the request settings.<wbr/> When included and
Zhijun He92e698d2014-01-13 16:24:31 -08001535set to START,<wbr/> the camera device will trigger the autoexposure
Igor Murashkin0b080452013-12-27 15:30:25 -08001536precapture metering sequence.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001537<p>The effect of AE precapture trigger depends on the current
Zhijun He92e698d2014-01-13 16:24:31 -08001538AE mode and state; see <a href="#dynamic_android.control.aeState">android.<wbr/>control.<wbr/>ae<wbr/>State</a> for AE precapture
1539state transition details.<wbr/></p>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001540 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001541 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001542
1543
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001544 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1545 <!-- end of entry -->
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001546
1547
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001548 <tr class="entry" id="controls_android.control.afMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001549 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001550 android.<wbr/>control.<wbr/>af<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001551 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001552 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001553 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001554
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001555 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001556
1557 <ul class="entry_type_enum">
1558 <li>
1559 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001560 <span class="entry_type_enum_notes"><p>The auto-focus routine does not control the lens;
1561<a href="#controls_android.lens.focusDistance">android.<wbr/>lens.<wbr/>focus<wbr/>Distance</a> is controlled by the
1562application</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001563 </li>
1564 <li>
1565 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001566 <span class="entry_type_enum_notes"><p>If lens is not fixed focus.<wbr/></p>
1567<p>Use <a href="#static_android.lens.info.minimumFocusDistance">android.<wbr/>lens.<wbr/>info.<wbr/>minimum<wbr/>Focus<wbr/>Distance</a> to determine if lens
1568is fixed-focus.<wbr/> In this mode,<wbr/> the lens does not move unless
1569the autofocus trigger action is called.<wbr/> When that trigger
1570is activated,<wbr/> AF must transition to ACTIVE_<wbr/>SCAN,<wbr/> then to
1571the outcome of the scan (FOCUSED or NOT_<wbr/>FOCUSED).<wbr/></p>
1572<p>Triggering AF_<wbr/>CANCEL resets the lens position to default,<wbr/>
1573and sets the AF state to INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001574 </li>
1575 <li>
1576 <span class="entry_type_enum_name">MACRO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001577 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the lens does not move unless the
1578autofocus trigger action is called.<wbr/></p>
1579<p>When that trigger is activated,<wbr/> AF must transition to
1580ACTIVE_<wbr/>SCAN,<wbr/> then to the outcome of the scan (FOCUSED or
1581NOT_<wbr/>FOCUSED).<wbr/> Triggering cancel AF resets the lens
1582position to default,<wbr/> and sets the AF state to
1583INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001584 </li>
1585 <li>
1586 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001587 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the AF algorithm modifies the lens
1588position continually to attempt to provide a
1589constantly-in-focus image stream.<wbr/></p>
1590<p>The focusing behavior should be suitable for good quality
1591video recording; typically this means slower focus
1592movement and no overshoots.<wbr/> When the AF trigger is not
1593involved,<wbr/> the AF algorithm should start in INACTIVE state,<wbr/>
1594and then transition into PASSIVE_<wbr/>SCAN and PASSIVE_<wbr/>FOCUSED
1595states as appropriate.<wbr/> When the AF trigger is activated,<wbr/>
1596the algorithm should immediately transition into
1597AF_<wbr/>FOCUSED or AF_<wbr/>NOT_<wbr/>FOCUSED as appropriate,<wbr/> and lock the
1598lens position until a cancel AF trigger is received.<wbr/></p>
1599<p>Once cancel is received,<wbr/> the algorithm should transition
1600back to INACTIVE and resume passive scan.<wbr/> Note that this
1601behavior is not identical to CONTINUOUS_<wbr/>PICTURE,<wbr/> since an
1602ongoing PASSIVE_<wbr/>SCAN must immediately be
1603canceled.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001604 </li>
1605 <li>
1606 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001607 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the AF algorithm modifies the lens
1608position continually to attempt to provide a
1609constantly-in-focus image stream.<wbr/></p>
1610<p>The focusing behavior should be suitable for still image
1611capture; typically this means focusing as fast as
1612possible.<wbr/> When the AF trigger is not involved,<wbr/> the AF
1613algorithm should start in INACTIVE state,<wbr/> and then
1614transition into PASSIVE_<wbr/>SCAN and PASSIVE_<wbr/>FOCUSED states as
1615appropriate as it attempts to maintain focus.<wbr/> When the AF
1616trigger is activated,<wbr/> the algorithm should finish its
1617PASSIVE_<wbr/>SCAN if active,<wbr/> and then transition into
1618AF_<wbr/>FOCUSED or AF_<wbr/>NOT_<wbr/>FOCUSED as appropriate,<wbr/> and lock the
1619lens position until a cancel AF trigger is received.<wbr/></p>
1620<p>When the AF cancel trigger is activated,<wbr/> the algorithm
1621should transition back to INACTIVE and then act as if it
1622has just been started.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001623 </li>
1624 <li>
1625 <span class="entry_type_enum_name">EDOF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001626 <span class="entry_type_enum_notes"><p>Extended depth of field (digital focus).<wbr/> AF
1627trigger is ignored,<wbr/> AF state should always be
1628INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001629 </li>
1630 </ul>
1631
1632 </td> <!-- entry_type -->
1633
1634 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001635 <p>Whether AF is currently enabled,<wbr/> and what
1636mode it is set to</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001637 </td>
1638
1639 <td class="entry_units">
1640 </td>
1641
1642 <td class="entry_range">
Zhijun He7787f7f2014-01-14 16:30:31 -08001643 <p><a href="#static_android.control.afAvailableModes">android.<wbr/>control.<wbr/>af<wbr/>Available<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001644 </td>
1645
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001646 <td class="entry_tags">
1647 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001648 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001649 </ul>
1650 </td>
1651
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001652 </tr>
1653 <tr class="entries_header">
1654 <th class="th_details" colspan="5">Details</th>
1655 </tr>
1656 <tr class="entry_cont">
1657 <td class="entry_details" colspan="5">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001658 <p>Only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> = AUTO.<wbr/></p>
Zhijun Hef163fa92014-01-14 09:59:04 -08001659<p>If the lens is controlled by the camera device auto-focus algorithm,<wbr/>
1660the camera device will report the current AF status in android.<wbr/>control.<wbr/>af<wbr/>State
1661in result metadata.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001662 </td>
1663 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001664
1665
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001666 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1667 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001668
1669
1670 <tr class="entry" id="controls_android.control.afRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001671 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001672 android.<wbr/>control.<wbr/>af<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001673 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001674 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001675 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001676 <span class="entry_type_container">x</span>
1677
1678 <span class="entry_type_array">
1679 5 x area_count
1680 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001681 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001682
1683
1684 </td> <!-- entry_type -->
1685
1686 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001687 <p>List of areas to use for focus
1688estimation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001689 </td>
1690
1691 <td class="entry_units">
1692 </td>
1693
1694 <td class="entry_range">
1695 </td>
1696
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001697 <td class="entry_tags">
1698 <ul class="entry_tags">
1699 <li><a href="#tag_BC">BC</a></li>
1700 </ul>
1701 </td>
1702
1703 </tr>
1704 <tr class="entries_header">
1705 <th class="th_details" colspan="5">Details</th>
1706 </tr>
1707 <tr class="entry_cont">
1708 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001709 <p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
1710xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
1711specified coordinates.<wbr/></p>
1712<p>The coordinate system is based on the active pixel array,<wbr/>
1713with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001714(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
1715<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08001716bottom-right pixel in the active pixel array.<wbr/> The weight
1717should be nonnegative.<wbr/></p>
1718<p>If all regions have 0 weight,<wbr/> then no specific focus area
1719needs to be used by the HAL.<wbr/> If the focusing region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08001720outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08001721should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08001722used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001723 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001724 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001725
1726
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001727 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1728 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001729
1730
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001731 <tr class="entry" id="controls_android.control.afTrigger">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001732 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001733 android.<wbr/>control.<wbr/>af<wbr/>Trigger
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001734 </td>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001735 <td class="entry_type">
1736 <span class="entry_type_name entry_type_name_enum">byte</span>
1737
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001738 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001739
1740 <ul class="entry_type_enum">
1741 <li>
1742 <span class="entry_type_enum_name">IDLE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001743 <span class="entry_type_enum_notes"><p>The trigger is idle.<wbr/></p></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001744 </li>
1745 <li>
1746 <span class="entry_type_enum_name">START</span>
Zhijun He92e698d2014-01-13 16:24:31 -08001747 <span class="entry_type_enum_notes"><p>Autofocus will trigger now.<wbr/></p></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001748 </li>
1749 <li>
1750 <span class="entry_type_enum_name">CANCEL</span>
Zhijun He92e698d2014-01-13 16:24:31 -08001751 <span class="entry_type_enum_notes"><p>Autofocus will return to its initial
1752state,<wbr/> and cancel any currently active trigger.<wbr/></p></span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001753 </li>
1754 </ul>
1755
1756 </td> <!-- entry_type -->
1757
1758 <td class="entry_description">
Zhijun He92e698d2014-01-13 16:24:31 -08001759 <p>Whether the camera device will trigger autofocus for this request.<wbr/></p>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001760 </td>
1761
1762 <td class="entry_units">
1763 </td>
1764
1765 <td class="entry_range">
1766 </td>
1767
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001768 <td class="entry_tags">
1769 <ul class="entry_tags">
1770 <li><a href="#tag_BC">BC</a></li>
1771 </ul>
1772 </td>
1773
1774 </tr>
1775 <tr class="entries_header">
1776 <th class="th_details" colspan="5">Details</th>
1777 </tr>
1778 <tr class="entry_cont">
1779 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001780 <p>This entry is normally set to IDLE,<wbr/> or is not
1781included at all in the request settings.<wbr/></p>
Zhijun He92e698d2014-01-13 16:24:31 -08001782<p>When included and set to START,<wbr/> the camera device will trigger the
1783autofocus algorithm.<wbr/> If autofocus is disabled,<wbr/> this trigger has no effect.<wbr/></p>
1784<p>When set to CANCEL,<wbr/> the camera device will cancel any active trigger,<wbr/>
1785and return to its initial AF state.<wbr/></p>
1786<p>See <a href="#dynamic_android.control.afState">android.<wbr/>control.<wbr/>af<wbr/>State</a> for what that means for each AF mode.<wbr/></p>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001787 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001788 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001789
1790
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001791 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1792 <!-- end of entry -->
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001793
1794
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001795 <tr class="entry" id="controls_android.control.awbLock">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001796 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001797 android.<wbr/>control.<wbr/>awb<wbr/>Lock
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001798 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001799 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001800 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001801
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001802 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001803
1804 <ul class="entry_type_enum">
1805 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001806 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001807 <span class="entry_type_enum_notes"><p>Auto-whitebalance lock is disabled; the AWB
1808algorithm is free to update its parameters if in AUTO
1809mode.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001810 </li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001811 <li>
1812 <span class="entry_type_enum_name">ON</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001813 <span class="entry_type_enum_notes"><p>Auto-whitebalance lock is enabled; the AWB
1814algorithm must not update the exposure and sensitivity
1815parameters while the lock is active</p></span>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001816 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001817 </ul>
1818
1819 </td> <!-- entry_type -->
1820
1821 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001822 <p>Whether AWB is currently locked to its
1823latest calculated values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001824 </td>
1825
1826 <td class="entry_units">
1827 </td>
1828
1829 <td class="entry_range">
1830 </td>
1831
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001832 <td class="entry_tags">
1833 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001834 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001835 </ul>
1836 </td>
1837
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001838 </tr>
1839 <tr class="entries_header">
1840 <th class="th_details" colspan="5">Details</th>
1841 </tr>
1842 <tr class="entry_cont">
1843 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08001844 <p>Note that AWB lock is only meaningful for AUTO
1845mode; in other modes,<wbr/> AWB is already fixed to a specific
1846setting</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001847 </td>
1848 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001849
1850
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001851 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1852 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001853
1854
1855 <tr class="entry" id="controls_android.control.awbMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001856 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001857 android.<wbr/>control.<wbr/>awb<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001858 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001859 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001860 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001861
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001862 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001863
1864 <ul class="entry_type_enum">
1865 <li>
1866 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001867 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1868the application-selected color transform matrix
1869(<a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>) and gains
1870(<a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a>) are used by the camera
1871device for manual white balance control.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001872 </li>
1873 <li>
1874 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001875 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is active;
1876the application's values for android.<wbr/>color<wbr/>Correction.<wbr/>transform
1877and <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> are ignored.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001878 </li>
1879 <li>
1880 <span class="entry_type_enum_name">INCANDESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001881 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1882the camera device uses incandescent light as the assumed scene
1883illumination for white balance.<wbr/> While the exact white balance
1884transforms are up to the camera device,<wbr/> they will approximately
1885match the CIE standard illuminant A.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001886 </li>
1887 <li>
1888 <span class="entry_type_enum_name">FLUORESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001889 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1890the camera device uses fluorescent light as the assumed scene
1891illumination for white balance.<wbr/> While the exact white balance
1892transforms are up to the camera device,<wbr/> they will approximately
1893match the CIE standard illuminant F2.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001894 </li>
1895 <li>
1896 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001897 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1898the camera device uses warm fluorescent light as the assumed scene
1899illumination for white balance.<wbr/> While the exact white balance
1900transforms are up to the camera device,<wbr/> they will approximately
1901match the CIE standard illuminant F4.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001902 </li>
1903 <li>
1904 <span class="entry_type_enum_name">DAYLIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001905 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1906the camera device uses daylight light as the assumed scene
1907illumination for white balance.<wbr/> While the exact white balance
1908transforms are up to the camera device,<wbr/> they will approximately
1909match the CIE standard illuminant D65.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001910 </li>
1911 <li>
1912 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001913 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1914the camera device uses cloudy daylight light as the assumed scene
1915illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001916 </li>
1917 <li>
1918 <span class="entry_type_enum_name">TWILIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001919 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1920the camera device uses twilight light as the assumed scene
1921illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001922 </li>
1923 <li>
1924 <span class="entry_type_enum_name">SHADE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08001925 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
1926the camera device uses shade light as the assumed scene
1927illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001928 </li>
1929 </ul>
1930
1931 </td> <!-- entry_type -->
1932
1933 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001934 <p>Whether AWB is currently setting the color
1935transform fields,<wbr/> and what its illumination target
1936is</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001937 </td>
1938
1939 <td class="entry_units">
1940 </td>
1941
1942 <td class="entry_range">
Zhijun He7787f7f2014-01-14 16:30:31 -08001943 <p><a href="#static_android.control.awbAvailableModes">android.<wbr/>control.<wbr/>awb<wbr/>Available<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001944 </td>
1945
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001946 <td class="entry_tags">
1947 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001948 <li><a href="#tag_BC">BC</a></li>
1949 <li><a href="#tag_AWB">AWB</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001950 </ul>
1951 </td>
1952
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001953 </tr>
1954 <tr class="entries_header">
1955 <th class="th_details" colspan="5">Details</th>
1956 </tr>
1957 <tr class="entry_cont">
1958 <td class="entry_details" colspan="5">
Zhijun He7787f7f2014-01-14 16:30:31 -08001959 <p>This control is only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> is AUTO.<wbr/></p>
1960<p>When set to the ON mode,<wbr/> the camera device's auto white balance
1961routine is enabled,<wbr/> overriding the application's selected
1962<a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>,<wbr/> <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> and
1963<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a>.<wbr/></p>
1964<p>When set to the OFF mode,<wbr/> the camera device's auto white balance
1965routine is disabled.<wbr/> The applicantion manually controls the white
1966balance by <a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>,<wbr/> android.<wbr/>color<wbr/>Correction.<wbr/>gains
1967and <a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a>.<wbr/></p>
1968<p>When set to any other modes,<wbr/> the camera device's auto white balance
1969routine is disabled.<wbr/> The camera device uses each particular illumination
1970target for white balance adjustment.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001971 </td>
1972 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001973
1974
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08001975 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
1976 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001977
1978
1979 <tr class="entry" id="controls_android.control.awbRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001980 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08001981 android.<wbr/>control.<wbr/>awb<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08001982 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001983 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001984 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001985 <span class="entry_type_container">x</span>
1986
1987 <span class="entry_type_array">
1988 5 x area_count
1989 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001990 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001991
1992
1993 </td> <!-- entry_type -->
1994
1995 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08001996 <p>List of areas to use for illuminant
1997estimation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001998 </td>
1999
2000 <td class="entry_units">
2001 </td>
2002
2003 <td class="entry_range">
2004 </td>
2005
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002006 <td class="entry_tags">
2007 <ul class="entry_tags">
2008 <li><a href="#tag_BC">BC</a></li>
2009 </ul>
2010 </td>
2011
2012 </tr>
2013 <tr class="entries_header">
2014 <th class="th_details" colspan="5">Details</th>
2015 </tr>
2016 <tr class="entry_cont">
2017 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08002018 <p>Only used in AUTO mode.<wbr/></p>
2019<p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
2020xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
2021specified coordinates.<wbr/></p>
2022<p>The coordinate system is based on the active pixel array,<wbr/>
2023with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002024(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
2025<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08002026bottom-right pixel in the active pixel array.<wbr/> The weight
2027should be nonnegative.<wbr/></p>
2028<p>If all regions have 0 weight,<wbr/> then no specific metering area
2029needs to be used by the HAL.<wbr/> If the metering region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002030outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08002031should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08002032used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002033 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002034 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002035
2036
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002037 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2038 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002039
2040
2041 <tr class="entry" id="controls_android.control.captureIntent">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002042 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002043 android.<wbr/>control.<wbr/>capture<wbr/>Intent
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002044 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002045 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002046 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002047
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002048 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002049
2050 <ul class="entry_type_enum">
2051 <li>
2052 <span class="entry_type_enum_name">CUSTOM</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002053 <span class="entry_type_enum_notes"><p>This request doesn't fall into the other
2054categories.<wbr/> Default to preview-like
2055behavior.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002056 </li>
2057 <li>
2058 <span class="entry_type_enum_name">PREVIEW</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002059 <span class="entry_type_enum_notes"><p>This request is for a preview-like usecase.<wbr/> The
2060precapture trigger may be used to start off a metering
2061w/<wbr/>flash sequence</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002062 </li>
2063 <li>
2064 <span class="entry_type_enum_name">STILL_CAPTURE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002065 <span class="entry_type_enum_notes"><p>This request is for a still capture-type
2066usecase.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002067 </li>
2068 <li>
2069 <span class="entry_type_enum_name">VIDEO_RECORD</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002070 <span class="entry_type_enum_notes"><p>This request is for a video recording
2071usecase.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002072 </li>
2073 <li>
2074 <span class="entry_type_enum_name">VIDEO_SNAPSHOT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002075 <span class="entry_type_enum_notes"><p>This request is for a video snapshot (still
2076image while recording video) usecase</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002077 </li>
2078 <li>
2079 <span class="entry_type_enum_name">ZERO_SHUTTER_LAG</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002080 <span class="entry_type_enum_notes"><p>This request is for a ZSL usecase; the
2081application will stream full-resolution images and
2082reprocess one or several later for a final
2083capture</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002084 </li>
2085 </ul>
2086
2087 </td> <!-- entry_type -->
2088
2089 <td class="entry_description">
Zhijun Heea27bc32014-01-15 13:47:59 -08002090 <p>Information to the camera device 3A (auto-exposure,<wbr/>
2091auto-focus,<wbr/> auto-white balance) routines about the purpose
2092of this capture,<wbr/> to help the camera device to decide optimal 3A
2093strategy.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002094 </td>
2095
2096 <td class="entry_units">
2097 </td>
2098
2099 <td class="entry_range">
Zhijun Heea27bc32014-01-15 13:47:59 -08002100 <p>All must be supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002101 </td>
2102
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002103 <td class="entry_tags">
2104 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002105 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002106 </ul>
2107 </td>
2108
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002109 </tr>
2110 <tr class="entries_header">
2111 <th class="th_details" colspan="5">Details</th>
2112 </tr>
2113 <tr class="entry_cont">
2114 <td class="entry_details" colspan="5">
Zhijun Heea27bc32014-01-15 13:47:59 -08002115 <p>This control is only effective if <code><a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> != OFF</code>
2116and any 3A routine is active.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002117 </td>
2118 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002119
2120
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002121 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2122 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002123
2124
2125 <tr class="entry" id="controls_android.control.effectMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002126 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002127 android.<wbr/>control.<wbr/>effect<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002128 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002129 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002130 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002131
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002132 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002133
2134 <ul class="entry_type_enum">
2135 <li>
2136 <span class="entry_type_enum_name">OFF</span>
2137 </li>
2138 <li>
2139 <span class="entry_type_enum_name">MONO</span>
2140 <span class="entry_type_enum_optional">optional</span>
2141 </li>
2142 <li>
2143 <span class="entry_type_enum_name">NEGATIVE</span>
2144 <span class="entry_type_enum_optional">optional</span>
2145 </li>
2146 <li>
2147 <span class="entry_type_enum_name">SOLARIZE</span>
2148 <span class="entry_type_enum_optional">optional</span>
2149 </li>
2150 <li>
2151 <span class="entry_type_enum_name">SEPIA</span>
2152 <span class="entry_type_enum_optional">optional</span>
2153 </li>
2154 <li>
2155 <span class="entry_type_enum_name">POSTERIZE</span>
2156 <span class="entry_type_enum_optional">optional</span>
2157 </li>
2158 <li>
2159 <span class="entry_type_enum_name">WHITEBOARD</span>
2160 <span class="entry_type_enum_optional">optional</span>
2161 </li>
2162 <li>
2163 <span class="entry_type_enum_name">BLACKBOARD</span>
2164 <span class="entry_type_enum_optional">optional</span>
2165 </li>
2166 <li>
2167 <span class="entry_type_enum_name">AQUA</span>
2168 <span class="entry_type_enum_optional">optional</span>
2169 </li>
2170 </ul>
2171
2172 </td> <!-- entry_type -->
2173
2174 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002175 <p>Whether any special color effect is in use.<wbr/>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002176Only used if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> != OFF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002177 </td>
2178
2179 <td class="entry_units">
2180 </td>
2181
2182 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002183 <p><a href="#static_android.control.availableEffects">android.<wbr/>control.<wbr/>available<wbr/>Effects</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002184 </td>
2185
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002186 <td class="entry_tags">
2187 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002188 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002189 </ul>
2190 </td>
2191
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002192 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002193
2194
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002195 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2196 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002197
2198
2199 <tr class="entry" id="controls_android.control.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002200 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002201 android.<wbr/>control.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002202 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002203 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002204 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002205
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002207
2208 <ul class="entry_type_enum">
2209 <li>
2210 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002211 <span class="entry_type_enum_notes"><p>Full application control of pipeline.<wbr/> All 3A
2212routines are disabled,<wbr/> no other settings in
2213android.<wbr/>control.<wbr/>* have any effect</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002214 </li>
2215 <li>
2216 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002217 <span class="entry_type_enum_notes"><p>Use settings for each individual 3A routine.<wbr/>
2218Manual control of capture parameters is disabled.<wbr/> All
2219controls in android.<wbr/>control.<wbr/>* besides sceneMode take
2220effect</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002221 </li>
2222 <li>
2223 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08002224 <span class="entry_type_enum_notes"><p>Use specific scene mode.<wbr/> Enabling this disables
2225control.<wbr/>aeMode,<wbr/> control.<wbr/>awbMode and control.<wbr/>afMode
2226controls; the HAL must ignore those settings while
2227USE_<wbr/>SCENE_<wbr/>MODE is active (except for FACE_<wbr/>PRIORITY
2228scene mode).<wbr/> Other control entries are still active.<wbr/>
2229This setting can only be used if availableSceneModes !=
2230UNSUPPORTED</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002231 </li>
2232 </ul>
2233
2234 </td> <!-- entry_type -->
2235
2236 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002237 <p>Overall mode of 3A control
2238routines</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002239 </td>
2240
2241 <td class="entry_units">
2242 </td>
2243
2244 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002245 <p>all must be supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002246 </td>
2247
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002248 <td class="entry_tags">
2249 <ul class="entry_tags">
2250 <li><a href="#tag_BC">BC</a></li>
2251 </ul>
2252 </td>
2253
2254 </tr>
2255 <tr class="entries_header">
2256 <th class="th_details" colspan="5">Details</th>
2257 </tr>
2258 <tr class="entry_cont">
2259 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08002260 <p>High-level 3A control.<wbr/> When set to OFF,<wbr/> all 3A control
Zhijun Hef90eeaf2014-01-16 12:13:35 -08002261by the camera device is disabled.<wbr/> The application must set the fields for
Igor Murashkin0b080452013-12-27 15:30:25 -08002262capture parameters itself.<wbr/></p>
2263<p>When set to AUTO,<wbr/> the individual algorithm controls in
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002264android.<wbr/>control.<wbr/>* are in effect,<wbr/> such as <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a>.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -08002265<p>When set to USE_<wbr/>SCENE_<wbr/>MODE,<wbr/> the individual controls in
Zhijun Hef90eeaf2014-01-16 12:13:35 -08002266android.<wbr/>control.<wbr/>* are mostly disabled,<wbr/> and the camera device implements
Igor Murashkin0b080452013-12-27 15:30:25 -08002267one of the scene mode settings (such as ACTION,<wbr/> SUNSET,<wbr/> or PARTY)
Zhijun Hef90eeaf2014-01-16 12:13:35 -08002268as it wishes.<wbr/> The camera device scene mode 3A settings are provided by
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002269<a href="#static_android.control.sceneModeOverrides">android.<wbr/>control.<wbr/>scene<wbr/>Mode<wbr/>Overrides</a>.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002270 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002271 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002272
2273
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002274 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2275 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002276
2277
2278 <tr class="entry" id="controls_android.control.sceneMode">
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002279 <td class="entry_name" rowspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08002280 android.<wbr/>control.<wbr/>scene<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002281 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002282 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002283 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002284
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002285 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002286
2287 <ul class="entry_type_enum">
2288 <li>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002289 <span class="entry_type_enum_name">DISABLED</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002290 <span class="entry_type_enum_value">0</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002291 <span class="entry_type_enum_notes"><p>Indicates that no scene modes are set for a given capture request.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002292 </li>
2293 <li>
2294 <span class="entry_type_enum_name">FACE_PRIORITY</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002295 <span class="entry_type_enum_notes"><p>If face detection support exists,<wbr/> use face
2296detection data for auto-focus,<wbr/> auto-white balance,<wbr/> and
2297auto-exposure routines.<wbr/> If face detection statistics are
2298disabled (i.<wbr/>e.<wbr/> <a href="#controls_android.statistics.faceDetectMode">android.<wbr/>statistics.<wbr/>face<wbr/>Detect<wbr/>Mode</a> is set to OFF),<wbr/>
2299this should still operate correctly (but will not return
2300face detection statistics to the framework).<wbr/></p>
2301<p>Unlike the other scene modes,<wbr/> <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a>,<wbr/>
2302<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a>,<wbr/> and android.<wbr/>control.<wbr/>af<wbr/>Mode
2303remain active when FACE_<wbr/>PRIORITY is set.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002304 </li>
2305 <li>
2306 <span class="entry_type_enum_name">ACTION</span>
2307 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002308 <span class="entry_type_enum_notes"><p>Optimized for photos of quickly moving objects.<wbr/>
2309Similar to SPORTS.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002310 </li>
2311 <li>
2312 <span class="entry_type_enum_name">PORTRAIT</span>
2313 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002314 <span class="entry_type_enum_notes"><p>Optimized for still photos of people.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002315 </li>
2316 <li>
2317 <span class="entry_type_enum_name">LANDSCAPE</span>
2318 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002319 <span class="entry_type_enum_notes"><p>Optimized for photos of distant macroscopic objects.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002320 </li>
2321 <li>
2322 <span class="entry_type_enum_name">NIGHT</span>
2323 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002324 <span class="entry_type_enum_notes"><p>Optimized for low-light settings.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002325 </li>
2326 <li>
2327 <span class="entry_type_enum_name">NIGHT_PORTRAIT</span>
2328 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002329 <span class="entry_type_enum_notes"><p>Optimized for still photos of people in low-light
2330settings.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002331 </li>
2332 <li>
2333 <span class="entry_type_enum_name">THEATRE</span>
2334 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002335 <span class="entry_type_enum_notes"><p>Optimized for dim,<wbr/> indoor settings where flash must
2336remain off.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002337 </li>
2338 <li>
2339 <span class="entry_type_enum_name">BEACH</span>
2340 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002341 <span class="entry_type_enum_notes"><p>Optimized for bright,<wbr/> outdoor beach settings.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002342 </li>
2343 <li>
2344 <span class="entry_type_enum_name">SNOW</span>
2345 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002346 <span class="entry_type_enum_notes"><p>Optimized for bright,<wbr/> outdoor settings containing snow.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002347 </li>
2348 <li>
2349 <span class="entry_type_enum_name">SUNSET</span>
2350 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002351 <span class="entry_type_enum_notes"><p>Optimized for scenes of the setting sun.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002352 </li>
2353 <li>
2354 <span class="entry_type_enum_name">STEADYPHOTO</span>
2355 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002356 <span class="entry_type_enum_notes"><p>Optimized to avoid blurry photos due to small amounts of
2357device motion (for example: due to hand shake).<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002358 </li>
2359 <li>
2360 <span class="entry_type_enum_name">FIREWORKS</span>
2361 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002362 <span class="entry_type_enum_notes"><p>Optimized for nighttime photos of fireworks.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002363 </li>
2364 <li>
2365 <span class="entry_type_enum_name">SPORTS</span>
2366 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002367 <span class="entry_type_enum_notes"><p>Optimized for photos of quickly moving people.<wbr/>
2368Similar to ACTION.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002369 </li>
2370 <li>
2371 <span class="entry_type_enum_name">PARTY</span>
2372 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002373 <span class="entry_type_enum_notes"><p>Optimized for dim,<wbr/> indoor settings with multiple moving
2374people.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002375 </li>
2376 <li>
2377 <span class="entry_type_enum_name">CANDLELIGHT</span>
2378 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002379 <span class="entry_type_enum_notes"><p>Optimized for dim settings where the main light source
2380is a flame.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002381 </li>
2382 <li>
2383 <span class="entry_type_enum_name">BARCODE</span>
2384 <span class="entry_type_enum_optional">optional</span>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002385 <span class="entry_type_enum_notes"><p>Optimized for accurately capturing a photo of barcode
2386for use by camera applications that wish to read the
2387barcode value.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002388 </li>
2389 </ul>
2390
2391 </td> <!-- entry_type -->
2392
2393 <td class="entry_description">
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002394 <p>A camera mode optimized for conditions typical in a particular
2395capture setting.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002396 </td>
2397
2398 <td class="entry_units">
2399 </td>
2400
2401 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002402 <p><a href="#static_android.control.availableSceneModes">android.<wbr/>control.<wbr/>available<wbr/>Scene<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002403 </td>
2404
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002405 <td class="entry_tags">
2406 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002407 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002408 </ul>
2409 </td>
2410
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002411 </tr>
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002412 <tr class="entries_header">
2413 <th class="th_details" colspan="5">Details</th>
2414 </tr>
2415 <tr class="entry_cont">
2416 <td class="entry_details" colspan="5">
2417 <p>This is the mode that that is active when
2418<code><a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> == USE_<wbr/>SCENE_<wbr/>MODE</code>.<wbr/> Aside from FACE_<wbr/>PRIORITY,<wbr/>
2419these modes will disable <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a>,<wbr/>
2420<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a>,<wbr/> and <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> while in use.<wbr/></p>
2421<p>The interpretation and implementation of these scene modes is left
2422to the implementor of the camera device.<wbr/> Their behavior will not be
2423consistent across all devices,<wbr/> and any given device may only implement
2424a subset of these modes.<wbr/></p>
2425 </td>
2426 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002427
Ruben Brunk9e28ea72014-01-14 18:55:29 -08002428 <tr class="entries_header">
2429 <th class="th_details" colspan="5">HAL Implementation Details</th>
2430 </tr>
2431 <tr class="entry_cont">
2432 <td class="entry_details" colspan="5">
2433 <p>HAL implementations that include scene modes are expected to provide
2434the per-scene settings to use for <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a>,<wbr/>
2435<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a>,<wbr/> and <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> in
2436<a href="#static_android.control.sceneModeOverrides">android.<wbr/>control.<wbr/>scene<wbr/>Mode<wbr/>Overrides</a>.<wbr/></p>
2437 </td>
2438 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002439
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002440 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2441 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002442
2443
2444 <tr class="entry" id="controls_android.control.videoStabilizationMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002445 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002446 android.<wbr/>control.<wbr/>video<wbr/>Stabilization<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002447 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002448 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002449 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002450
Igor Murashkinb8dc8812013-07-17 16:29:34 -07002451 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002452
2453 <ul class="entry_type_enum">
2454 <li>
2455 <span class="entry_type_enum_name">OFF</span>
2456 </li>
2457 <li>
2458 <span class="entry_type_enum_name">ON</span>
2459 </li>
2460 </ul>
2461
2462 </td> <!-- entry_type -->
2463
2464 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002465 <p>Whether video stabilization is
2466active</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002467 </td>
2468
2469 <td class="entry_units">
2470 </td>
2471
2472 <td class="entry_range">
2473 </td>
2474
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002475 <td class="entry_tags">
2476 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002477 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002478 </ul>
2479 </td>
2480
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002481 </tr>
2482 <tr class="entries_header">
2483 <th class="th_details" colspan="5">Details</th>
2484 </tr>
2485 <tr class="entry_cont">
2486 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08002487 <p>If enabled,<wbr/> video stabilization can modify the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002488<a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a> to keep the video stream
Igor Murashkin0b080452013-12-27 15:30:25 -08002489stabilized</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002490 </td>
2491 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002492
2493
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002494 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2495 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002496
2497
2498
2499 <!-- end of kind -->
2500 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002501 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002502
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002503 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002504 <tr>
2505 <th class="th_name">Property Name</th>
2506 <th class="th_type">Type</th>
2507 <th class="th_description">Description</th>
2508 <th class="th_units">Units</th>
2509 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002510 <th class="th_tags">Tags</th>
2511 </tr>
2512 </thead>
2513
2514 <tbody>
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525 <tr class="entry" id="static_android.control.aeAvailableAntibandingModes">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08002526 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002527 android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Antibanding<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002528 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002529 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002530 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002531 <span class="entry_type_container">x</span>
2532
2533 <span class="entry_type_array">
2534 n
2535 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002536 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002537 <div class="entry_type_notes">list of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002538
2539
2540 </td> <!-- entry_type -->
2541
2542 <td class="entry_description">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08002543 <p>The set of auto-exposure antibanding modes that are
2544supported by this camera device.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002545 </td>
2546
2547 <td class="entry_units">
2548 </td>
2549
2550 <td class="entry_range">
2551 </td>
2552
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002553 <td class="entry_tags">
2554 </td>
2555
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002556 </tr>
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -08002557 <tr class="entries_header">
2558 <th class="th_details" colspan="5">Details</th>
2559 </tr>
2560 <tr class="entry_cont">
2561 <td class="entry_details" colspan="5">
2562 <p>Not all of the auto-exposure anti-banding modes may be
2563supported by a given camera device.<wbr/> This field lists the
2564valid anti-banding modes that the application may request
2565for this camera device; they must include AUTO.<wbr/></p>
2566 </td>
2567 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002568
2569
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002570 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2571 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002572
2573
2574 <tr class="entry" id="static_android.control.aeAvailableModes">
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08002575 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002576 android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002577 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002578 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002579 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002580 <span class="entry_type_container">x</span>
2581
2582 <span class="entry_type_array">
2583 n
2584 </span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08002585 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002586 <div class="entry_type_notes">list of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002587
2588
2589 </td> <!-- entry_type -->
2590
2591 <td class="entry_description">
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08002592 <p>The set of auto-exposure modes that are supported by this
2593camera device.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002594 </td>
2595
2596 <td class="entry_units">
2597 </td>
2598
2599 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002600 </td>
2601
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002602 <td class="entry_tags">
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08002603 <ul class="entry_tags">
2604 <li><a href="#tag_BC">BC</a></li>
2605 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002606 </td>
2607
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002608 </tr>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08002609 <tr class="entries_header">
2610 <th class="th_details" colspan="5">Details</th>
2611 </tr>
2612 <tr class="entry_cont">
2613 <td class="entry_details" colspan="5">
2614 <p>Not all the auto-exposure modes may be supported by a
2615given camera device,<wbr/> especially if no flash unit is
2616available.<wbr/> This entry lists the valid modes for
2617<a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> for this camera device.<wbr/></p>
2618<p>All camera devices support ON,<wbr/> and all camera devices with
2619flash units support ON_<wbr/>AUTO_<wbr/>FLASH and
2620ON_<wbr/>ALWAYS_<wbr/>FLASH.<wbr/></p>
2621<p>Full-capability camera devices always support OFF mode,<wbr/>
2622which enables application control of camera exposure time,<wbr/>
2623sensitivity,<wbr/> and frame duration.<wbr/></p>
2624 </td>
2625 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002626
2627
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002628 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2629 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002630
2631
2632 <tr class="entry" id="static_android.control.aeAvailableTargetFpsRanges">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002633 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002634 android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Target<wbr/>Fps<wbr/>Ranges
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002635 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002636 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002637 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002638 <span class="entry_type_container">x</span>
2639
2640 <span class="entry_type_array">
2641 2 x n
2642 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002643 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002644 <div class="entry_type_notes">list of pairs of frame rates</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002645
2646
2647 </td> <!-- entry_type -->
2648
2649 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002650 <p>List of frame rate ranges supported by the
2651AE algorithm/<wbr/>hardware</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002652 </td>
2653
2654 <td class="entry_units">
2655 </td>
2656
2657 <td class="entry_range">
2658 </td>
2659
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002660 <td class="entry_tags">
2661 </td>
2662
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002663 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002664
2665
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002666 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2667 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002668
2669
2670 <tr class="entry" id="static_android.control.aeCompensationRange">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002671 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002672 android.<wbr/>control.<wbr/>ae<wbr/>Compensation<wbr/>Range
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002673 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002674 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002675 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002676 <span class="entry_type_container">x</span>
2677
2678 <span class="entry_type_array">
2679 2
2680 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002681 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002682
2683
2684 </td> <!-- entry_type -->
2685
2686 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002687 <p>Maximum and minimum exposure compensation
2688setting,<wbr/> in counts of
2689android.<wbr/>control.<wbr/>ae<wbr/>Compensation<wbr/>Step<wbr/>Size</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002690 </td>
2691
2692 <td class="entry_units">
2693 </td>
2694
2695 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002696 <p>At least (-2,<wbr/>2)/<wbr/>(exp compensation step
2697size)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002698 </td>
2699
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002700 <td class="entry_tags">
2701 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002702 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002703 </ul>
2704 </td>
2705
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002706 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002707
2708
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002709 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2710 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002711
2712
2713 <tr class="entry" id="static_android.control.aeCompensationStep">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002714 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002715 android.<wbr/>control.<wbr/>ae<wbr/>Compensation<wbr/>Step
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002716 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002717 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002718 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002719
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002720 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002721
2722
2723 </td> <!-- entry_type -->
2724
2725 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002726 <p>Smallest step by which exposure compensation
2727can be changed</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002728 </td>
2729
2730 <td class="entry_units">
2731 </td>
2732
2733 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002734 <p>&lt;= 1/<wbr/>2</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002735 </td>
2736
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002737 <td class="entry_tags">
2738 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002739 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002740 </ul>
2741 </td>
2742
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002743 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002744
2745
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002746 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2747 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002748
2749
2750 <tr class="entry" id="static_android.control.afAvailableModes">
Zhijun Hef163fa92014-01-14 09:59:04 -08002751 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002752 android.<wbr/>control.<wbr/>af<wbr/>Available<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002753 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002754 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002755 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002756 <span class="entry_type_container">x</span>
2757
2758 <span class="entry_type_array">
2759 n
2760 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002761 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002762 <div class="entry_type_notes">List of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002763
2764
2765 </td> <!-- entry_type -->
2766
2767 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002768 <p>List of AF modes that can be
Zhijun Hef163fa92014-01-14 09:59:04 -08002769selected with <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a>.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002770 </td>
2771
2772 <td class="entry_units">
2773 </td>
2774
2775 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002776 </td>
2777
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002778 <td class="entry_tags">
2779 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002780 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002781 </ul>
2782 </td>
2783
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002784 </tr>
Zhijun Hef163fa92014-01-14 09:59:04 -08002785 <tr class="entries_header">
2786 <th class="th_details" colspan="5">Details</th>
2787 </tr>
2788 <tr class="entry_cont">
2789 <td class="entry_details" colspan="5">
2790 <p>Not all the auto-focus modes may be supported by a
2791given camera device.<wbr/> This entry lists the valid modes for
2792<a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> for this camera device.<wbr/></p>
2793<p>All camera devices will support OFF mode,<wbr/> and all camera devices with
2794adjustable focuser units (<code><a href="#static_android.lens.info.minimumFocusDistance">android.<wbr/>lens.<wbr/>info.<wbr/>minimum<wbr/>Focus<wbr/>Distance</a> &gt; 0</code>)
2795will support AUTO mode.<wbr/></p>
2796 </td>
2797 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002798
2799
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002800 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2801 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002802
2803
2804 <tr class="entry" id="static_android.control.availableEffects">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002805 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002806 android.<wbr/>control.<wbr/>available<wbr/>Effects
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002807 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002808 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002809 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002810 <span class="entry_type_container">x</span>
2811
2812 <span class="entry_type_array">
2813 n
2814 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002815 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002816 <div class="entry_type_notes">list of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002817
2818
2819 </td> <!-- entry_type -->
2820
2821 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002822 <p>what subset of the full color effect enum
2823list is supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002824 </td>
2825
2826 <td class="entry_units">
2827 </td>
2828
2829 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002830 <p>OFF must be listed</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002831 </td>
2832
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002833 <td class="entry_tags">
2834 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002835 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002836 </ul>
2837 </td>
2838
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002839 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002840
2841
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002842 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2843 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002844
2845
2846 <tr class="entry" id="static_android.control.availableSceneModes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002847 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002848 android.<wbr/>control.<wbr/>available<wbr/>Scene<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002849 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002850 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002851 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002852 <span class="entry_type_container">x</span>
2853
2854 <span class="entry_type_array">
2855 n
2856 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002857 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002858 <div class="entry_type_notes">list of enums from android.<wbr/>control.<wbr/>scene<wbr/>Mode,<wbr/> plus UNSUPPORTED to indicate no scene modes are supported</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002859
2860
2861 </td> <!-- entry_type -->
2862
2863 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002864 <p>what subset of the scene mode enum list is
2865supported.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002866 </td>
2867
2868 <td class="entry_units">
2869 </td>
2870
2871 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002872 <p>SCENE_<wbr/>MODE_<wbr/>FACE_<wbr/>PRIORITY must be supported if face
2873detection is supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002874 </td>
2875
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002876 <td class="entry_tags">
2877 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002878 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002879 </ul>
2880 </td>
2881
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002882 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002883
2884
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002885 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2886 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002887
2888
2889 <tr class="entry" id="static_android.control.availableVideoStabilizationModes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002890 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002891 android.<wbr/>control.<wbr/>available<wbr/>Video<wbr/>Stabilization<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002892 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002893 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002894 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002895 <span class="entry_type_container">x</span>
2896
2897 <span class="entry_type_array">
2898 n
2899 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002900 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08002901 <div class="entry_type_notes">List of enums.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002902
2903
2904 </td> <!-- entry_type -->
2905
2906 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002907 <p>List of video stabilization modes that can
2908be supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002909 </td>
2910
2911 <td class="entry_units">
2912 </td>
2913
2914 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08002915 <p>OFF must be included</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002916 </td>
2917
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002918 <td class="entry_tags">
2919 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002920 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002921 </ul>
2922 </td>
2923
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002924 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002925
2926
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002927 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2928 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002929
2930
2931 <tr class="entry" id="static_android.control.awbAvailableModes">
Zhijun He7787f7f2014-01-14 16:30:31 -08002932 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08002933 android.<wbr/>control.<wbr/>awb<wbr/>Available<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002934 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002935 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002936 <span class="entry_type_name">byte</span>
Alex Raya4251d92013-04-30 16:43:44 -07002937 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002938
Alex Raya4251d92013-04-30 16:43:44 -07002939 <span class="entry_type_array">
2940 n
2941 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002942 <span class="entry_type_visibility"> [public]</span>
Zhijun He7787f7f2014-01-14 16:30:31 -08002943 <div class="entry_type_notes">List of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002944
2945
2946 </td> <!-- entry_type -->
2947
2948 <td class="entry_description">
Zhijun He7787f7f2014-01-14 16:30:31 -08002949 <p>The set of auto-white-balance modes (<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a>)
2950that are supported by this camera device.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002951 </td>
2952
2953 <td class="entry_units">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002954 </td>
2955
2956 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002957 </td>
2958
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002959 <td class="entry_tags">
2960 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002961 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002962 </ul>
2963 </td>
2964
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002965 </tr>
Zhijun He7787f7f2014-01-14 16:30:31 -08002966 <tr class="entries_header">
2967 <th class="th_details" colspan="5">Details</th>
2968 </tr>
2969 <tr class="entry_cont">
2970 <td class="entry_details" colspan="5">
2971 <p>Not all the auto-white-balance modes may be supported by a
2972given camera device.<wbr/> This entry lists the valid modes for
2973<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a> for this camera device.<wbr/></p>
2974<p>All camera devices will support ON mode.<wbr/></p>
2975<p>Full-capability camera devices will always support OFF mode,<wbr/>
2976which enables application control of white balance,<wbr/> by using
2977<a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a> and <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a>(<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> must be set to TRANSFORM_<wbr/>MATRIX).<wbr/></p>
2978 </td>
2979 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002980
2981
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08002982 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
2983 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002984
2985
2986 <tr class="entry" id="static_android.control.maxRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002987 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08002988 android.<wbr/>control.<wbr/>max<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08002989 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002990 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002991 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002992
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002993 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002994
2995
2996 </td> <!-- entry_type -->
2997
2998 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08002999 <p>For AE,<wbr/> AWB,<wbr/> and AF,<wbr/> how many individual
3000regions can be listed for metering?</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003001 </td>
3002
3003 <td class="entry_units">
3004 </td>
3005
3006 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08003007 <p>&gt;= 1</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003008 </td>
3009
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003010 <td class="entry_tags">
3011 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003012 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003013 </ul>
3014 </td>
3015
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003016 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003017
3018
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003019 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3020 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003021
3022
3023 <tr class="entry" id="static_android.control.sceneModeOverrides">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003024 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003025 android.<wbr/>control.<wbr/>scene<wbr/>Mode<wbr/>Overrides
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003026 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003027 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003028 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003029 <span class="entry_type_container">x</span>
3030
3031 <span class="entry_type_array">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003032 3 x length(availableSceneModes)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003033 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003034 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003035
3036
3037 </td> <!-- entry_type -->
3038
3039 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003040 <p>List of AE,<wbr/> AWB,<wbr/> and AF modes to use for
3041each available scene mode</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003042 </td>
3043
3044 <td class="entry_units">
3045 </td>
3046
3047 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003048 <p>For each listed scene mode,<wbr/> lists the aeMode,<wbr/>
3049awbMode,<wbr/> and afMode that the HAL wants to use for that
3050scene mode.<wbr/></p>
3051<p>For each entry,<wbr/> the order is {aeMode,<wbr/> awbMode,<wbr/> afMode} in
3052order of increasing index</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003053 </td>
3054
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003055 <td class="entry_tags">
3056 <ul class="entry_tags">
3057 <li><a href="#tag_BC">BC</a></li>
3058 </ul>
3059 </td>
3060
3061 </tr>
3062 <tr class="entries_header">
3063 <th class="th_details" colspan="5">Details</th>
3064 </tr>
3065 <tr class="entry_cont">
3066 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08003067 <p>When a scene mode is enabled,<wbr/> the HAL is expected
3068to override aeMode,<wbr/> awbMode,<wbr/> and afMode with its
3069preferred settings for that scene mode.<wbr/></p>
3070<p>To simplify communication with old camera API applications,<wbr/>
3071the service wants this override list in the static metadata.<wbr/>
3072The order of this list matches that of availableSceneModes,<wbr/>
3073with 3 entires for each scene mode.<wbr/> The overrides listed
3074for SCENE_<wbr/>MODE_<wbr/>FACE_<wbr/>PRIORITY are ignored,<wbr/> since for that
3075mode,<wbr/> the application-set aeMode,<wbr/> awbMode,<wbr/> and afMode are
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003076used instead,<wbr/> like they are when <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> is
Igor Murashkin0b080452013-12-27 15:30:25 -08003077AUTO.<wbr/></p>
3078<p>It is recommended that for FACE_<wbr/>PRIORITY,<wbr/> the overrides
3079should be set to 0.<wbr/> As an example,<wbr/> if availableSceneModes is
3080{ FACE_<wbr/>PRIORITY,<wbr/> ACTION,<wbr/> NIGHT },<wbr/> then the service expects
3081this field to have 9 entries; for example { 0 ,<wbr/> 0,<wbr/> 0,<wbr/>
3082ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/> AUTO,<wbr/> CONTINUOUS_<wbr/>PICTURE,<wbr/> ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/>
3083INCANDESCENT,<wbr/> AUTO }</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003084 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003085 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003086
3087
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003088 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3089 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003090
3091
3092
3093 <!-- end of kind -->
3094 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003095 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003096
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003097 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003098 <tr>
3099 <th class="th_name">Property Name</th>
3100 <th class="th_type">Type</th>
3101 <th class="th_description">Description</th>
3102 <th class="th_units">Units</th>
3103 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003104 <th class="th_tags">Tags</th>
3105 </tr>
3106 </thead>
3107
3108 <tbody>
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119 <tr class="entry" id="dynamic_android.control.aePrecaptureId">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003120 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003121 android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Id
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003122 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003123 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003124 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003125
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003126 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003127
3128
3129 </td> <!-- entry_type -->
3130
3131 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003132 <p>The ID sent with the latest
3133CAMERA2_<wbr/>TRIGGER_<wbr/>PRECAPTURE_<wbr/>METERING call</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003134 </td>
3135
3136 <td class="entry_units">
3137 </td>
3138
3139 <td class="entry_range">
3140 </td>
3141
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003142 <td class="entry_tags">
3143 </td>
3144
3145 </tr>
3146 <tr class="entries_header">
3147 <th class="th_details" colspan="5">Details</th>
3148 </tr>
3149 <tr class="entry_cont">
3150 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08003151 <p>Must be 0 if no
3152CAMERA2_<wbr/>TRIGGER_<wbr/>PRECAPTURE_<wbr/>METERING trigger received yet
3153by HAL.<wbr/> Always updated even if AE algorithm ignores the
3154trigger</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003155 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003156 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003157
3158
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003159 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3160 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003161
3162
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003163 <tr class="entry" id="dynamic_android.control.aeMode">
3164 <td class="entry_name" rowspan="3">
3165 android.<wbr/>control.<wbr/>ae<wbr/>Mode
3166 </td>
3167 <td class="entry_type">
3168 <span class="entry_type_name entry_type_name_enum">byte</span>
3169
3170 <span class="entry_type_visibility"> [public]</span>
3171
3172 <ul class="entry_type_enum">
3173 <li>
3174 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003175 <span class="entry_type_enum_notes"><p>The camera device's autoexposure routine is disabled;
3176the application-selected <a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
3177<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a> and
3178<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a> are used by the camera
3179device,<wbr/> along with android.<wbr/>flash.<wbr/>* fields,<wbr/> if there's
3180a flash unit for this camera device.<wbr/></p></span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003181 </li>
3182 <li>
3183 <span class="entry_type_enum_name">ON</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003184 <span class="entry_type_enum_notes"><p>The camera device's autoexposure routine is active,<wbr/>
3185with no flash control.<wbr/> The application's values for
3186<a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
3187<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and
3188<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a> are ignored.<wbr/> The
3189application has control over the various
3190android.<wbr/>flash.<wbr/>* fields.<wbr/></p></span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003191 </li>
3192 <li>
3193 <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003194 <span class="entry_type_enum_notes"><p>Like ON,<wbr/> except that the camera device also controls
3195the camera's flash unit,<wbr/> firing it in low-light
3196conditions.<wbr/> The flash may be fired during a
3197precapture sequence (triggered by
3198<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>) and may be fired
3199for captures for which the
3200<a href="#controls_android.control.captureIntent">android.<wbr/>control.<wbr/>capture<wbr/>Intent</a> field is set to
3201STILL_<wbr/>CAPTURE</p></span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003202 </li>
3203 <li>
3204 <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003205 <span class="entry_type_enum_notes"><p>Like ON,<wbr/> except that the camera device also controls
3206the camera's flash unit,<wbr/> always firing it for still
3207captures.<wbr/> The flash may be fired during a precapture
3208sequence (triggered by
3209<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>) and will always
3210be fired for captures for which the
3211<a href="#controls_android.control.captureIntent">android.<wbr/>control.<wbr/>capture<wbr/>Intent</a> field is set to
3212STILL_<wbr/>CAPTURE</p></span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003213 </li>
3214 <li>
3215 <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003216 <span class="entry_type_enum_notes"><p>Like ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/> but with automatic red eye
3217reduction.<wbr/> If deemed necessary by the camera device,<wbr/>
3218a red eye reduction flash will fire during the
3219precapture sequence.<wbr/></p></span>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -08003220 </li>
3221 </ul>
3222
3223 </td> <!-- entry_type -->
3224
3225 <td class="entry_description">
3226 <p>The desired mode for the camera device's
3227auto-exposure routine.<wbr/></p>
3228 </td>
3229
3230 <td class="entry_units">
3231 </td>
3232
3233 <td class="entry_range">
3234 <p><a href="#static_android.control.aeAvailableModes">android.<wbr/>control.<wbr/>ae<wbr/>Available<wbr/>Modes</a></p>
3235 </td>
3236
3237 <td class="entry_tags">
3238 <ul class="entry_tags">
3239 <li><a href="#tag_BC">BC</a></li>
3240 </ul>
3241 </td>
3242
3243 </tr>
3244 <tr class="entries_header">
3245 <th class="th_details" colspan="5">Details</th>
3246 </tr>
3247 <tr class="entry_cont">
3248 <td class="entry_details" colspan="5">
3249 <p>This control is only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> is
3250AUTO.<wbr/></p>
3251<p>When set to any of the ON modes,<wbr/> the camera device's
3252auto-exposure routine is enabled,<wbr/> overriding the
3253application's selected exposure time,<wbr/> sensor sensitivity,<wbr/>
3254and frame duration (<a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
3255<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and
3256<a href="#controls_android.sensor.frameDuration">android.<wbr/>sensor.<wbr/>frame<wbr/>Duration</a>).<wbr/> If one of the FLASH modes
3257is selected,<wbr/> the camera device's flash unit controls are
3258also overridden.<wbr/></p>
3259<p>The FLASH modes are only available if the camera device
3260has a flash unit (<a href="#static_android.flash.info.available">android.<wbr/>flash.<wbr/>info.<wbr/>available</a> is <code>true</code>).<wbr/></p>
3261<p>If flash TORCH mode is desired,<wbr/> this field must be set to
3262ON or OFF,<wbr/> and <a href="#controls_android.flash.mode">android.<wbr/>flash.<wbr/>mode</a> set to TORCH.<wbr/></p>
3263<p>When set to any of the ON modes,<wbr/> the values chosen by the
3264camera device auto-exposure routine for the overridden
3265fields for a given capture will be available in its
3266CaptureResult.<wbr/></p>
3267 </td>
3268 </tr>
3269
3270
3271 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3272 <!-- end of entry -->
3273
3274
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003275 <tr class="entry" id="dynamic_android.control.aeRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003276 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003277 android.<wbr/>control.<wbr/>ae<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003278 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003279 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003280 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003281 <span class="entry_type_container">x</span>
3282
3283 <span class="entry_type_array">
3284 5 x area_count
3285 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003286 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003287
3288
3289 </td> <!-- entry_type -->
3290
3291 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003292 <p>List of areas to use for
3293metering</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003294 </td>
3295
3296 <td class="entry_units">
3297 </td>
3298
3299 <td class="entry_range">
3300 </td>
3301
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003302 <td class="entry_tags">
3303 <ul class="entry_tags">
3304 <li><a href="#tag_BC">BC</a></li>
3305 </ul>
3306 </td>
3307
3308 </tr>
3309 <tr class="entries_header">
3310 <th class="th_details" colspan="5">Details</th>
3311 </tr>
3312 <tr class="entry_cont">
3313 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08003314 <p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
3315xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
3316specified coordinates.<wbr/></p>
3317<p>The coordinate system is based on the active pixel array,<wbr/>
3318with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003319(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
3320<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08003321bottom-right pixel in the active pixel array.<wbr/> The weight
3322should be nonnegative.<wbr/></p>
3323<p>If all regions have 0 weight,<wbr/> then no specific metering area
3324needs to be used by the HAL.<wbr/> If the metering region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003325outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08003326should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08003327used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003328 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003329 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003330
3331
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003332 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3333 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003334
3335
3336 <tr class="entry" id="dynamic_android.control.aeState">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003337 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003338 android.<wbr/>control.<wbr/>ae<wbr/>State
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003339 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003340 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003341 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003342
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003343 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003344
3345 <ul class="entry_type_enum">
3346 <li>
3347 <span class="entry_type_enum_name">INACTIVE</span>
Zhijun He92e698d2014-01-13 16:24:31 -08003348 <span class="entry_type_enum_notes"><p>AE is off or recently reset.<wbr/> When a camera device is opened,<wbr/> it starts in
Igor Murashkina10351a2014-01-15 17:05:22 -08003349this state.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003350 </li>
3351 <li>
3352 <span class="entry_type_enum_name">SEARCHING</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003353 <span class="entry_type_enum_notes"><p>AE doesn't yet have a good set of control values
Zhijun He92e698d2014-01-13 16:24:31 -08003354for the current scene.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003355 </li>
3356 <li>
3357 <span class="entry_type_enum_name">CONVERGED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003358 <span class="entry_type_enum_notes"><p>AE has a good set of control values for the
Zhijun He92e698d2014-01-13 16:24:31 -08003359current scene.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003360 </li>
3361 <li>
3362 <span class="entry_type_enum_name">LOCKED</span>
Zhijun He92e698d2014-01-13 16:24:31 -08003363 <span class="entry_type_enum_notes"><p>AE has been locked.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003364 </li>
3365 <li>
3366 <span class="entry_type_enum_name">FLASH_REQUIRED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003367 <span class="entry_type_enum_notes"><p>AE has a good set of control values,<wbr/> but flash
3368needs to be fired for good quality still
Zhijun He92e698d2014-01-13 16:24:31 -08003369capture.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003370 </li>
3371 <li>
3372 <span class="entry_type_enum_name">PRECAPTURE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003373 <span class="entry_type_enum_notes"><p>AE has been asked to do a precapture sequence
Zhijun He92e698d2014-01-13 16:24:31 -08003374(through the <a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a> START),<wbr/>
3375and is currently executing it.<wbr/> Once PRECAPTURE
Igor Murashkina10351a2014-01-15 17:05:22 -08003376completes,<wbr/> AE will transition to CONVERGED or
Zhijun He92e698d2014-01-13 16:24:31 -08003377FLASH_<wbr/>REQUIRED as appropriate.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003378 </li>
3379 </ul>
3380
3381 </td> <!-- entry_type -->
3382
3383 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003384 <p>Current state of AE algorithm</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003385 </td>
3386
3387 <td class="entry_units">
3388 </td>
3389
3390 <td class="entry_range">
3391 </td>
3392
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003393 <td class="entry_tags">
3394 </td>
3395
3396 </tr>
3397 <tr class="entries_header">
3398 <th class="th_details" colspan="5">Details</th>
3399 </tr>
3400 <tr class="entry_cont">
3401 <td class="entry_details" colspan="5">
Zhijun He92e698d2014-01-13 16:24:31 -08003402 <p>Switching between or enabling AE modes (<a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a>) always
3403resets the AE state to INACTIVE.<wbr/> Similarly,<wbr/> switching between <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a>,<wbr/>
3404or <a href="#controls_android.control.sceneMode">android.<wbr/>control.<wbr/>scene<wbr/>Mode</a> if <code><a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> == USE_<wbr/>SCENE_<wbr/>MODE</code> resets all
3405the algorithm states to INACTIVE.<wbr/></p>
3406<p>The camera device can do several state transitions between two results,<wbr/> if it is
3407allowed by the state transition table.<wbr/> For example: INACTIVE may never actually be
3408seen in a result.<wbr/></p>
3409<p>The state in the result is the state for this image (in sync with this image): if
3410AE state becomes CONVERGED,<wbr/> then the image data associated with this result should
3411be good to use.<wbr/></p>
3412<p>Below are state transition tables for different AE modes.<wbr/></p>
3413<table>
3414<thead>
3415<tr>
3416<th align="center">State</th>
3417<th align="center">Transition Cause</th>
3418<th align="center">New State</th>
3419<th align="center">Notes</th>
3420</tr>
3421</thead>
3422<tbody>
3423<tr>
3424<td align="center">INACTIVE</td>
3425<td align="center"></td>
3426<td align="center">INACTIVE</td>
3427<td align="center">Camera device auto exposure algorithm is disabled</td>
3428</tr>
3429</tbody>
3430</table>
3431<p>When <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> is AE_<wbr/>MODE_<wbr/>ON_<wbr/>*:</p>
3432<table>
3433<thead>
3434<tr>
3435<th align="center">State</th>
3436<th align="center">Transition Cause</th>
3437<th align="center">New State</th>
3438<th align="center">Notes</th>
3439</tr>
3440</thead>
3441<tbody>
3442<tr>
3443<td align="center">INACTIVE</td>
3444<td align="center">Camera device initiates AE scan</td>
3445<td align="center">SEARCHING</td>
3446<td align="center">Values changing</td>
3447</tr>
3448<tr>
3449<td align="center">INACTIVE</td>
3450<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is ON</td>
3451<td align="center">LOCKED</td>
3452<td align="center">Values locked</td>
3453</tr>
3454<tr>
3455<td align="center">SEARCHING</td>
3456<td align="center">Camera device finishes AE scan</td>
3457<td align="center">CONVERGED</td>
3458<td align="center">Good values,<wbr/> not changing</td>
3459</tr>
3460<tr>
3461<td align="center">SEARCHING</td>
3462<td align="center">Camera device finishes AE scan</td>
3463<td align="center">FLASH_<wbr/>REQUIRED</td>
3464<td align="center">Converged but too dark w/<wbr/>o flash</td>
3465</tr>
3466<tr>
3467<td align="center">SEARCHING</td>
3468<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is ON</td>
3469<td align="center">LOCKED</td>
3470<td align="center">Values locked</td>
3471</tr>
3472<tr>
3473<td align="center">CONVERGED</td>
3474<td align="center">Camera device initiates AE scan</td>
3475<td align="center">SEARCHING</td>
3476<td align="center">Values changing</td>
3477</tr>
3478<tr>
3479<td align="center">CONVERGED</td>
3480<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is ON</td>
3481<td align="center">LOCKED</td>
3482<td align="center">Values locked</td>
3483</tr>
3484<tr>
3485<td align="center">FLASH_<wbr/>REQUIRED</td>
3486<td align="center">Camera device initiates AE scan</td>
3487<td align="center">SEARCHING</td>
3488<td align="center">Values changing</td>
3489</tr>
3490<tr>
3491<td align="center">FLASH_<wbr/>REQUIRED</td>
3492<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is ON</td>
3493<td align="center">LOCKED</td>
3494<td align="center">Values locked</td>
3495</tr>
3496<tr>
3497<td align="center">LOCKED</td>
3498<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is OFF</td>
3499<td align="center">SEARCHING</td>
3500<td align="center">Values not good after unlock</td>
3501</tr>
3502<tr>
3503<td align="center">LOCKED</td>
3504<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is OFF</td>
3505<td align="center">CONVERGED</td>
3506<td align="center">Values good after unlock</td>
3507</tr>
3508<tr>
3509<td align="center">LOCKED</td>
3510<td align="center"><a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is OFF</td>
3511<td align="center">FLASH_<wbr/>REQUIRED</td>
3512<td align="center">Exposure good,<wbr/> but too dark</td>
3513</tr>
3514<tr>
3515<td align="center">PRECAPTURE</td>
3516<td align="center">Sequence done.<wbr/> <a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is OFF</td>
3517<td align="center">CONVERGED</td>
3518<td align="center">Ready for high-quality capture</td>
3519</tr>
3520<tr>
3521<td align="center">PRECAPTURE</td>
3522<td align="center">Sequence done.<wbr/> <a href="#controls_android.control.aeLock">android.<wbr/>control.<wbr/>ae<wbr/>Lock</a> is ON</td>
3523<td align="center">LOCKED</td>
3524<td align="center">Ready for high-quality capture</td>
3525</tr>
3526<tr>
3527<td align="center">Any state</td>
3528<td align="center"><a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a> is START</td>
3529<td align="center">PRECAPTURE</td>
3530<td align="center">Start AE precapture metering sequence</td>
3531</tr>
3532</tbody>
3533</table>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003534 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003535 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003536
3537
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003538 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3539 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003540
3541
3542 <tr class="entry" id="dynamic_android.control.afMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003543 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003544 android.<wbr/>control.<wbr/>af<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003545 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003546 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003547 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003548
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003549 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003550
3551 <ul class="entry_type_enum">
3552 <li>
3553 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003554 <span class="entry_type_enum_notes"><p>The auto-focus routine does not control the lens;
3555<a href="#controls_android.lens.focusDistance">android.<wbr/>lens.<wbr/>focus<wbr/>Distance</a> is controlled by the
3556application</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003557 </li>
3558 <li>
3559 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003560 <span class="entry_type_enum_notes"><p>If lens is not fixed focus.<wbr/></p>
3561<p>Use <a href="#static_android.lens.info.minimumFocusDistance">android.<wbr/>lens.<wbr/>info.<wbr/>minimum<wbr/>Focus<wbr/>Distance</a> to determine if lens
3562is fixed-focus.<wbr/> In this mode,<wbr/> the lens does not move unless
3563the autofocus trigger action is called.<wbr/> When that trigger
3564is activated,<wbr/> AF must transition to ACTIVE_<wbr/>SCAN,<wbr/> then to
3565the outcome of the scan (FOCUSED or NOT_<wbr/>FOCUSED).<wbr/></p>
3566<p>Triggering AF_<wbr/>CANCEL resets the lens position to default,<wbr/>
3567and sets the AF state to INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003568 </li>
3569 <li>
3570 <span class="entry_type_enum_name">MACRO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003571 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the lens does not move unless the
3572autofocus trigger action is called.<wbr/></p>
3573<p>When that trigger is activated,<wbr/> AF must transition to
3574ACTIVE_<wbr/>SCAN,<wbr/> then to the outcome of the scan (FOCUSED or
3575NOT_<wbr/>FOCUSED).<wbr/> Triggering cancel AF resets the lens
3576position to default,<wbr/> and sets the AF state to
3577INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003578 </li>
3579 <li>
3580 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003581 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the AF algorithm modifies the lens
3582position continually to attempt to provide a
3583constantly-in-focus image stream.<wbr/></p>
3584<p>The focusing behavior should be suitable for good quality
3585video recording; typically this means slower focus
3586movement and no overshoots.<wbr/> When the AF trigger is not
3587involved,<wbr/> the AF algorithm should start in INACTIVE state,<wbr/>
3588and then transition into PASSIVE_<wbr/>SCAN and PASSIVE_<wbr/>FOCUSED
3589states as appropriate.<wbr/> When the AF trigger is activated,<wbr/>
3590the algorithm should immediately transition into
3591AF_<wbr/>FOCUSED or AF_<wbr/>NOT_<wbr/>FOCUSED as appropriate,<wbr/> and lock the
3592lens position until a cancel AF trigger is received.<wbr/></p>
3593<p>Once cancel is received,<wbr/> the algorithm should transition
3594back to INACTIVE and resume passive scan.<wbr/> Note that this
3595behavior is not identical to CONTINUOUS_<wbr/>PICTURE,<wbr/> since an
3596ongoing PASSIVE_<wbr/>SCAN must immediately be
3597canceled.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003598 </li>
3599 <li>
3600 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003601 <span class="entry_type_enum_notes"><p>In this mode,<wbr/> the AF algorithm modifies the lens
3602position continually to attempt to provide a
3603constantly-in-focus image stream.<wbr/></p>
3604<p>The focusing behavior should be suitable for still image
3605capture; typically this means focusing as fast as
3606possible.<wbr/> When the AF trigger is not involved,<wbr/> the AF
3607algorithm should start in INACTIVE state,<wbr/> and then
3608transition into PASSIVE_<wbr/>SCAN and PASSIVE_<wbr/>FOCUSED states as
3609appropriate as it attempts to maintain focus.<wbr/> When the AF
3610trigger is activated,<wbr/> the algorithm should finish its
3611PASSIVE_<wbr/>SCAN if active,<wbr/> and then transition into
3612AF_<wbr/>FOCUSED or AF_<wbr/>NOT_<wbr/>FOCUSED as appropriate,<wbr/> and lock the
3613lens position until a cancel AF trigger is received.<wbr/></p>
3614<p>When the AF cancel trigger is activated,<wbr/> the algorithm
3615should transition back to INACTIVE and then act as if it
3616has just been started.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003617 </li>
3618 <li>
3619 <span class="entry_type_enum_name">EDOF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003620 <span class="entry_type_enum_notes"><p>Extended depth of field (digital focus).<wbr/> AF
3621trigger is ignored,<wbr/> AF state should always be
3622INACTIVE.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003623 </li>
3624 </ul>
3625
3626 </td> <!-- entry_type -->
3627
3628 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003629 <p>Whether AF is currently enabled,<wbr/> and what
3630mode it is set to</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003631 </td>
3632
3633 <td class="entry_units">
3634 </td>
3635
3636 <td class="entry_range">
Zhijun He7787f7f2014-01-14 16:30:31 -08003637 <p><a href="#static_android.control.afAvailableModes">android.<wbr/>control.<wbr/>af<wbr/>Available<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003638 </td>
3639
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003640 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003641 <ul class="entry_tags">
3642 <li><a href="#tag_BC">BC</a></li>
3643 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003644 </td>
3645
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003646 </tr>
3647 <tr class="entries_header">
3648 <th class="th_details" colspan="5">Details</th>
3649 </tr>
3650 <tr class="entry_cont">
3651 <td class="entry_details" colspan="5">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003652 <p>Only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> = AUTO.<wbr/></p>
Zhijun Hef163fa92014-01-14 09:59:04 -08003653<p>If the lens is controlled by the camera device auto-focus algorithm,<wbr/>
3654the camera device will report the current AF status in android.<wbr/>control.<wbr/>af<wbr/>State
3655in result metadata.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003656 </td>
3657 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003658
3659
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003660 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3661 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003662
3663
3664 <tr class="entry" id="dynamic_android.control.afRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003665 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003666 android.<wbr/>control.<wbr/>af<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003667 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003668 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003669 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003670 <span class="entry_type_container">x</span>
3671
3672 <span class="entry_type_array">
3673 5 x area_count
3674 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003675 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003676
3677
3678 </td> <!-- entry_type -->
3679
3680 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003681 <p>List of areas to use for focus
3682estimation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003683 </td>
3684
3685 <td class="entry_units">
3686 </td>
3687
3688 <td class="entry_range">
3689 </td>
3690
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003691 <td class="entry_tags">
3692 <ul class="entry_tags">
3693 <li><a href="#tag_BC">BC</a></li>
3694 </ul>
3695 </td>
3696
3697 </tr>
3698 <tr class="entries_header">
3699 <th class="th_details" colspan="5">Details</th>
3700 </tr>
3701 <tr class="entry_cont">
3702 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08003703 <p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
3704xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
3705specified coordinates.<wbr/></p>
3706<p>The coordinate system is based on the active pixel array,<wbr/>
3707with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003708(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
3709<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08003710bottom-right pixel in the active pixel array.<wbr/> The weight
3711should be nonnegative.<wbr/></p>
3712<p>If all regions have 0 weight,<wbr/> then no specific focus area
3713needs to be used by the HAL.<wbr/> If the focusing region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08003714outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08003715should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08003716used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003717 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003718 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003719
3720
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003721 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
3722 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003723
3724
3725 <tr class="entry" id="dynamic_android.control.afState">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003726 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08003727 android.<wbr/>control.<wbr/>af<wbr/>State
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08003728 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003729 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003730 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003731
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003732 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003733
3734 <ul class="entry_type_enum">
3735 <li>
3736 <span class="entry_type_enum_name">INACTIVE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003737 <span class="entry_type_enum_notes"><p>AF off or has not yet tried to scan/<wbr/>been asked
3738to scan.<wbr/> When a camera device is opened,<wbr/> it starts in
3739this state.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003740 </li>
3741 <li>
3742 <span class="entry_type_enum_name">PASSIVE_SCAN</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003743 <span class="entry_type_enum_notes"><p>if CONTINUOUS_<wbr/>* modes are supported.<wbr/> AF is
3744currently doing an AF scan initiated by a continuous
3745autofocus mode</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003746 </li>
3747 <li>
3748 <span class="entry_type_enum_name">PASSIVE_FOCUSED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003749 <span class="entry_type_enum_notes"><p>if CONTINUOUS_<wbr/>* modes are supported.<wbr/> AF currently
3750believes it is in focus,<wbr/> but may restart scanning at
3751any time.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003752 </li>
3753 <li>
3754 <span class="entry_type_enum_name">ACTIVE_SCAN</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003755 <span class="entry_type_enum_notes"><p>if AUTO or MACRO modes are supported.<wbr/> AF is doing
3756an AF scan because it was triggered by AF
3757trigger</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003758 </li>
3759 <li>
3760 <span class="entry_type_enum_name">FOCUSED_LOCKED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003761 <span class="entry_type_enum_notes"><p>if any AF mode besides OFF is supported.<wbr/> AF
3762believes it is focused correctly and is
3763locked</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003764 </li>
3765 <li>
3766 <span class="entry_type_enum_name">NOT_FOCUSED_LOCKED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003767 <span class="entry_type_enum_notes"><p>if any AF mode besides OFF is supported.<wbr/> AF has
3768failed to focus successfully and is
3769locked</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003770 </li>
Eino-Ville Talvala492ba7c2013-09-20 17:24:00 -07003771 <li>
3772 <span class="entry_type_enum_name">PASSIVE_UNFOCUSED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08003773 <span class="entry_type_enum_notes"><p>if CONTINUOUS_<wbr/>* modes are supported.<wbr/> AF finished a
3774passive scan without finding focus,<wbr/> and may restart
3775scanning at any time.<wbr/></p></span>
Eino-Ville Talvala492ba7c2013-09-20 17:24:00 -07003776 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003777 </ul>
3778
3779 </td> <!-- entry_type -->
3780
3781 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08003782 <p>Current state of AF algorithm</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003783 </td>
3784
3785 <td class="entry_units">
3786 </td>
3787
3788 <td class="entry_range">
3789 </td>
3790
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08003791 <td class="entry_tags">
3792 </td>
3793
3794 </tr>
3795 <tr class="entries_header">
3796 <th class="th_details" colspan="5">Details</th>
3797 </tr>
3798 <tr class="entry_cont">
3799 <td class="entry_details" colspan="5">
Zhijun He92e698d2014-01-13 16:24:31 -08003800 <p>Switching between or enabling AF modes (<a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a>) always
3801resets the AF state to INACTIVE.<wbr/> Similarly,<wbr/> switching between <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a>,<wbr/>
3802or <a href="#controls_android.control.sceneMode">android.<wbr/>control.<wbr/>scene<wbr/>Mode</a> if <code><a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> == USE_<wbr/>SCENE_<wbr/>MODE</code> resets all
3803the algorithm states to INACTIVE.<wbr/></p>
3804<p>The camera device can do several state transitions between two results,<wbr/> if it is
3805allowed by the state transition table.<wbr/> For example: INACTIVE may never actually be
3806seen in a result.<wbr/></p>
3807<p>The state in the result is the state for this image (in sync with this image): if
3808AF state becomes FOCUSED,<wbr/> then the image data associated with this result should
3809be sharp.<wbr/></p>
3810<p>Below are state transition tables for different AF modes.<wbr/></p>
3811<p>When <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> is AF_<wbr/>MODE_<wbr/>OFF or AF_<wbr/>MODE_<wbr/>EDOF:</p>
3812<table>
3813<thead>
3814<tr>
3815<th align="center">State</th>
3816<th align="center">Transition Cause</th>
3817<th align="center">New State</th>
3818<th align="center">Notes</th>
3819</tr>
3820</thead>
3821<tbody>
3822<tr>
3823<td align="center">INACTIVE</td>
3824<td align="center"></td>
3825<td align="center">INACTIVE</td>
3826<td align="center">Never changes</td>
3827</tr>
3828</tbody>
3829</table>
3830<p>When <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> is AF_<wbr/>MODE_<wbr/>AUTO or AF_<wbr/>MODE_<wbr/>MACRO:</p>
3831<table>
3832<thead>
3833<tr>
3834<th align="center">State</th>
3835<th align="center">Transition Cause</th>
3836<th align="center">New State</th>
3837<th align="center">Notes</th>
3838</tr>
3839</thead>
3840<tbody>
3841<tr>
3842<td align="center">INACTIVE</td>
3843<td align="center">AF_<wbr/>TRIGGER</td>
3844<td align="center">ACTIVE_<wbr/>SCAN</td>
3845<td align="center">Start AF sweep,<wbr/> Lens now moving</td>
3846</tr>
3847<tr>
3848<td align="center">ACTIVE_<wbr/>SCAN</td>
3849<td align="center">AF sweep done</td>
3850<td align="center">FOCUSED_<wbr/>LOCKED</td>
3851<td align="center">Focused,<wbr/> Lens now locked</td>
3852</tr>
3853<tr>
3854<td align="center">ACTIVE_<wbr/>SCAN</td>
3855<td align="center">AF sweep done</td>
3856<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3857<td align="center">Not focused,<wbr/> Lens now locked</td>
3858</tr>
3859<tr>
3860<td align="center">ACTIVE_<wbr/>SCAN</td>
3861<td align="center">AF_<wbr/>CANCEL</td>
3862<td align="center">INACTIVE</td>
3863<td align="center">Cancel/<wbr/>reset AF,<wbr/> Lens now locked</td>
3864</tr>
3865<tr>
3866<td align="center">FOCUSED_<wbr/>LOCKED</td>
3867<td align="center">AF_<wbr/>CANCEL</td>
3868<td align="center">INACTIVE</td>
3869<td align="center">Cancel/<wbr/>reset AF</td>
3870</tr>
3871<tr>
3872<td align="center">FOCUSED_<wbr/>LOCKED</td>
3873<td align="center">AF_<wbr/>TRIGGER</td>
3874<td align="center">ACTIVE_<wbr/>SCAN</td>
3875<td align="center">Start new sweep,<wbr/> Lens now moving</td>
3876</tr>
3877<tr>
3878<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3879<td align="center">AF_<wbr/>CANCEL</td>
3880<td align="center">INACTIVE</td>
3881<td align="center">Cancel/<wbr/>reset AF</td>
3882</tr>
3883<tr>
3884<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3885<td align="center">AF_<wbr/>TRIGGER</td>
3886<td align="center">ACTIVE_<wbr/>SCAN</td>
3887<td align="center">Start new sweep,<wbr/> Lens now moving</td>
3888</tr>
3889<tr>
3890<td align="center">Any state</td>
3891<td align="center">Mode change</td>
3892<td align="center">INACTIVE</td>
3893<td align="center"></td>
3894</tr>
3895</tbody>
3896</table>
3897<p>When <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> is AF_<wbr/>MODE_<wbr/>CONTINUOUS_<wbr/>VIDEO:</p>
3898<table>
3899<thead>
3900<tr>
3901<th align="center">State</th>
3902<th align="center">Transition Cause</th>
3903<th align="center">New State</th>
3904<th align="center">Notes</th>
3905</tr>
3906</thead>
3907<tbody>
3908<tr>
3909<td align="center">INACTIVE</td>
3910<td align="center">Camera device initiates new scan</td>
3911<td align="center">PASSIVE_<wbr/>SCAN</td>
3912<td align="center">Start AF scan,<wbr/> Lens now moving</td>
3913</tr>
3914<tr>
3915<td align="center">INACTIVE</td>
3916<td align="center">AF_<wbr/>TRIGGER</td>
3917<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3918<td align="center">AF state query,<wbr/> Lens now locked</td>
3919</tr>
3920<tr>
3921<td align="center">PASSIVE_<wbr/>SCAN</td>
3922<td align="center">Camera device completes current scan</td>
3923<td align="center">PASSIVE_<wbr/>FOCUSED</td>
3924<td align="center">End AF scan,<wbr/> Lens now locked</td>
3925</tr>
3926<tr>
3927<td align="center">PASSIVE_<wbr/>SCAN</td>
3928<td align="center">Camera device fails current scan</td>
3929<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
3930<td align="center">End AF scan,<wbr/> Lens now locked</td>
3931</tr>
3932<tr>
3933<td align="center">PASSIVE_<wbr/>SCAN</td>
3934<td align="center">AF_<wbr/>TRIGGER</td>
3935<td align="center">FOCUSED_<wbr/>LOCKED</td>
3936<td align="center">Immediate trans.<wbr/> If focus is good,<wbr/> Lens now locked</td>
3937</tr>
3938<tr>
3939<td align="center">PASSIVE_<wbr/>SCAN</td>
3940<td align="center">AF_<wbr/>TRIGGER</td>
3941<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3942<td align="center">Immediate trans.<wbr/> if focus is bad,<wbr/> Lens now locked</td>
3943</tr>
3944<tr>
3945<td align="center">PASSIVE_<wbr/>SCAN</td>
3946<td align="center">AF_<wbr/>CANCEL</td>
3947<td align="center">INACTIVE</td>
3948<td align="center">Reset lens position,<wbr/> Lens now locked</td>
3949</tr>
3950<tr>
3951<td align="center">PASSIVE_<wbr/>FOCUSED</td>
3952<td align="center">Camera device initiates new scan</td>
3953<td align="center">PASSIVE_<wbr/>SCAN</td>
3954<td align="center">Start AF scan,<wbr/> Lens now moving</td>
3955</tr>
3956<tr>
3957<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
3958<td align="center">Camera device initiates new scan</td>
3959<td align="center">PASSIVE_<wbr/>SCAN</td>
3960<td align="center">Start AF scan,<wbr/> Lens now moving</td>
3961</tr>
3962<tr>
3963<td align="center">PASSIVE_<wbr/>FOCUSED</td>
3964<td align="center">AF_<wbr/>TRIGGER</td>
3965<td align="center">FOCUSED_<wbr/>LOCKED</td>
3966<td align="center">Immediate trans.<wbr/> Lens now locked</td>
3967</tr>
3968<tr>
3969<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
3970<td align="center">AF_<wbr/>TRIGGER</td>
3971<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3972<td align="center">Immediate trans.<wbr/> Lens now locked</td>
3973</tr>
3974<tr>
3975<td align="center">FOCUSED_<wbr/>LOCKED</td>
3976<td align="center">AF_<wbr/>TRIGGER</td>
3977<td align="center">FOCUSED_<wbr/>LOCKED</td>
3978<td align="center">No effect</td>
3979</tr>
3980<tr>
3981<td align="center">FOCUSED_<wbr/>LOCKED</td>
3982<td align="center">AF_<wbr/>CANCEL</td>
3983<td align="center">INACTIVE</td>
3984<td align="center">Restart AF scan</td>
3985</tr>
3986<tr>
3987<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3988<td align="center">AF_<wbr/>TRIGGER</td>
3989<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3990<td align="center">No effect</td>
3991</tr>
3992<tr>
3993<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
3994<td align="center">AF_<wbr/>CANCEL</td>
3995<td align="center">INACTIVE</td>
3996<td align="center">Restart AF scan</td>
3997</tr>
3998</tbody>
3999</table>
4000<p>When <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a> is AF_<wbr/>MODE_<wbr/>CONTINUOUS_<wbr/>PICTURE:</p>
4001<table>
4002<thead>
4003<tr>
4004<th align="center">State</th>
4005<th align="center">Transition Cause</th>
4006<th align="center">New State</th>
4007<th align="center">Notes</th>
4008</tr>
4009</thead>
4010<tbody>
4011<tr>
4012<td align="center">INACTIVE</td>
4013<td align="center">Camera device initiates new scan</td>
4014<td align="center">PASSIVE_<wbr/>SCAN</td>
4015<td align="center">Start AF scan,<wbr/> Lens now moving</td>
4016</tr>
4017<tr>
4018<td align="center">INACTIVE</td>
4019<td align="center">AF_<wbr/>TRIGGER</td>
4020<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4021<td align="center">AF state query,<wbr/> Lens now locked</td>
4022</tr>
4023<tr>
4024<td align="center">PASSIVE_<wbr/>SCAN</td>
4025<td align="center">Camera device completes current scan</td>
4026<td align="center">PASSIVE_<wbr/>FOCUSED</td>
4027<td align="center">End AF scan,<wbr/> Lens now locked</td>
4028</tr>
4029<tr>
4030<td align="center">PASSIVE_<wbr/>SCAN</td>
4031<td align="center">Camera device fails current scan</td>
4032<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
4033<td align="center">End AF scan,<wbr/> Lens now locked</td>
4034</tr>
4035<tr>
4036<td align="center">PASSIVE_<wbr/>SCAN</td>
4037<td align="center">AF_<wbr/>TRIGGER</td>
4038<td align="center">FOCUSED_<wbr/>LOCKED</td>
4039<td align="center">Eventual trans.<wbr/> once focus good,<wbr/> Lens now locked</td>
4040</tr>
4041<tr>
4042<td align="center">PASSIVE_<wbr/>SCAN</td>
4043<td align="center">AF_<wbr/>TRIGGER</td>
4044<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4045<td align="center">Eventual trans.<wbr/> if cannot focus,<wbr/> Lens now locked</td>
4046</tr>
4047<tr>
4048<td align="center">PASSIVE_<wbr/>SCAN</td>
4049<td align="center">AF_<wbr/>CANCEL</td>
4050<td align="center">INACTIVE</td>
4051<td align="center">Reset lens position,<wbr/> Lens now locked</td>
4052</tr>
4053<tr>
4054<td align="center">PASSIVE_<wbr/>FOCUSED</td>
4055<td align="center">Camera device initiates new scan</td>
4056<td align="center">PASSIVE_<wbr/>SCAN</td>
4057<td align="center">Start AF scan,<wbr/> Lens now moving</td>
4058</tr>
4059<tr>
4060<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
4061<td align="center">Camera device initiates new scan</td>
4062<td align="center">PASSIVE_<wbr/>SCAN</td>
4063<td align="center">Start AF scan,<wbr/> Lens now moving</td>
4064</tr>
4065<tr>
4066<td align="center">PASSIVE_<wbr/>FOCUSED</td>
4067<td align="center">AF_<wbr/>TRIGGER</td>
4068<td align="center">FOCUSED_<wbr/>LOCKED</td>
4069<td align="center">Immediate trans.<wbr/> Lens now locked</td>
4070</tr>
4071<tr>
4072<td align="center">PASSIVE_<wbr/>UNFOCUSED</td>
4073<td align="center">AF_<wbr/>TRIGGER</td>
4074<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4075<td align="center">Immediate trans.<wbr/> Lens now locked</td>
4076</tr>
4077<tr>
4078<td align="center">FOCUSED_<wbr/>LOCKED</td>
4079<td align="center">AF_<wbr/>TRIGGER</td>
4080<td align="center">FOCUSED_<wbr/>LOCKED</td>
4081<td align="center">No effect</td>
4082</tr>
4083<tr>
4084<td align="center">FOCUSED_<wbr/>LOCKED</td>
4085<td align="center">AF_<wbr/>CANCEL</td>
4086<td align="center">INACTIVE</td>
4087<td align="center">Restart AF scan</td>
4088</tr>
4089<tr>
4090<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4091<td align="center">AF_<wbr/>TRIGGER</td>
4092<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4093<td align="center">No effect</td>
4094</tr>
4095<tr>
4096<td align="center">NOT_<wbr/>FOCUSED_<wbr/>LOCKED</td>
4097<td align="center">AF_<wbr/>CANCEL</td>
4098<td align="center">INACTIVE</td>
4099<td align="center">Restart AF scan</td>
4100</tr>
4101</tbody>
4102</table>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004103 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004104 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004105
4106
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004107 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4108 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004109
4110
4111 <tr class="entry" id="dynamic_android.control.afTriggerId">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004112 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004113 android.<wbr/>control.<wbr/>af<wbr/>Trigger<wbr/>Id
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004114 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004115 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004116 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004117
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004118 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004119
4120
4121 </td> <!-- entry_type -->
4122
4123 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004124 <p>The ID sent with the latest
4125CAMERA2_<wbr/>TRIGGER_<wbr/>AUTOFOCUS call</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004126 </td>
4127
4128 <td class="entry_units">
4129 </td>
4130
4131 <td class="entry_range">
4132 </td>
4133
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004134 <td class="entry_tags">
4135 </td>
4136
4137 </tr>
4138 <tr class="entries_header">
4139 <th class="th_details" colspan="5">Details</th>
4140 </tr>
4141 <tr class="entry_cont">
4142 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004143 <p>Must be 0 if no CAMERA2_<wbr/>TRIGGER_<wbr/>AUTOFOCUS trigger
4144received yet by HAL.<wbr/> Always updated even if AF algorithm
4145ignores the trigger</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004146 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004147 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004148
4149
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004150 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4151 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004152
4153
4154 <tr class="entry" id="dynamic_android.control.awbMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004155 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004156 android.<wbr/>control.<wbr/>awb<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004157 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004158 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004159 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004160
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004161 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004162
4163 <ul class="entry_type_enum">
4164 <li>
4165 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004166 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4167the application-selected color transform matrix
4168(<a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>) and gains
4169(<a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a>) are used by the camera
4170device for manual white balance control.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004171 </li>
4172 <li>
4173 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004174 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is active;
4175the application's values for android.<wbr/>color<wbr/>Correction.<wbr/>transform
4176and <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> are ignored.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004177 </li>
4178 <li>
4179 <span class="entry_type_enum_name">INCANDESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004180 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4181the camera device uses incandescent light as the assumed scene
4182illumination for white balance.<wbr/> While the exact white balance
4183transforms are up to the camera device,<wbr/> they will approximately
4184match the CIE standard illuminant A.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004185 </li>
4186 <li>
4187 <span class="entry_type_enum_name">FLUORESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004188 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4189the camera device uses fluorescent light as the assumed scene
4190illumination for white balance.<wbr/> While the exact white balance
4191transforms are up to the camera device,<wbr/> they will approximately
4192match the CIE standard illuminant F2.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004193 </li>
4194 <li>
4195 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004196 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4197the camera device uses warm fluorescent light as the assumed scene
4198illumination for white balance.<wbr/> While the exact white balance
4199transforms are up to the camera device,<wbr/> they will approximately
4200match the CIE standard illuminant F4.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004201 </li>
4202 <li>
4203 <span class="entry_type_enum_name">DAYLIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004204 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4205the camera device uses daylight light as the assumed scene
4206illumination for white balance.<wbr/> While the exact white balance
4207transforms are up to the camera device,<wbr/> they will approximately
4208match the CIE standard illuminant D65.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004209 </li>
4210 <li>
4211 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004212 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4213the camera device uses cloudy daylight light as the assumed scene
4214illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004215 </li>
4216 <li>
4217 <span class="entry_type_enum_name">TWILIGHT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004218 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4219the camera device uses twilight light as the assumed scene
4220illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004221 </li>
4222 <li>
4223 <span class="entry_type_enum_name">SHADE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004224 <span class="entry_type_enum_notes"><p>The camera device's auto white balance routine is disabled;
4225the camera device uses shade light as the assumed scene
4226illumination for white balance.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004227 </li>
4228 </ul>
4229
4230 </td> <!-- entry_type -->
4231
4232 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004233 <p>Whether AWB is currently setting the color
4234transform fields,<wbr/> and what its illumination target
4235is</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004236 </td>
4237
4238 <td class="entry_units">
4239 </td>
4240
4241 <td class="entry_range">
Zhijun He7787f7f2014-01-14 16:30:31 -08004242 <p><a href="#static_android.control.awbAvailableModes">android.<wbr/>control.<wbr/>awb<wbr/>Available<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004243 </td>
4244
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004245 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004246 <ul class="entry_tags">
4247 <li><a href="#tag_BC">BC</a></li>
4248 <li><a href="#tag_AWB">AWB</a></li>
4249 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004250 </td>
4251
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004252 </tr>
4253 <tr class="entries_header">
4254 <th class="th_details" colspan="5">Details</th>
4255 </tr>
4256 <tr class="entry_cont">
4257 <td class="entry_details" colspan="5">
Zhijun He7787f7f2014-01-14 16:30:31 -08004258 <p>This control is only effective if <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> is AUTO.<wbr/></p>
4259<p>When set to the ON mode,<wbr/> the camera device's auto white balance
4260routine is enabled,<wbr/> overriding the application's selected
4261<a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>,<wbr/> <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> and
4262<a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a>.<wbr/></p>
4263<p>When set to the OFF mode,<wbr/> the camera device's auto white balance
4264routine is disabled.<wbr/> The applicantion manually controls the white
4265balance by <a href="#controls_android.colorCorrection.transform">android.<wbr/>color<wbr/>Correction.<wbr/>transform</a>,<wbr/> android.<wbr/>color<wbr/>Correction.<wbr/>gains
4266and <a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a>.<wbr/></p>
4267<p>When set to any other modes,<wbr/> the camera device's auto white balance
4268routine is disabled.<wbr/> The camera device uses each particular illumination
4269target for white balance adjustment.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004270 </td>
4271 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004272
4273
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004274 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4275 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004276
4277
4278 <tr class="entry" id="dynamic_android.control.awbRegions">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004279 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004280 android.<wbr/>control.<wbr/>awb<wbr/>Regions
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004281 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004282 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004283 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004284 <span class="entry_type_container">x</span>
4285
4286 <span class="entry_type_array">
4287 5 x area_count
4288 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004289 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004290
4291
4292 </td> <!-- entry_type -->
4293
4294 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004295 <p>List of areas to use for illuminant
4296estimation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004297 </td>
4298
4299 <td class="entry_units">
4300 </td>
4301
4302 <td class="entry_range">
4303 </td>
4304
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004305 <td class="entry_tags">
4306 <ul class="entry_tags">
4307 <li><a href="#tag_BC">BC</a></li>
4308 </ul>
4309 </td>
4310
4311 </tr>
4312 <tr class="entries_header">
4313 <th class="th_details" colspan="5">Details</th>
4314 </tr>
4315 <tr class="entry_cont">
4316 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004317 <p>Only used in AUTO mode.<wbr/></p>
4318<p>Each area is a rectangle plus weight: xmin,<wbr/> ymin,<wbr/>
4319xmax,<wbr/> ymax,<wbr/> weight.<wbr/> The rectangle is defined inclusive of the
4320specified coordinates.<wbr/></p>
4321<p>The coordinate system is based on the active pixel array,<wbr/>
4322with (0,<wbr/>0) being the top-left pixel in the active pixel array,<wbr/> and
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004323(<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>width - 1,<wbr/>
4324<a href="#static_android.sensor.info.activeArraySize">android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size</a>.<wbr/>height - 1) being the
Igor Murashkin0b080452013-12-27 15:30:25 -08004325bottom-right pixel in the active pixel array.<wbr/> The weight
4326should be nonnegative.<wbr/></p>
4327<p>If all regions have 0 weight,<wbr/> then no specific metering area
4328needs to be used by the HAL.<wbr/> If the metering region is
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004329outside the current <a href="#controls_android.scaler.cropRegion">android.<wbr/>scaler.<wbr/>crop<wbr/>Region</a>,<wbr/> the HAL
Igor Murashkin8aa2a112013-12-09 12:06:17 -08004330should ignore the sections outside the region and output the
Igor Murashkin0b080452013-12-27 15:30:25 -08004331used sections in the frame metadata</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004332 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004333 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004334
4335
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004336 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4337 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004338
4339
4340 <tr class="entry" id="dynamic_android.control.awbState">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004341 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004342 android.<wbr/>control.<wbr/>awb<wbr/>State
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004343 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004344 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004345 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004346
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004347 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004348
4349 <ul class="entry_type_enum">
4350 <li>
4351 <span class="entry_type_enum_name">INACTIVE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004352 <span class="entry_type_enum_notes"><p>AWB is not in auto mode.<wbr/> When a camera device is opened,<wbr/> it
4353starts in this state.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004354 </li>
4355 <li>
4356 <span class="entry_type_enum_name">SEARCHING</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004357 <span class="entry_type_enum_notes"><p>AWB doesn't yet have a good set of control
Zhijun He92e698d2014-01-13 16:24:31 -08004358values for the current scene.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004359 </li>
4360 <li>
4361 <span class="entry_type_enum_name">CONVERGED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004362 <span class="entry_type_enum_notes"><p>AWB has a good set of control values for the
Zhijun He92e698d2014-01-13 16:24:31 -08004363current scene.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004364 </li>
4365 <li>
4366 <span class="entry_type_enum_name">LOCKED</span>
Zhijun He92e698d2014-01-13 16:24:31 -08004367 <span class="entry_type_enum_notes"><p>AWB has been locked.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004368 </li>
4369 </ul>
4370
4371 </td> <!-- entry_type -->
4372
4373 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004374 <p>Current state of AWB algorithm</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004375 </td>
4376
4377 <td class="entry_units">
4378 </td>
4379
4380 <td class="entry_range">
4381 </td>
4382
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004383 <td class="entry_tags">
4384 </td>
4385
4386 </tr>
4387 <tr class="entries_header">
4388 <th class="th_details" colspan="5">Details</th>
4389 </tr>
4390 <tr class="entry_cont">
4391 <td class="entry_details" colspan="5">
Zhijun He92e698d2014-01-13 16:24:31 -08004392 <p>Switching between or enabling AWB modes (<a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a>) always
4393resets the AWB state to INACTIVE.<wbr/> Similarly,<wbr/> switching between <a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a>,<wbr/>
4394or <a href="#controls_android.control.sceneMode">android.<wbr/>control.<wbr/>scene<wbr/>Mode</a> if <code><a href="#controls_android.control.mode">android.<wbr/>control.<wbr/>mode</a> == USE_<wbr/>SCENE_<wbr/>MODE</code> resets all
4395the algorithm states to INACTIVE.<wbr/></p>
4396<p>The camera device can do several state transitions between two results,<wbr/> if it is
4397allowed by the state transition table.<wbr/> So INACTIVE may never actually be seen in
4398a result.<wbr/></p>
4399<p>The state in the result is the state for this image (in sync with this image): if
4400AWB state becomes CONVERGED,<wbr/> then the image data associated with this result should
4401be good to use.<wbr/></p>
4402<p>Below are state transition tables for different AWB modes.<wbr/></p>
4403<p>When <code><a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a> != AWB_<wbr/>MODE_<wbr/>AUTO</code>:</p>
4404<table>
4405<thead>
4406<tr>
4407<th align="center">State</th>
4408<th align="center">Transition Cause</th>
4409<th align="center">New State</th>
4410<th align="center">Notes</th>
4411</tr>
4412</thead>
4413<tbody>
4414<tr>
4415<td align="center">INACTIVE</td>
4416<td align="center"></td>
4417<td align="center">INACTIVE</td>
4418<td align="center">Camera device auto white balance algorithm is disabled</td>
4419</tr>
4420</tbody>
4421</table>
4422<p>When <a href="#controls_android.control.awbMode">android.<wbr/>control.<wbr/>awb<wbr/>Mode</a> is AWB_<wbr/>MODE_<wbr/>AUTO:</p>
4423<table>
4424<thead>
4425<tr>
4426<th align="center">State</th>
4427<th align="center">Transition Cause</th>
4428<th align="center">New State</th>
4429<th align="center">Notes</th>
4430</tr>
4431</thead>
4432<tbody>
4433<tr>
4434<td align="center">INACTIVE</td>
4435<td align="center">Camera device initiates AWB scan</td>
4436<td align="center">SEARCHING</td>
4437<td align="center">Values changing</td>
4438</tr>
4439<tr>
4440<td align="center">INACTIVE</td>
4441<td align="center"><a href="#controls_android.control.awbLock">android.<wbr/>control.<wbr/>awb<wbr/>Lock</a> is ON</td>
4442<td align="center">LOCKED</td>
4443<td align="center">Values locked</td>
4444</tr>
4445<tr>
4446<td align="center">SEARCHING</td>
4447<td align="center">Camera device finishes AWB scan</td>
4448<td align="center">CONVERGED</td>
4449<td align="center">Good values,<wbr/> not changing</td>
4450</tr>
4451<tr>
4452<td align="center">SEARCHING</td>
4453<td align="center"><a href="#controls_android.control.awbLock">android.<wbr/>control.<wbr/>awb<wbr/>Lock</a> is ON</td>
4454<td align="center">LOCKED</td>
4455<td align="center">Values locked</td>
4456</tr>
4457<tr>
4458<td align="center">CONVERGED</td>
4459<td align="center">Camera device initiates AWB scan</td>
4460<td align="center">SEARCHING</td>
4461<td align="center">Values changing</td>
4462</tr>
4463<tr>
4464<td align="center">CONVERGED</td>
4465<td align="center"><a href="#controls_android.control.awbLock">android.<wbr/>control.<wbr/>awb<wbr/>Lock</a> is ON</td>
4466<td align="center">LOCKED</td>
4467<td align="center">Values locked</td>
4468</tr>
4469<tr>
4470<td align="center">LOCKED</td>
4471<td align="center"><a href="#controls_android.control.awbLock">android.<wbr/>control.<wbr/>awb<wbr/>Lock</a> is OFF</td>
4472<td align="center">SEARCHING</td>
4473<td align="center">Values not good after unlock</td>
4474</tr>
4475<tr>
4476<td align="center">LOCKED</td>
4477<td align="center"><a href="#controls_android.control.awbLock">android.<wbr/>control.<wbr/>awb<wbr/>Lock</a> is OFF</td>
4478<td align="center">CONVERGED</td>
4479<td align="center">Values good after unlock</td>
4480</tr>
4481</tbody>
4482</table>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004483 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004484 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004485
4486
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004487 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4488 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004489
4490
4491 <tr class="entry" id="dynamic_android.control.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004492 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004493 android.<wbr/>control.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004494 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004495 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004496 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004497
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004498 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004499
4500 <ul class="entry_type_enum">
4501 <li>
4502 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004503 <span class="entry_type_enum_notes"><p>Full application control of pipeline.<wbr/> All 3A
4504routines are disabled,<wbr/> no other settings in
4505android.<wbr/>control.<wbr/>* have any effect</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004506 </li>
4507 <li>
4508 <span class="entry_type_enum_name">AUTO</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004509 <span class="entry_type_enum_notes"><p>Use settings for each individual 3A routine.<wbr/>
4510Manual control of capture parameters is disabled.<wbr/> All
4511controls in android.<wbr/>control.<wbr/>* besides sceneMode take
4512effect</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004513 </li>
4514 <li>
4515 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004516 <span class="entry_type_enum_notes"><p>Use specific scene mode.<wbr/> Enabling this disables
4517control.<wbr/>aeMode,<wbr/> control.<wbr/>awbMode and control.<wbr/>afMode
4518controls; the HAL must ignore those settings while
4519USE_<wbr/>SCENE_<wbr/>MODE is active (except for FACE_<wbr/>PRIORITY
4520scene mode).<wbr/> Other control entries are still active.<wbr/>
4521This setting can only be used if availableSceneModes !=
4522UNSUPPORTED</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004523 </li>
4524 </ul>
4525
4526 </td> <!-- entry_type -->
4527
4528 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004529 <p>Overall mode of 3A control
4530routines</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004531 </td>
4532
4533 <td class="entry_units">
4534 </td>
4535
4536 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004537 <p>all must be supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004538 </td>
4539
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004540 <td class="entry_tags">
4541 <ul class="entry_tags">
4542 <li><a href="#tag_BC">BC</a></li>
4543 </ul>
4544 </td>
4545
4546 </tr>
4547 <tr class="entries_header">
4548 <th class="th_details" colspan="5">Details</th>
4549 </tr>
4550 <tr class="entry_cont">
4551 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004552 <p>High-level 3A control.<wbr/> When set to OFF,<wbr/> all 3A control
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004553by the camera device is disabled.<wbr/> The application must set the fields for
Igor Murashkin0b080452013-12-27 15:30:25 -08004554capture parameters itself.<wbr/></p>
4555<p>When set to AUTO,<wbr/> the individual algorithm controls in
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004556android.<wbr/>control.<wbr/>* are in effect,<wbr/> such as <a href="#controls_android.control.afMode">android.<wbr/>control.<wbr/>af<wbr/>Mode</a>.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -08004557<p>When set to USE_<wbr/>SCENE_<wbr/>MODE,<wbr/> the individual controls in
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004558android.<wbr/>control.<wbr/>* are mostly disabled,<wbr/> and the camera device implements
Igor Murashkin0b080452013-12-27 15:30:25 -08004559one of the scene mode settings (such as ACTION,<wbr/> SUNSET,<wbr/> or PARTY)
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004560as it wishes.<wbr/> The camera device scene mode 3A settings are provided by
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004561<a href="#static_android.control.sceneModeOverrides">android.<wbr/>control.<wbr/>scene<wbr/>Mode<wbr/>Overrides</a>.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004562 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004563 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004564
4565
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004566 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4567 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004568
4569
4570
4571 <!-- end of kind -->
4572 </tbody>
4573
4574 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004575 <tr><td colspan="6" id="section_demosaic" class="section">demosaic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004576
4577
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004578 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004579
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004580 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004581 <tr>
4582 <th class="th_name">Property Name</th>
4583 <th class="th_type">Type</th>
4584 <th class="th_description">Description</th>
4585 <th class="th_units">Units</th>
4586 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004587 <th class="th_tags">Tags</th>
4588 </tr>
4589 </thead>
4590
4591 <tbody>
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602 <tr class="entry" id="controls_android.demosaic.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004603 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08004604 android.<wbr/>demosaic.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004605 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004606 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004607 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004608
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004609 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004610
4611 <ul class="entry_type_enum">
4612 <li>
4613 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004614 <span class="entry_type_enum_notes"><p>Minimal or no slowdown of frame rate compared to
4615Bayer RAW output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004616 </li>
4617 <li>
4618 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004619 <span class="entry_type_enum_notes"><p>High-quality may reduce output frame
4620rate</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004621 </li>
4622 </ul>
4623
4624 </td> <!-- entry_type -->
4625
4626 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004627 <p>Controls the quality of the demosaicing
4628processing</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004629 </td>
4630
4631 <td class="entry_units">
4632 </td>
4633
4634 <td class="entry_range">
4635 </td>
4636
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004637 <td class="entry_tags">
4638 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004639 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004640 </ul>
4641 </td>
4642
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004643 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004644
4645
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004646 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4647 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004648
4649
4650
4651 <!-- end of kind -->
4652 </tbody>
4653
4654 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004655 <tr><td colspan="6" id="section_edge" class="section">edge</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004656
4657
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004658 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004659
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004660 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004661 <tr>
4662 <th class="th_name">Property Name</th>
4663 <th class="th_type">Type</th>
4664 <th class="th_description">Description</th>
4665 <th class="th_units">Units</th>
4666 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004667 <th class="th_tags">Tags</th>
4668 </tr>
4669 </thead>
4670
4671 <tbody>
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682 <tr class="entry" id="controls_android.edge.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004683 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004684 android.<wbr/>edge.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004685 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004686 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004687 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004688
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004689 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004690
4691 <ul class="entry_type_enum">
4692 <li>
4693 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004694 <span class="entry_type_enum_notes"><p>No edge enhancement is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004695 </li>
4696 <li>
4697 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004698 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to sensor
4699output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004700 </li>
4701 <li>
4702 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004703 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
4704quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004705 </li>
4706 </ul>
4707
4708 </td> <!-- entry_type -->
4709
4710 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004711 <p>Operation mode for edge
4712enhancement</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004713 </td>
4714
4715 <td class="entry_units">
4716 </td>
4717
4718 <td class="entry_range">
4719 </td>
4720
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004721 <td class="entry_tags">
4722 </td>
4723
4724 </tr>
4725 <tr class="entries_header">
4726 <th class="th_details" colspan="5">Details</th>
4727 </tr>
4728 <tr class="entry_cont">
4729 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004730 <p>Edge/<wbr/>sharpness/<wbr/>detail enhancement.<wbr/> OFF means no
4731enhancement will be applied by the HAL.<wbr/></p>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004732<p>FAST/<wbr/>HIGH_<wbr/>QUALITY both mean camera device determined enhancement
Igor Murashkin0b080452013-12-27 15:30:25 -08004733will be applied.<wbr/> HIGH_<wbr/>QUALITY mode indicates that the
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004734camera device will use the highest-quality enhancement algorithms,<wbr/>
4735even if it slows down capture rate.<wbr/> FAST means the camera device will
Igor Murashkin0b080452013-12-27 15:30:25 -08004736not slow down capture rate when applying edge enhancement.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004737 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004738 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004739
4740
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004741 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4742 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004743
4744
4745 <tr class="entry" id="controls_android.edge.strength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004746 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08004747 android.<wbr/>edge.<wbr/>strength
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004748 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004749 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004750 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004751
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004752 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004753
4754
4755 </td> <!-- entry_type -->
4756
4757 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004758 <p>Control the amount of edge enhancement
4759applied to the images</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004760 </td>
4761
4762 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08004763 1-10; 10 is maximum sharpening
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004764 </td>
4765
4766 <td class="entry_range">
4767 </td>
4768
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004769 <td class="entry_tags">
4770 </td>
4771
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004772 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004773
4774
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004775 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4776 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004777
4778
4779
4780 <!-- end of kind -->
4781 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004782 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004783
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004784 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004785 <tr>
4786 <th class="th_name">Property Name</th>
4787 <th class="th_type">Type</th>
4788 <th class="th_description">Description</th>
4789 <th class="th_units">Units</th>
4790 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004791 <th class="th_tags">Tags</th>
4792 </tr>
4793 </thead>
4794
4795 <tbody>
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806 <tr class="entry" id="dynamic_android.edge.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004807 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004808 android.<wbr/>edge.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004809 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004810 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004811 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004812
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004813 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004814
4815 <ul class="entry_type_enum">
4816 <li>
4817 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004818 <span class="entry_type_enum_notes"><p>No edge enhancement is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004819 </li>
4820 <li>
4821 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004822 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to sensor
4823output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004824 </li>
4825 <li>
4826 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08004827 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
4828quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004829 </li>
4830 </ul>
4831
4832 </td> <!-- entry_type -->
4833
4834 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004835 <p>Operation mode for edge
4836enhancement</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004837 </td>
4838
4839 <td class="entry_units">
4840 </td>
4841
4842 <td class="entry_range">
4843 </td>
4844
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004845 <td class="entry_tags">
4846 </td>
4847
4848 </tr>
4849 <tr class="entries_header">
4850 <th class="th_details" colspan="5">Details</th>
4851 </tr>
4852 <tr class="entry_cont">
4853 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004854 <p>Edge/<wbr/>sharpness/<wbr/>detail enhancement.<wbr/> OFF means no
4855enhancement will be applied by the HAL.<wbr/></p>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004856<p>FAST/<wbr/>HIGH_<wbr/>QUALITY both mean camera device determined enhancement
Igor Murashkin0b080452013-12-27 15:30:25 -08004857will be applied.<wbr/> HIGH_<wbr/>QUALITY mode indicates that the
Zhijun Hef90eeaf2014-01-16 12:13:35 -08004858camera device will use the highest-quality enhancement algorithms,<wbr/>
4859even if it slows down capture rate.<wbr/> FAST means the camera device will
Igor Murashkin0b080452013-12-27 15:30:25 -08004860not slow down capture rate when applying edge enhancement.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004861 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004862 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004863
4864
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004865 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4866 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004867
4868
4869
4870 <!-- end of kind -->
4871 </tbody>
4872
4873 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004874 <tr><td colspan="6" id="section_flash" class="section">flash</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004875
4876
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004877 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004878
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004879 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004880 <tr>
4881 <th class="th_name">Property Name</th>
4882 <th class="th_type">Type</th>
4883 <th class="th_description">Description</th>
4884 <th class="th_units">Units</th>
4885 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004886 <th class="th_tags">Tags</th>
4887 </tr>
4888 </thead>
4889
4890 <tbody>
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901 <tr class="entry" id="controls_android.flash.firingPower">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004902 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004903 android.<wbr/>flash.<wbr/>firing<wbr/>Power
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004904 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004905 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004906 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004907
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004908 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004909
4910
4911 </td> <!-- entry_type -->
4912
4913 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004914 <p>Power for flash firing/<wbr/>torch</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004915 </td>
4916
4917 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08004918 10 is max power; 0 is no flash.<wbr/> Linear
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004919 </td>
4920
4921 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004922 <p>0 - 10</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004923 </td>
4924
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004925 <td class="entry_tags">
4926 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004927 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004928 </ul>
4929 </td>
4930
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004931 </tr>
4932 <tr class="entries_header">
4933 <th class="th_details" colspan="5">Details</th>
4934 </tr>
4935 <tr class="entry_cont">
4936 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004937 <p>Power for snapshot may use a different scale than
4938for torch mode.<wbr/> Only one entry for torch mode will be
4939used</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004940 </td>
4941 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004942
4943
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004944 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4945 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004946
4947
4948 <tr class="entry" id="controls_android.flash.firingTime">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004949 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004950 android.<wbr/>flash.<wbr/>firing<wbr/>Time
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004951 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004952 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004953 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004954
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004955 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004956
4957
4958 </td> <!-- entry_type -->
4959
4960 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08004961 <p>Firing time of flash relative to start of
4962exposure</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004963 </td>
4964
4965 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08004966 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004967 </td>
4968
4969 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08004970 <p>0-(exposure time-flash duration)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004971 </td>
4972
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004973 <td class="entry_tags">
4974 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004975 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004976 </ul>
4977 </td>
4978
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004979 </tr>
4980 <tr class="entries_header">
4981 <th class="th_details" colspan="5">Details</th>
4982 </tr>
4983 <tr class="entry_cont">
4984 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08004985 <p>Clamped to (0,<wbr/> exposure time - flash
4986duration).<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004987 </td>
4988 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004989
4990
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08004991 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
4992 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004993
4994
4995 <tr class="entry" id="controls_android.flash.mode">
Zhijun Heea27bc32014-01-15 13:47:59 -08004996 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08004997 android.<wbr/>flash.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08004998 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004999 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005000 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005001
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005002 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005003
5004 <ul class="entry_type_enum">
5005 <li>
5006 <span class="entry_type_enum_name">OFF</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005007 <span class="entry_type_enum_notes"><p>Do not fire the flash for this capture.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005008 </li>
5009 <li>
5010 <span class="entry_type_enum_name">SINGLE</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005011 <span class="entry_type_enum_notes"><p>If the flash is available and charged,<wbr/> fire flash
5012for this capture based on <a href="#controls_android.flash.firingPower">android.<wbr/>flash.<wbr/>firing<wbr/>Power</a> and
5013<a href="#controls_android.flash.firingTime">android.<wbr/>flash.<wbr/>firing<wbr/>Time</a>.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005014 </li>
5015 <li>
5016 <span class="entry_type_enum_name">TORCH</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005017 <span class="entry_type_enum_notes"><p>Transition flash to continuously on.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005018 </li>
5019 </ul>
5020
5021 </td> <!-- entry_type -->
5022
5023 <td class="entry_description">
Zhijun Heea27bc32014-01-15 13:47:59 -08005024 <p>The desired mode for for the camera device's flash control.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005025 </td>
5026
5027 <td class="entry_units">
5028 </td>
5029
5030 <td class="entry_range">
5031 </td>
5032
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005033 <td class="entry_tags">
5034 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005035 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005036 </ul>
5037 </td>
5038
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005039 </tr>
Zhijun Heea27bc32014-01-15 13:47:59 -08005040 <tr class="entries_header">
5041 <th class="th_details" colspan="5">Details</th>
5042 </tr>
5043 <tr class="entry_cont">
5044 <td class="entry_details" colspan="5">
5045 <p>This control is only effective when flash unit is available
5046(<code><a href="#static_android.flash.info.available">android.<wbr/>flash.<wbr/>info.<wbr/>available</a> != 0</code>).<wbr/></p>
5047<p>When this control is used,<wbr/> the <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> must be set to ON or OFF.<wbr/>
5048Otherwise,<wbr/> the camera device auto-exposure related flash control (ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/>
5049ON_<wbr/>ALWAYS_<wbr/>FLASH,<wbr/> or ON_<wbr/>AUTO_<wbr/>FLASH_<wbr/>REDEYE) will override this control.<wbr/></p>
5050<p>When set to OFF,<wbr/> the camera device will not fire flash for this capture.<wbr/></p>
5051<p>When set to SINGLE,<wbr/> the camera device will fire flash regardless of the camera
5052device's auto-exposure routine's result.<wbr/> When used in still capture case,<wbr/> this
5053control should be used along with AE precapture metering sequence
5054(<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>),<wbr/> otherwise,<wbr/> the image may be incorrectly exposed.<wbr/></p>
5055<p>When set to TORCH,<wbr/> the flash will be on continuously.<wbr/> This mode can be used
5056for use cases such as preview,<wbr/> auto-focus assist,<wbr/> still capture,<wbr/> or video recording.<wbr/></p>
5057 </td>
5058 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005059
5060
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005061 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5062 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005063
5064
5065
5066 <!-- end of kind -->
5067 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005068 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005069
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005070 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005071 <tr>
5072 <th class="th_name">Property Name</th>
5073 <th class="th_type">Type</th>
5074 <th class="th_description">Description</th>
5075 <th class="th_units">Units</th>
5076 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005077 <th class="th_tags">Tags</th>
5078 </tr>
5079 </thead>
5080
5081 <tbody>
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094 <tr class="entry" id="static_android.flash.info.available">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005095 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08005096 android.<wbr/>flash.<wbr/>info.<wbr/>available
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005097 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005098 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005099 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005100
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005101 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005102
5103
5104 </td> <!-- entry_type -->
5105
5106 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005107 <p>Whether this camera has a
5108flash</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005109 </td>
5110
5111 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005112 boolean (0 = false,<wbr/> otherwise true)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005113 </td>
5114
5115 <td class="entry_range">
5116 </td>
5117
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005118 <td class="entry_tags">
5119 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005120 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005121 </ul>
5122 </td>
5123
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005124 </tr>
5125 <tr class="entries_header">
5126 <th class="th_details" colspan="5">Details</th>
5127 </tr>
5128 <tr class="entry_cont">
5129 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08005130 <p>If no flash,<wbr/> none of the flash controls do
5131anything.<wbr/> All other metadata should return 0</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005132 </td>
5133 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005134
5135
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005136 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5137 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005138
5139
5140 <tr class="entry" id="static_android.flash.info.chargeDuration">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005141 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08005142 android.<wbr/>flash.<wbr/>info.<wbr/>charge<wbr/>Duration
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005143 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005144 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005145 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005146
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005147 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005148
5149
5150 </td> <!-- entry_type -->
5151
5152 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005153 <p>Time taken before flash can fire
5154again</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005155 </td>
5156
5157 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005158 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005159 </td>
5160
5161 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08005162 <p>0-1e9</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005163 </td>
5164
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005165 <td class="entry_tags">
5166 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005167 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005168 </ul>
5169 </td>
5170
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005171 </tr>
5172 <tr class="entries_header">
5173 <th class="th_details" colspan="5">Details</th>
5174 </tr>
5175 <tr class="entry_cont">
5176 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08005177 <p>1 second too long/<wbr/>too short for recharge? Should
5178this be power-dependent?</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005179 </td>
5180 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005181
5182
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005183 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5184 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005185
5186
5187
5188
5189
5190 <tr class="entry" id="static_android.flash.colorTemperature">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005191 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005192 android.<wbr/>flash.<wbr/>color<wbr/>Temperature
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005193 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005194 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005195 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005196
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005197 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005198
5199
5200 </td> <!-- entry_type -->
5201
5202 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005203 <p>The x,<wbr/>y whitepoint of the
5204flash</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005205 </td>
5206
5207 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005208 pair of floats
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005209 </td>
5210
5211 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08005212 <p>0-1 for both</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005213 </td>
5214
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005215 <td class="entry_tags">
5216 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005217 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005218 </ul>
5219 </td>
5220
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005221 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005222
5223
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005224 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5225 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005226
5227
5228 <tr class="entry" id="static_android.flash.maxEnergy">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005229 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005230 android.<wbr/>flash.<wbr/>max<wbr/>Energy
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005231 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005232 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005233 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005234
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005235 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005236
5237
5238 </td> <!-- entry_type -->
5239
5240 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005241 <p>Max energy output of the flash for a full
5242power single flash</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005243 </td>
5244
5245 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005246 lumen-seconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005247 </td>
5248
5249 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08005250 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005251 </td>
5252
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005253 <td class="entry_tags">
5254 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005255 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005256 </ul>
5257 </td>
5258
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005259 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005260
5261
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005262 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5263 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005264
5265
5266
5267 <!-- end of kind -->
5268 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005269 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005270
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005271 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005272 <tr>
5273 <th class="th_name">Property Name</th>
5274 <th class="th_type">Type</th>
5275 <th class="th_description">Description</th>
5276 <th class="th_units">Units</th>
5277 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005278 <th class="th_tags">Tags</th>
5279 </tr>
5280 </thead>
5281
5282 <tbody>
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293 <tr class="entry" id="dynamic_android.flash.firingPower">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005294 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08005295 android.<wbr/>flash.<wbr/>firing<wbr/>Power
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005296 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005297 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005298 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005299
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005300 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005301
5302
5303 </td> <!-- entry_type -->
5304
5305 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005306 <p>Power for flash firing/<wbr/>torch</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005307 </td>
5308
5309 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005310 10 is max power; 0 is no flash.<wbr/> Linear
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005311 </td>
5312
5313 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08005314 <p>0 - 10</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005315 </td>
5316
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005317 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005318 <ul class="entry_tags">
5319 <li><a href="#tag_V1">V1</a></li>
5320 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005321 </td>
5322
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005323 </tr>
5324 <tr class="entries_header">
5325 <th class="th_details" colspan="5">Details</th>
5326 </tr>
5327 <tr class="entry_cont">
5328 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08005329 <p>Power for snapshot may use a different scale than
5330for torch mode.<wbr/> Only one entry for torch mode will be
5331used</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005332 </td>
5333 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005334
5335
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005336 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5337 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005338
5339
5340 <tr class="entry" id="dynamic_android.flash.firingTime">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005341 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08005342 android.<wbr/>flash.<wbr/>firing<wbr/>Time
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005343 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005344 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005345 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005346
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005347 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005348
5349
5350 </td> <!-- entry_type -->
5351
5352 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005353 <p>Firing time of flash relative to start of
5354exposure</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005355 </td>
5356
5357 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005358 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005359 </td>
5360
5361 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08005362 <p>0-(exposure time-flash duration)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005363 </td>
5364
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005365 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005366 <ul class="entry_tags">
5367 <li><a href="#tag_V1">V1</a></li>
5368 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005369 </td>
5370
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005371 </tr>
5372 <tr class="entries_header">
5373 <th class="th_details" colspan="5">Details</th>
5374 </tr>
5375 <tr class="entry_cont">
5376 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08005377 <p>Clamped to (0,<wbr/> exposure time - flash
5378duration).<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005379 </td>
5380 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005381
5382
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005383 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5384 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005385
5386
5387 <tr class="entry" id="dynamic_android.flash.mode">
Zhijun Heea27bc32014-01-15 13:47:59 -08005388 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08005389 android.<wbr/>flash.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005390 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005391 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005392 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005393
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005394 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005395
5396 <ul class="entry_type_enum">
5397 <li>
5398 <span class="entry_type_enum_name">OFF</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005399 <span class="entry_type_enum_notes"><p>Do not fire the flash for this capture.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005400 </li>
5401 <li>
5402 <span class="entry_type_enum_name">SINGLE</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005403 <span class="entry_type_enum_notes"><p>If the flash is available and charged,<wbr/> fire flash
5404for this capture based on <a href="#controls_android.flash.firingPower">android.<wbr/>flash.<wbr/>firing<wbr/>Power</a> and
5405<a href="#controls_android.flash.firingTime">android.<wbr/>flash.<wbr/>firing<wbr/>Time</a>.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005406 </li>
5407 <li>
5408 <span class="entry_type_enum_name">TORCH</span>
Zhijun Heea27bc32014-01-15 13:47:59 -08005409 <span class="entry_type_enum_notes"><p>Transition flash to continuously on.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005410 </li>
5411 </ul>
5412
5413 </td> <!-- entry_type -->
5414
5415 <td class="entry_description">
Zhijun Heea27bc32014-01-15 13:47:59 -08005416 <p>The desired mode for for the camera device's flash control.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005417 </td>
5418
5419 <td class="entry_units">
5420 </td>
5421
5422 <td class="entry_range">
5423 </td>
5424
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005425 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005426 <ul class="entry_tags">
5427 <li><a href="#tag_BC">BC</a></li>
5428 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005429 </td>
5430
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005431 </tr>
Zhijun Heea27bc32014-01-15 13:47:59 -08005432 <tr class="entries_header">
5433 <th class="th_details" colspan="5">Details</th>
5434 </tr>
5435 <tr class="entry_cont">
5436 <td class="entry_details" colspan="5">
5437 <p>This control is only effective when flash unit is available
5438(<code><a href="#static_android.flash.info.available">android.<wbr/>flash.<wbr/>info.<wbr/>available</a> != 0</code>).<wbr/></p>
5439<p>When this control is used,<wbr/> the <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> must be set to ON or OFF.<wbr/>
5440Otherwise,<wbr/> the camera device auto-exposure related flash control (ON_<wbr/>AUTO_<wbr/>FLASH,<wbr/>
5441ON_<wbr/>ALWAYS_<wbr/>FLASH,<wbr/> or ON_<wbr/>AUTO_<wbr/>FLASH_<wbr/>REDEYE) will override this control.<wbr/></p>
5442<p>When set to OFF,<wbr/> the camera device will not fire flash for this capture.<wbr/></p>
5443<p>When set to SINGLE,<wbr/> the camera device will fire flash regardless of the camera
5444device's auto-exposure routine's result.<wbr/> When used in still capture case,<wbr/> this
5445control should be used along with AE precapture metering sequence
5446(<a href="#controls_android.control.aePrecaptureTrigger">android.<wbr/>control.<wbr/>ae<wbr/>Precapture<wbr/>Trigger</a>),<wbr/> otherwise,<wbr/> the image may be incorrectly exposed.<wbr/></p>
5447<p>When set to TORCH,<wbr/> the flash will be on continuously.<wbr/> This mode can be used
5448for use cases such as preview,<wbr/> auto-focus assist,<wbr/> still capture,<wbr/> or video recording.<wbr/></p>
5449 </td>
5450 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005451
5452
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005453 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5454 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005455
5456
5457 <tr class="entry" id="dynamic_android.flash.state">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005458 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005459 android.<wbr/>flash.<wbr/>state
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005460 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005461 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005462 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005463
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005464 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005465
5466 <ul class="entry_type_enum">
5467 <li>
5468 <span class="entry_type_enum_name">UNAVAILABLE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005469 <span class="entry_type_enum_notes"><p>No flash on camera</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005470 </li>
5471 <li>
5472 <span class="entry_type_enum_name">CHARGING</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005473 <span class="entry_type_enum_notes"><p>if android.<wbr/>flash.<wbr/>available is true Flash is
5474charging and cannot be fired</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005475 </li>
5476 <li>
5477 <span class="entry_type_enum_name">READY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005478 <span class="entry_type_enum_notes"><p>if android.<wbr/>flash.<wbr/>available is true Flash is
5479ready to fire</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005480 </li>
5481 <li>
5482 <span class="entry_type_enum_name">FIRED</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005483 <span class="entry_type_enum_notes"><p>if android.<wbr/>flash.<wbr/>available is true Flash fired
5484for this capture</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005485 </li>
5486 </ul>
5487
5488 </td> <!-- entry_type -->
5489
5490 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005491 <p>Current state of the flash
5492unit</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005493 </td>
5494
5495 <td class="entry_units">
5496 </td>
5497
5498 <td class="entry_range">
5499 </td>
5500
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005501 <td class="entry_tags">
5502 </td>
5503
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005504 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005505
5506
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005507 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5508 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005509
5510
5511
5512 <!-- end of kind -->
5513 </tbody>
5514
5515 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005516 <tr><td colspan="6" id="section_geometric" class="section">geometric</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005517
5518
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005519 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005520
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005521 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005522 <tr>
5523 <th class="th_name">Property Name</th>
5524 <th class="th_type">Type</th>
5525 <th class="th_description">Description</th>
5526 <th class="th_units">Units</th>
5527 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005528 <th class="th_tags">Tags</th>
5529 </tr>
5530 </thead>
5531
5532 <tbody>
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543 <tr class="entry" id="controls_android.geometric.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005544 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005545 android.<wbr/>geometric.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005546 </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 entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005549
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005550 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005551
5552 <ul class="entry_type_enum">
5553 <li>
5554 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005555 <span class="entry_type_enum_notes"><p>No geometric correction is
5556applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005557 </li>
5558 <li>
5559 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005560 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
5561bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005562 </li>
5563 <li>
5564 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005565 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
5566quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005567 </li>
5568 </ul>
5569
5570 </td> <!-- entry_type -->
5571
5572 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005573 <p>Operating mode of geometric
5574correction</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005575 </td>
5576
5577 <td class="entry_units">
5578 </td>
5579
5580 <td class="entry_range">
5581 </td>
5582
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005583 <td class="entry_tags">
5584 </td>
5585
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005586 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005587
5588
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005589 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5590 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005591
5592
5593 <tr class="entry" id="controls_android.geometric.strength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005594 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005595 android.<wbr/>geometric.<wbr/>strength
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005596 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005597 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005598 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005599
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005600 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005601
5602
5603 </td> <!-- entry_type -->
5604
5605 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005606 <p>Control the amount of shading correction
5607applied to the images</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005608 </td>
5609
5610 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005611 unitless: 1-10; 10 is full shading
5612 compensation
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005613 </td>
5614
5615 <td class="entry_range">
5616 </td>
5617
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005618 <td class="entry_tags">
5619 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005620 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005621 </ul>
5622 </td>
5623
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005624 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005625
5626
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005627 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5628 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005629
5630
5631
5632 <!-- end of kind -->
5633 </tbody>
5634
5635 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005636 <tr><td colspan="6" id="section_hotPixel" class="section">hotPixel</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005637
5638
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005639 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005640
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005641 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005642 <tr>
5643 <th class="th_name">Property Name</th>
5644 <th class="th_type">Type</th>
5645 <th class="th_description">Description</th>
5646 <th class="th_units">Units</th>
5647 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005648 <th class="th_tags">Tags</th>
5649 </tr>
5650 </thead>
5651
5652 <tbody>
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663 <tr class="entry" id="controls_android.hotPixel.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005664 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005665 android.<wbr/>hot<wbr/>Pixel.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005666 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005667 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005668 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005669
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005670 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005671
5672 <ul class="entry_type_enum">
5673 <li>
5674 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005675 <span class="entry_type_enum_notes"><p>No hot pixel correction can be
5676applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005677 </li>
5678 <li>
5679 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005680 <span class="entry_type_enum_notes"><p>Frame rate must not be reduced compared to raw
5681Bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005682 </li>
5683 <li>
5684 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005685 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
5686quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005687 </li>
5688 </ul>
5689
5690 </td> <!-- entry_type -->
5691
5692 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005693 <p>Set operational mode for hot pixel
5694correction</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005695 </td>
5696
5697 <td class="entry_units">
5698 </td>
5699
5700 <td class="entry_range">
5701 </td>
5702
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005703 <td class="entry_tags">
5704 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005705 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005706 </ul>
5707 </td>
5708
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005709 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005710
5711
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005712 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5713 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005714
5715
5716
5717 <!-- end of kind -->
5718 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005719 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005720
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005721 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005722 <tr>
5723 <th class="th_name">Property Name</th>
5724 <th class="th_type">Type</th>
5725 <th class="th_description">Description</th>
5726 <th class="th_units">Units</th>
5727 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005728 <th class="th_tags">Tags</th>
5729 </tr>
5730 </thead>
5731
5732 <tbody>
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745 <tr class="entry" id="static_android.hotPixel.info.map">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005746 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005747 android.<wbr/>hot<wbr/>Pixel.<wbr/>info.<wbr/>map
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005748 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005749 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005750 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005751 <span class="entry_type_container">x</span>
5752
5753 <span class="entry_type_array">
5754 2 x n
5755 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005756 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08005757 <div class="entry_type_notes">list of coordinates based on android.<wbr/>sensor.<wbr/>pixel<wbr/>Array<wbr/>Size</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005758
5759
5760 </td> <!-- entry_type -->
5761
5762 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005763 <p>Location of hot/<wbr/>defective pixels on
5764sensor</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005765 </td>
5766
5767 <td class="entry_units">
5768 </td>
5769
5770 <td class="entry_range">
5771 </td>
5772
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005773 <td class="entry_tags">
5774 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005775 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005776 </ul>
5777 </td>
5778
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005779 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005780
5781
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005782 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5783 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005784
5785
5786
5787
5788
5789
5790 <!-- end of kind -->
5791 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005792 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005793
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005794 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005795 <tr>
5796 <th class="th_name">Property Name</th>
5797 <th class="th_type">Type</th>
5798 <th class="th_description">Description</th>
5799 <th class="th_units">Units</th>
5800 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005801 <th class="th_tags">Tags</th>
5802 </tr>
5803 </thead>
5804
5805 <tbody>
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816 <tr class="entry" id="dynamic_android.hotPixel.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005817 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005818 android.<wbr/>hot<wbr/>Pixel.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005819 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005820 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005821 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005822
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005823 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005824
5825 <ul class="entry_type_enum">
5826 <li>
5827 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005828 <span class="entry_type_enum_notes"><p>No hot pixel correction can be
5829applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005830 </li>
5831 <li>
5832 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005833 <span class="entry_type_enum_notes"><p>Frame rate must not be reduced compared to raw
5834Bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005835 </li>
5836 <li>
5837 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08005838 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
5839quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005840 </li>
5841 </ul>
5842
5843 </td> <!-- entry_type -->
5844
5845 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005846 <p>Set operational mode for hot pixel
5847correction</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005848 </td>
5849
5850 <td class="entry_units">
5851 </td>
5852
5853 <td class="entry_range">
5854 </td>
5855
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005856 <td class="entry_tags">
5857 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005858 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005859 </ul>
5860 </td>
5861
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005862 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005863
5864
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005865 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5866 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005867
5868
5869
5870 <!-- end of kind -->
5871 </tbody>
5872
5873 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005874 <tr><td colspan="6" id="section_jpeg" class="section">jpeg</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005875
5876
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005877 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005878
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005879 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005880 <tr>
5881 <th class="th_name">Property Name</th>
5882 <th class="th_type">Type</th>
5883 <th class="th_description">Description</th>
5884 <th class="th_units">Units</th>
5885 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005886 <th class="th_tags">Tags</th>
5887 </tr>
5888 </thead>
5889
5890 <tbody>
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901 <tr class="entry" id="controls_android.jpeg.gpsCoordinates">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005902 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005903 android.<wbr/>jpeg.<wbr/>gps<wbr/>Coordinates
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005904 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005905 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005906 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005907 <span class="entry_type_container">x</span>
5908
5909 <span class="entry_type_array">
5910 3
5911 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005912 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08005913 <div class="entry_type_notes">latitude,<wbr/> longitude,<wbr/> altitude.<wbr/> First two in degrees,<wbr/> the third in meters</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005914
5915
5916 </td> <!-- entry_type -->
5917
5918 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005919 <p>GPS coordinates to include in output JPEG
5920EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005921 </td>
5922
5923 <td class="entry_units">
5924 </td>
5925
5926 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08005927 <p>(-180 - 180],<wbr/> [-90,<wbr/>90],<wbr/> [-inf,<wbr/> inf]</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005928 </td>
5929
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005930 <td class="entry_tags">
5931 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005932 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005933 </ul>
5934 </td>
5935
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005936 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005937
5938
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005939 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5940 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005941
5942
5943 <tr class="entry" id="controls_android.jpeg.gpsProcessingMethod">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005944 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005945 android.<wbr/>jpeg.<wbr/>gps<wbr/>Processing<wbr/>Method
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005946 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005947 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005948 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005949
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005950 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005951
5952
5953 </td> <!-- entry_type -->
5954
5955 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005956 <p>32 characters describing GPS algorithm to
5957include in EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005958 </td>
5959
5960 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005961 UTF-8 null-terminated string
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005962 </td>
5963
5964 <td class="entry_range">
5965 </td>
5966
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005967 <td class="entry_tags">
5968 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005969 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005970 </ul>
5971 </td>
5972
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005973 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005974
5975
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08005976 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
5977 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005978
5979
5980 <tr class="entry" id="controls_android.jpeg.gpsTimestamp">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005981 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08005982 android.<wbr/>jpeg.<wbr/>gps<wbr/>Timestamp
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08005983 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005984 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005985 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005986
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005987 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005988
5989
5990 </td> <!-- entry_type -->
5991
5992 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08005993 <p>Time GPS fix was made to include in
5994EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005995 </td>
5996
5997 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08005998 UTC in seconds since January 1,<wbr/> 1970
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005999 </td>
6000
6001 <td class="entry_range">
6002 </td>
6003
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006004 <td class="entry_tags">
6005 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006006 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006007 </ul>
6008 </td>
6009
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006010 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006011
6012
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006013 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6014 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006015
6016
6017 <tr class="entry" id="controls_android.jpeg.orientation">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006018 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006019 android.<wbr/>jpeg.<wbr/>orientation
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006020 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006021 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006022 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006023
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006024 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006025
6026
6027 </td> <!-- entry_type -->
6028
6029 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006030 <p>Orientation of JPEG image to
6031write</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006032 </td>
6033
6034 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006035 Degrees in multiples of 90
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006036 </td>
6037
6038 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006039 <p>0,<wbr/> 90,<wbr/> 180,<wbr/> 270</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006040 </td>
6041
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006042 <td class="entry_tags">
6043 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006044 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006045 </ul>
6046 </td>
6047
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006048 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006049
6050
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006051 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6052 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006053
6054
6055 <tr class="entry" id="controls_android.jpeg.quality">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006056 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006057 android.<wbr/>jpeg.<wbr/>quality
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006058 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006059 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006060 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006061
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006062 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006063
6064
6065 </td> <!-- entry_type -->
6066
6067 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006068 <p>Compression quality of the final JPEG
6069image</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006070 </td>
6071
6072 <td class="entry_units">
6073 </td>
6074
6075 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006076 <p>1-100; larger is higher quality</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006077 </td>
6078
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006079 <td class="entry_tags">
6080 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006081 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006082 </ul>
6083 </td>
6084
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006085 </tr>
6086 <tr class="entries_header">
6087 <th class="th_details" colspan="5">Details</th>
6088 </tr>
6089 <tr class="entry_cont">
6090 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006091 <p>85-95 is typical usage range</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006092 </td>
6093 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006094
6095
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006096 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6097 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006098
6099
6100 <tr class="entry" id="controls_android.jpeg.thumbnailQuality">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006101 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006102 android.<wbr/>jpeg.<wbr/>thumbnail<wbr/>Quality
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006103 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006104 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006105 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006106
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006107 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006108
6109
6110 </td> <!-- entry_type -->
6111
6112 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006113 <p>Compression quality of JPEG
6114thumbnail</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006115 </td>
6116
6117 <td class="entry_units">
6118 </td>
6119
6120 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006121 <p>1-100; larger is higher quality</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006122 </td>
6123
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006124 <td class="entry_tags">
6125 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006126 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006127 </ul>
6128 </td>
6129
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006130 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006131
6132
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006133 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6134 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006135
6136
6137 <tr class="entry" id="controls_android.jpeg.thumbnailSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006138 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006139 android.<wbr/>jpeg.<wbr/>thumbnail<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006140 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006141 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006142 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006143 <span class="entry_type_container">x</span>
6144
6145 <span class="entry_type_array">
6146 2
6147 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07006148 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006149
6150
6151 </td> <!-- entry_type -->
6152
6153 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006154 <p>Resolution of embedded JPEG thumbnail</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006155 </td>
6156
6157 <td class="entry_units">
6158 </td>
6159
6160 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006161 <p>Size must be one of the size from <a href="#static_android.jpeg.availableThumbnailSizes">android.<wbr/>jpeg.<wbr/>available<wbr/>Thumbnail<wbr/>Sizes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006162 </td>
6163
6164 <td class="entry_tags">
6165 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006166 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006167 </ul>
6168 </td>
6169
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006170 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006171 <tr class="entries_header">
6172 <th class="th_details" colspan="5">Details</th>
6173 </tr>
6174 <tr class="entry_cont">
6175 <td class="entry_details" colspan="5">
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006176 <p>When set to (0,<wbr/> 0) value,<wbr/> the JPEG EXIF will not contain thumbnail,<wbr/>
6177but the captured JPEG will still be a valid image.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -08006178<p>When a jpeg image capture is issued,<wbr/> the thumbnail size selected should have
6179the same aspect ratio as the jpeg image.<wbr/></p>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006180 </td>
6181 </tr>
6182
6183
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006184 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6185 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006186
6187
6188
6189 <!-- end of kind -->
6190 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006191 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006192
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006193 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006194 <tr>
6195 <th class="th_name">Property Name</th>
6196 <th class="th_type">Type</th>
6197 <th class="th_description">Description</th>
6198 <th class="th_units">Units</th>
6199 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006200 <th class="th_tags">Tags</th>
6201 </tr>
6202 </thead>
6203
6204 <tbody>
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215 <tr class="entry" id="static_android.jpeg.availableThumbnailSizes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006216 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006217 android.<wbr/>jpeg.<wbr/>available<wbr/>Thumbnail<wbr/>Sizes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006218 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006219 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006220 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006221 <span class="entry_type_container">x</span>
6222
6223 <span class="entry_type_array">
6224 2 x n
6225 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07006226 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006227
6228
6229 </td> <!-- entry_type -->
6230
6231 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006232 <p>Supported resolutions for the JPEG thumbnail</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006233 </td>
6234
6235 <td class="entry_units">
6236 </td>
6237
6238 <td class="entry_range">
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006239 <p>Will include at least one valid resolution,<wbr/> plus
6240(0,<wbr/>0) for no thumbnail generation,<wbr/> and each size will be distinct.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006241 </td>
6242
6243 <td class="entry_tags">
6244 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006245 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006246 </ul>
6247 </td>
6248
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006249 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006250 <tr class="entries_header">
6251 <th class="th_details" colspan="5">Details</th>
6252 </tr>
6253 <tr class="entry_cont">
6254 <td class="entry_details" colspan="5">
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006255 <p>Below condiditions will be satisfied for this size list:</p>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006256<ul>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006257<li>The sizes will be sorted by increasing pixel area (width x height).<wbr/>
6258If several resolutions have the same area,<wbr/> they will be sorted by increasing width.<wbr/></li>
6259<li>The aspect ratio of the largest thumbnail size will be same as the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006260aspect ratio of largest size in <a href="#static_android.scaler.availableJpegSizes">android.<wbr/>scaler.<wbr/>available<wbr/>Jpeg<wbr/>Sizes</a>.<wbr/>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006261The largest size is defined as the size that has the largest pixel area
Igor Murashkin0b080452013-12-27 15:30:25 -08006262in a given size list.<wbr/></li>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006263<li>Each size in <a href="#static_android.scaler.availableJpegSizes">android.<wbr/>scaler.<wbr/>available<wbr/>Jpeg<wbr/>Sizes</a> will have at least
Igor Murashkin0b080452013-12-27 15:30:25 -08006264one corresponding size that has the same aspect ratio in availableThumbnailSizes,<wbr/>
6265and vice versa.<wbr/></li>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006266<li>All non (0,<wbr/> 0) sizes will have non-zero widths and heights.<wbr/></li>
Igor Murashkin0b080452013-12-27 15:30:25 -08006267</ul>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006268 </td>
6269 </tr>
6270
6271
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006272 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6273 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006274
6275
6276 <tr class="entry" id="static_android.jpeg.maxSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006277 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006278 android.<wbr/>jpeg.<wbr/>max<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006279 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006280 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006281 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006282
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006283 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006284
6285
6286 </td> <!-- entry_type -->
6287
6288 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006289 <p>Maximum size in bytes for the compressed
6290JPEG buffer</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006291 </td>
6292
6293 <td class="entry_units">
6294 </td>
6295
6296 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006297 <p>Must be large enough to fit any JPEG produced by
6298the camera</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006299 </td>
6300
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006301 <td class="entry_tags">
6302 </td>
6303
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006304 </tr>
6305 <tr class="entries_header">
6306 <th class="th_details" colspan="5">Details</th>
6307 </tr>
6308 <tr class="entry_cont">
6309 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006310 <p>This is used for sizing the gralloc buffers for
6311JPEG</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006312 </td>
6313 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006314
6315
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006316 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6317 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006318
6319
6320
6321 <!-- end of kind -->
6322 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006323 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006324
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006325 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006326 <tr>
6327 <th class="th_name">Property Name</th>
6328 <th class="th_type">Type</th>
6329 <th class="th_description">Description</th>
6330 <th class="th_units">Units</th>
6331 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006332 <th class="th_tags">Tags</th>
6333 </tr>
6334 </thead>
6335
6336 <tbody>
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347 <tr class="entry" id="dynamic_android.jpeg.gpsCoordinates">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006348 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006349 android.<wbr/>jpeg.<wbr/>gps<wbr/>Coordinates
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006350 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006351 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006352 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006353 <span class="entry_type_container">x</span>
6354
6355 <span class="entry_type_array">
6356 3
6357 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006358 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08006359 <div class="entry_type_notes">latitude,<wbr/> longitude,<wbr/> altitude.<wbr/> First two in degrees,<wbr/> the third in meters</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006360
6361
6362 </td> <!-- entry_type -->
6363
6364 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006365 <p>GPS coordinates to include in output JPEG
6366EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006367 </td>
6368
6369 <td class="entry_units">
6370 </td>
6371
6372 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006373 <p>(-180 - 180],<wbr/> [-90,<wbr/>90],<wbr/> [-inf,<wbr/> inf]</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006374 </td>
6375
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006376 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006377 <ul class="entry_tags">
6378 <li><a href="#tag_BC">BC</a></li>
6379 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006380 </td>
6381
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006382 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006383
6384
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006385 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6386 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006387
6388
6389 <tr class="entry" id="dynamic_android.jpeg.gpsProcessingMethod">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006390 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006391 android.<wbr/>jpeg.<wbr/>gps<wbr/>Processing<wbr/>Method
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006392 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006393 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006394 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006395
Igor Murashkinb8dc8812013-07-17 16:29:34 -07006396 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006397
6398
6399 </td> <!-- entry_type -->
6400
6401 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006402 <p>32 characters describing GPS algorithm to
6403include in EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006404 </td>
6405
6406 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006407 UTF-8 null-terminated string
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006408 </td>
6409
6410 <td class="entry_range">
6411 </td>
6412
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006413 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006414 <ul class="entry_tags">
6415 <li><a href="#tag_BC">BC</a></li>
6416 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006417 </td>
6418
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006419 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006420
6421
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006422 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6423 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006424
6425
6426 <tr class="entry" id="dynamic_android.jpeg.gpsTimestamp">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006427 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006428 android.<wbr/>jpeg.<wbr/>gps<wbr/>Timestamp
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006429 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006430 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006431 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006432
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006433 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006434
6435
6436 </td> <!-- entry_type -->
6437
6438 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006439 <p>Time GPS fix was made to include in
6440EXIF</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006441 </td>
6442
6443 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006444 UTC in seconds since January 1,<wbr/> 1970
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006445 </td>
6446
6447 <td class="entry_range">
6448 </td>
6449
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006450 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006451 <ul class="entry_tags">
6452 <li><a href="#tag_BC">BC</a></li>
6453 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006454 </td>
6455
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006456 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006457
6458
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006459 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6460 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006461
6462
6463 <tr class="entry" id="dynamic_android.jpeg.orientation">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006464 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006465 android.<wbr/>jpeg.<wbr/>orientation
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006466 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006467 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006468 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006469
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006470 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006471
6472
6473 </td> <!-- entry_type -->
6474
6475 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006476 <p>Orientation of JPEG image to
6477write</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006478 </td>
6479
6480 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006481 Degrees in multiples of 90
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006482 </td>
6483
6484 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006485 <p>0,<wbr/> 90,<wbr/> 180,<wbr/> 270</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006486 </td>
6487
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006488 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006489 <ul class="entry_tags">
6490 <li><a href="#tag_BC">BC</a></li>
6491 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006492 </td>
6493
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006494 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006495
6496
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006497 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6498 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006499
6500
6501 <tr class="entry" id="dynamic_android.jpeg.quality">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006502 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006503 android.<wbr/>jpeg.<wbr/>quality
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006504 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006505 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006506 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006507
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006508 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006509
6510
6511 </td> <!-- entry_type -->
6512
6513 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006514 <p>Compression quality of the final JPEG
6515image</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006516 </td>
6517
6518 <td class="entry_units">
6519 </td>
6520
6521 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006522 <p>1-100; larger is higher quality</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006523 </td>
6524
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006525 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006526 <ul class="entry_tags">
6527 <li><a href="#tag_BC">BC</a></li>
6528 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006529 </td>
6530
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006531 </tr>
6532 <tr class="entries_header">
6533 <th class="th_details" colspan="5">Details</th>
6534 </tr>
6535 <tr class="entry_cont">
6536 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006537 <p>85-95 is typical usage range</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006538 </td>
6539 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006540
6541
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006542 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6543 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006544
6545
6546 <tr class="entry" id="dynamic_android.jpeg.size">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006547 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006548 android.<wbr/>jpeg.<wbr/>size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006549 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006550 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006551 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006552
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006553 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006554
6555
6556 </td> <!-- entry_type -->
6557
6558 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006559 <p>The size of the compressed JPEG image,<wbr/> in
6560bytes</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006561 </td>
6562
6563 <td class="entry_units">
6564 </td>
6565
6566 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08006567 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006568 </td>
6569
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006570 <td class="entry_tags">
6571 </td>
6572
6573 </tr>
6574 <tr class="entries_header">
6575 <th class="th_details" colspan="5">Details</th>
6576 </tr>
6577 <tr class="entry_cont">
6578 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006579 <p>If no JPEG output is produced for the request,<wbr/>
6580this must be 0.<wbr/></p>
6581<p>Otherwise,<wbr/> this describes the real size of the compressed
6582JPEG image placed in the output stream.<wbr/> More specifically,<wbr/>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006583if <a href="#static_android.jpeg.maxSize">android.<wbr/>jpeg.<wbr/>max<wbr/>Size</a> = 1000000,<wbr/> and a specific capture
6584has <a href="#dynamic_android.jpeg.size">android.<wbr/>jpeg.<wbr/>size</a> = 500000,<wbr/> then the output buffer from
Igor Murashkin0b080452013-12-27 15:30:25 -08006585the JPEG stream will be 1000000 bytes,<wbr/> of which the first
6586500000 make up the real data.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006587 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006588 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006589
6590
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006591 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6592 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006593
6594
6595 <tr class="entry" id="dynamic_android.jpeg.thumbnailQuality">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006596 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08006597 android.<wbr/>jpeg.<wbr/>thumbnail<wbr/>Quality
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006598 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006599 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006600 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006601
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006602 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006603
6604
6605 </td> <!-- entry_type -->
6606
6607 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006608 <p>Compression quality of JPEG
6609thumbnail</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006610 </td>
6611
6612 <td class="entry_units">
6613 </td>
6614
6615 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006616 <p>1-100; larger is higher quality</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006617 </td>
6618
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006619 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006620 <ul class="entry_tags">
6621 <li><a href="#tag_BC">BC</a></li>
6622 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006623 </td>
6624
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006625 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006626
6627
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006628 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6629 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006630
6631
6632 <tr class="entry" id="dynamic_android.jpeg.thumbnailSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006633 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006634 android.<wbr/>jpeg.<wbr/>thumbnail<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006635 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006636 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006637 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006638 <span class="entry_type_container">x</span>
6639
6640 <span class="entry_type_array">
6641 2
6642 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07006643 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006644
6645
6646 </td> <!-- entry_type -->
6647
6648 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006649 <p>Resolution of embedded JPEG thumbnail</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006650 </td>
6651
6652 <td class="entry_units">
6653 </td>
6654
6655 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006656 <p>Size must be one of the size from <a href="#static_android.jpeg.availableThumbnailSizes">android.<wbr/>jpeg.<wbr/>available<wbr/>Thumbnail<wbr/>Sizes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006657 </td>
6658
6659 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006660 <ul class="entry_tags">
6661 <li><a href="#tag_BC">BC</a></li>
6662 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006663 </td>
6664
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006665 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006666 <tr class="entries_header">
6667 <th class="th_details" colspan="5">Details</th>
6668 </tr>
6669 <tr class="entry_cont">
6670 <td class="entry_details" colspan="5">
Zhijun Hef90eeaf2014-01-16 12:13:35 -08006671 <p>When set to (0,<wbr/> 0) value,<wbr/> the JPEG EXIF will not contain thumbnail,<wbr/>
6672but the captured JPEG will still be a valid image.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -08006673<p>When a jpeg image capture is issued,<wbr/> the thumbnail size selected should have
6674the same aspect ratio as the jpeg image.<wbr/></p>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006675 </td>
6676 </tr>
6677
6678
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006679 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6680 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006681
6682
6683
6684 <!-- end of kind -->
6685 </tbody>
6686
6687 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006688 <tr><td colspan="6" id="section_lens" class="section">lens</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006689
6690
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006691 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006692
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006693 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006694 <tr>
6695 <th class="th_name">Property Name</th>
6696 <th class="th_type">Type</th>
6697 <th class="th_description">Description</th>
6698 <th class="th_units">Units</th>
6699 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006700 <th class="th_tags">Tags</th>
6701 </tr>
6702 </thead>
6703
6704 <tbody>
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715 <tr class="entry" id="controls_android.lens.aperture">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006716 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006717 android.<wbr/>lens.<wbr/>aperture
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006718 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006719 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006720 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006721
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006722 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006723
6724
6725 </td> <!-- entry_type -->
6726
6727 <td class="entry_description">
Zhijun He1b58d382014-01-10 10:22:53 -08006728 <p>The ratio of lens focal length to the effective
6729aperture diameter.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006730 </td>
6731
6732 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006733 f-number (f/<wbr/>NNN)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006734 </td>
6735
6736 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006737 <p><a href="#static_android.lens.info.availableApertures">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Apertures</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006738 </td>
6739
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006740 <td class="entry_tags">
6741 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006742 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006743 </ul>
6744 </td>
6745
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006746 </tr>
6747 <tr class="entries_header">
6748 <th class="th_details" colspan="5">Details</th>
6749 </tr>
6750 <tr class="entry_cont">
6751 <td class="entry_details" colspan="5">
Zhijun He1b58d382014-01-10 10:22:53 -08006752 <p>This will only be supported on the camera devices that
6753have variable aperture lens.<wbr/> The aperture value can only be
6754one of the values listed in <a href="#static_android.lens.info.availableApertures">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Apertures</a>.<wbr/></p>
6755<p>When this is supported and <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> is OFF,<wbr/>
6756this can be set along with <a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
6757<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and android.<wbr/>sensor.<wbr/>frame<wbr/>Duration
6758to achieve manual exposure control.<wbr/></p>
6759<p>The requested aperture value may take several frames to reach the
6760requested value; the camera device will report the current (intermediate)
6761aperture size in capture result metadata while the aperture is changing.<wbr/></p>
6762<p>When this is supported and <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> is one of
6763the ON modes,<wbr/> this will be overridden by the camera device
6764auto-exposure algorithm,<wbr/> the overridden values are then provided
6765back to the user in the corresponding result.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006766 </td>
6767 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006768
6769
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006770 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6771 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006772
6773
6774 <tr class="entry" id="controls_android.lens.filterDensity">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006775 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006776 android.<wbr/>lens.<wbr/>filter<wbr/>Density
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006777 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006778 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006779 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006780
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006781 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006782
6783
6784 </td> <!-- entry_type -->
6785
6786 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006787 <p>State of lens neutral density
6788filter(s)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006789 </td>
6790
6791 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006792 number of stops of filtering
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006793 </td>
6794
6795 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006796 <p><a href="#static_android.lens.info.availableFilterDensities">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Filter<wbr/>Densities</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006797 </td>
6798
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006799 <td class="entry_tags">
6800 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006801 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006802 </ul>
6803 </td>
6804
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006805 </tr>
6806 <tr class="entries_header">
6807 <th class="th_details" colspan="5">Details</th>
6808 </tr>
6809 <tr class="entry_cont">
6810 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006811 <p>Will not be supported on most devices.<wbr/> Can only
6812pick from supported list</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006813 </td>
6814 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006815
6816
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006817 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6818 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006819
6820
6821 <tr class="entry" id="controls_android.lens.focalLength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006822 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006823 android.<wbr/>lens.<wbr/>focal<wbr/>Length
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006824 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006825 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006826 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006827
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006828 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006829
6830
6831 </td> <!-- entry_type -->
6832
6833 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006834 <p>Lens optical zoom setting</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006835 </td>
6836
6837 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006838 focal length in mm
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006839 </td>
6840
6841 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08006842 <p>&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006843 </td>
6844
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006845 <td class="entry_tags">
6846 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006847 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006848 </ul>
6849 </td>
6850
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006851 </tr>
6852 <tr class="entries_header">
6853 <th class="th_details" colspan="5">Details</th>
6854 </tr>
6855 <tr class="entry_cont">
6856 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006857 <p>Will not be supported on most devices.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006858 </td>
6859 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006860
6861
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006862 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6863 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006864
6865
6866 <tr class="entry" id="controls_android.lens.focusDistance">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006867 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006868 android.<wbr/>lens.<wbr/>focus<wbr/>Distance
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006869 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006870 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006871 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006872
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006873 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006874
6875
6876 </td> <!-- entry_type -->
6877
6878 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006879 <p>Distance to plane of sharpest focus,<wbr/>
6880measured from frontmost surface of the lens</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006881 </td>
6882
6883 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08006884 diopters (1/<wbr/>m)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006885 </td>
6886
6887 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08006888 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006889 </td>
6890
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006891 <td class="entry_tags">
6892 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006893 <li><a href="#tag_BC">BC</a></li>
6894 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006895 </ul>
6896 </td>
6897
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006898 </tr>
6899 <tr class="entries_header">
6900 <th class="th_details" colspan="5">Details</th>
6901 </tr>
6902 <tr class="entry_cont">
6903 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006904 <p>0 = infinity focus.<wbr/> Used value should be clamped
6905to (0,<wbr/>minimum focus distance)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006906 </td>
6907 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006908
6909
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006910 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6911 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006912
6913
6914 <tr class="entry" id="controls_android.lens.opticalStabilizationMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006915 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006916 android.<wbr/>lens.<wbr/>optical<wbr/>Stabilization<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006917 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006918 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006919 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006920
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006921 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006922
6923 <ul class="entry_type_enum">
6924 <li>
6925 <span class="entry_type_enum_name">OFF</span>
6926 </li>
6927 <li>
6928 <span class="entry_type_enum_name">ON</span>
6929 <span class="entry_type_enum_optional">optional</span>
6930 </li>
6931 </ul>
6932
6933 </td> <!-- entry_type -->
6934
6935 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08006936 <p>Whether optical image stabilization is
6937enabled.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006938 </td>
6939
6940 <td class="entry_units">
6941 </td>
6942
6943 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08006944 <p>android.<wbr/>lens.<wbr/>available<wbr/>Optical<wbr/>Stabilization</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006945 </td>
6946
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006947 <td class="entry_tags">
6948 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006949 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006950 </ul>
6951 </td>
6952
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006953 </tr>
6954 <tr class="entries_header">
6955 <th class="th_details" colspan="5">Details</th>
6956 </tr>
6957 <tr class="entry_cont">
6958 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08006959 <p>Will not be supported on most devices.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006960 </td>
6961 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006962
6963
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006964 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
6965 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006966
6967
6968
6969 <!-- end of kind -->
6970 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08006971 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006972
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006973 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006974 <tr>
6975 <th class="th_name">Property Name</th>
6976 <th class="th_type">Type</th>
6977 <th class="th_description">Description</th>
6978 <th class="th_units">Units</th>
6979 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006980 <th class="th_tags">Tags</th>
6981 </tr>
6982 </thead>
6983
6984 <tbody>
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997 <tr class="entry" id="static_android.lens.info.availableApertures">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08006998 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08006999 android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Apertures
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007000 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007001 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007002 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007003 <span class="entry_type_container">x</span>
7004
7005 <span class="entry_type_array">
7006 n
7007 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007008 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007009
7010
7011 </td> <!-- entry_type -->
7012
7013 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007014 <p>List of supported aperture
Zhijun He1b58d382014-01-10 10:22:53 -08007015values.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007016 </td>
7017
7018 <td class="entry_units">
7019 </td>
7020
7021 <td class="entry_range">
Zhijun He1b58d382014-01-10 10:22:53 -08007022 <p>one entry required,<wbr/> &amp;&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007023 </td>
7024
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007025 <td class="entry_tags">
7026 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007027 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007028 </ul>
7029 </td>
7030
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007031 </tr>
7032 <tr class="entries_header">
7033 <th class="th_details" colspan="5">Details</th>
7034 </tr>
7035 <tr class="entry_cont">
7036 <td class="entry_details" colspan="5">
Zhijun He1b58d382014-01-10 10:22:53 -08007037 <p>If the camera device doesn't support variable apertures,<wbr/>
7038listed value will be the fixed aperture.<wbr/></p>
7039<p>If the camera device supports variable apertures,<wbr/> the aperture value
7040in this list will be sorted in ascending order.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007041 </td>
7042 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007043
7044
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007045 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7046 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007047
7048
7049 <tr class="entry" id="static_android.lens.info.availableFilterDensities">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007050 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007051 android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Filter<wbr/>Densities
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007052 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007053 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007054 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007055 <span class="entry_type_container">x</span>
7056
7057 <span class="entry_type_array">
7058 n
7059 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007060 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007061
7062
7063 </td> <!-- entry_type -->
7064
7065 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007066 <p>List of supported ND filter
7067values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007068 </td>
7069
7070 <td class="entry_units">
7071 </td>
7072
7073 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007074 <p>one entry required,<wbr/> &gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007075 </td>
7076
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007077 <td class="entry_tags">
7078 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007079 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007080 </ul>
7081 </td>
7082
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007083 </tr>
7084 <tr class="entries_header">
7085 <th class="th_details" colspan="5">Details</th>
7086 </tr>
7087 <tr class="entry_cont">
7088 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007089 <p>If not available,<wbr/> only setting is 0.<wbr/> Otherwise,<wbr/>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007090lists the available exposure index values for dimming
7091(2 would mean the filter is set to reduce incoming
Igor Murashkin0b080452013-12-27 15:30:25 -08007092light by two stops)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007093 </td>
7094 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007095
7096
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007097 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7098 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007099
7100
7101 <tr class="entry" id="static_android.lens.info.availableFocalLengths">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007102 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007103 android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Focal<wbr/>Lengths
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007104 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007105 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007106 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007107 <span class="entry_type_container">x</span>
7108
7109 <span class="entry_type_array">
7110 n
7111 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007112 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007113 <div class="entry_type_notes">the list of available focal lengths</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007114
7115
7116 </td> <!-- entry_type -->
7117
7118 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007119 <p>If fitted with optical zoom,<wbr/> what focal
7120lengths are available.<wbr/> If not,<wbr/> the static focal
7121length</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007122 </td>
7123
7124 <td class="entry_units">
7125 </td>
7126
7127 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007128 <p>&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007129 </td>
7130
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007131 <td class="entry_tags">
7132 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007133 <li><a href="#tag_BC">BC</a></li>
7134 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007135 </ul>
7136 </td>
7137
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007138 </tr>
7139 <tr class="entries_header">
7140 <th class="th_details" colspan="5">Details</th>
7141 </tr>
7142 <tr class="entry_cont">
7143 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007144 <p>If optical zoom not supported,<wbr/> only one value
7145should be reported</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007146 </td>
7147 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007148
7149
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007150 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7151 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007152
7153
7154 <tr class="entry" id="static_android.lens.info.availableOpticalStabilization">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007155 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08007156 android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Optical<wbr/>Stabilization
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007157 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007158 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007159 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007160 <span class="entry_type_container">x</span>
7161
7162 <span class="entry_type_array">
7163 n
7164 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007165 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007166 <div class="entry_type_notes">list of enums</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007167
7168
7169 </td> <!-- entry_type -->
7170
7171 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007172 <p>List of supported optical image
7173stabilization modes</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007174 </td>
7175
7176 <td class="entry_units">
7177 </td>
7178
7179 <td class="entry_range">
7180 </td>
7181
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007182 <td class="entry_tags">
7183 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007184 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007185 </ul>
7186 </td>
7187
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007188 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007189
7190
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007191 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7192 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007193
7194
7195 <tr class="entry" id="static_android.lens.info.geometricCorrectionMap">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007196 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007197 android.<wbr/>lens.<wbr/>info.<wbr/>geometric<wbr/>Correction<wbr/>Map
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007198 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007199 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007200 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007201 <span class="entry_type_container">x</span>
7202
7203 <span class="entry_type_array">
7204 2 x 3 x n x m
7205 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007206 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007207 <div class="entry_type_notes">2D array of destination coordinate pairs for uniform grid points in source image,<wbr/> per color channel.<wbr/> Size in the range of 2x3x40x30</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007208
7209
7210 </td> <!-- entry_type -->
7211
7212 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007213 <p>A low-resolution map for correction of
7214geometric distortions and chromatic aberrations,<wbr/> per
7215color channel</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007216 </td>
7217
7218 <td class="entry_units">
7219 </td>
7220
7221 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007222 <p>N,<wbr/> M &gt;= 2</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007223 </td>
7224
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007225 <td class="entry_tags">
7226 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007227 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007228 </ul>
7229 </td>
7230
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007231 </tr>
7232 <tr class="entries_header">
7233 <th class="th_details" colspan="5">Details</th>
7234 </tr>
7235 <tr class="entry_cont">
7236 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007237 <p>[DNG wants a function instead].<wbr/> What's easiest
7238for implementers? With an array size (M,<wbr/> N),<wbr/> entry (i,<wbr/>
7239j) provides the destination for pixel (i/<wbr/>(M-1) * width,<wbr/>
7240j/<wbr/>(N-1) * height).<wbr/> Data is row-major,<wbr/> with each array
7241entry being ( (X,<wbr/> Y)_<wbr/>r,<wbr/> (X,<wbr/> Y)_<wbr/>g,<wbr/> (X,<wbr/> Y)_<wbr/>b ) )</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007242 </td>
7243 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007244
7245
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007246 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7247 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007248
7249
7250 <tr class="entry" id="static_android.lens.info.geometricCorrectionMapSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007251 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08007252 android.<wbr/>lens.<wbr/>info.<wbr/>geometric<wbr/>Correction<wbr/>Map<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007253 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007254 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007255 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007256 <span class="entry_type_container">x</span>
7257
7258 <span class="entry_type_array">
7259 2
7260 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007261 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007262 <div class="entry_type_notes">width and height of geometric correction map</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007263
7264
7265 </td> <!-- entry_type -->
7266
7267 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007268 <p>Dimensions of geometric correction
7269map</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007270 </td>
7271
7272 <td class="entry_units">
7273 </td>
7274
7275 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007276 <p>Both values &gt;= 2</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007277 </td>
7278
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007279 <td class="entry_tags">
7280 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007281 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007282 </ul>
7283 </td>
7284
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007285 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007286
7287
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007288 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7289 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007290
7291
7292 <tr class="entry" id="static_android.lens.info.hyperfocalDistance">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007293 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007294 android.<wbr/>lens.<wbr/>info.<wbr/>hyperfocal<wbr/>Distance
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007295 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007296 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007297 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007298
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007299 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007300
7301
7302 </td> <!-- entry_type -->
7303
7304 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007305 <p>Hyperfocal distance for this lens; set to
73060 if fixed focus</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007307 </td>
7308
7309 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007310 diopters
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007311 </td>
7312
7313 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007314 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007315 </td>
7316
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007317 <td class="entry_tags">
7318 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007319 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007320 </ul>
7321 </td>
7322
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007323 </tr>
7324 <tr class="entries_header">
7325 <th class="th_details" colspan="5">Details</th>
7326 </tr>
7327 <tr class="entry_cont">
7328 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007329 <p>The hyperfocal distance is used for the old
7330API's 'fixed' setting</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007331 </td>
7332 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007333
7334
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007335 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7336 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007337
7338
7339 <tr class="entry" id="static_android.lens.info.minimumFocusDistance">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007340 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007341 android.<wbr/>lens.<wbr/>info.<wbr/>minimum<wbr/>Focus<wbr/>Distance
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007342 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007343 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007344 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007345
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007346 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007347
7348
7349 </td> <!-- entry_type -->
7350
7351 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007352 <p>Shortest distance from frontmost surface
7353of the lens that can be focused correctly</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007354 </td>
7355
7356 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007357 diopters
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007358 </td>
7359
7360 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007361 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007362 </td>
7363
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007364 <td class="entry_tags">
7365 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007366 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007367 </ul>
7368 </td>
7369
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007370 </tr>
7371 <tr class="entries_header">
7372 <th class="th_details" colspan="5">Details</th>
7373 </tr>
7374 <tr class="entry_cont">
7375 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007376 <p>If the lens is fixed-focus,<wbr/> this should be
73770</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007378 </td>
7379 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007380
7381
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007382 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7383 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007384
7385
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007386 <tr class="entry" id="static_android.lens.info.shadingMapSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007387 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007388 android.<wbr/>lens.<wbr/>info.<wbr/>shading<wbr/>Map<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007389 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007390 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007391 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007392 <span class="entry_type_container">x</span>
7393
7394 <span class="entry_type_array">
7395 2
7396 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007397 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007398 <div class="entry_type_notes">width and height of lens shading map provided by the HAL.<wbr/> (N x M)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007399
7400
7401 </td> <!-- entry_type -->
7402
7403 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007404 <p>Dimensions of lens shading map.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007405 </td>
7406
7407 <td class="entry_units">
7408 </td>
7409
7410 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007411 <p>Both values &gt;= 1</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007412 </td>
7413
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007414 <td class="entry_tags">
7415 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007416 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007417 </ul>
7418 </td>
7419
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007420 </tr>
7421 <tr class="entries_header">
7422 <th class="th_details" colspan="5">Details</th>
7423 </tr>
7424 <tr class="entry_cont">
7425 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007426 <p>The map should be on the order of 30-40 rows and columns,<wbr/> and
7427must be smaller than 64x64.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007428 </td>
7429 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007430
7431
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007432 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7433 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007434
7435
7436
7437
7438
7439 <tr class="entry" id="static_android.lens.facing">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007440 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08007441 android.<wbr/>lens.<wbr/>facing
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007442 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007443 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007444 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007445
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007446 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007447
7448 <ul class="entry_type_enum">
7449 <li>
7450 <span class="entry_type_enum_name">FRONT</span>
7451 </li>
7452 <li>
7453 <span class="entry_type_enum_name">BACK</span>
7454 </li>
7455 </ul>
7456
7457 </td> <!-- entry_type -->
7458
7459 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007460 <p>Direction the camera faces relative to
7461device screen</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007462 </td>
7463
7464 <td class="entry_units">
7465 </td>
7466
7467 <td class="entry_range">
7468 </td>
7469
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007470 <td class="entry_tags">
7471 </td>
7472
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007473 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007474
7475
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007476 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7477 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007478
7479
7480 <tr class="entry" id="static_android.lens.opticalAxisAngle">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007481 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007482 android.<wbr/>lens.<wbr/>optical<wbr/>Axis<wbr/>Angle
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007483 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007484 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007485 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007486 <span class="entry_type_container">x</span>
7487
7488 <span class="entry_type_array">
7489 2
7490 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007491 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007492 <div class="entry_type_notes">degrees.<wbr/> First defines the angle of separation between the perpendicular to the screen and the camera optical axis.<wbr/> The second then defines the clockwise rotation of the optical axis from native device up.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007493
7494
7495 </td> <!-- entry_type -->
7496
7497 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007498 <p>Relative angle of camera optical axis to the
7499perpendicular axis from the display</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007500 </td>
7501
7502 <td class="entry_units">
7503 </td>
7504
7505 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007506 <p>[0-90) for first angle,<wbr/> [0-360) for second</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007507 </td>
7508
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007509 <td class="entry_tags">
7510 <ul class="entry_tags">
7511 <li><a href="#tag_ADV">ADV</a></li>
7512 </ul>
7513 </td>
7514
7515 </tr>
7516 <tr class="entries_header">
7517 <th class="th_details" colspan="5">Details</th>
7518 </tr>
7519 <tr class="entry_cont">
7520 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007521 <p>Examples:</p>
7522<p>(0,<wbr/>0) means that the camera optical axis
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007523is perpendicular to the display surface;</p>
Igor Murashkin0b080452013-12-27 15:30:25 -08007524<p>(45,<wbr/>0) means that the camera points 45 degrees up when
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007525device is held upright;</p>
Igor Murashkin0b080452013-12-27 15:30:25 -08007526<p>(45,<wbr/>90) means the camera points 45 degrees to the right when
7527the device is held upright.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08007528<p>Use FACING field to determine perpendicular outgoing
Igor Murashkin0b080452013-12-27 15:30:25 -08007529direction</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007530 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007531 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007532
7533
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007534 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7535 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007536
7537
7538 <tr class="entry" id="static_android.lens.position">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007539 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08007540 android.<wbr/>lens.<wbr/>position
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007541 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007542 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007543 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007544 <span class="entry_type_container">x</span>
7545
7546 <span class="entry_type_array">
7547 3, location in mm, in the sensor coordinate
7548 system
7549 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007550 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007551
7552
7553 </td> <!-- entry_type -->
7554
7555 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007556 <p>Coordinates of camera optical axis on
7557device</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007558 </td>
7559
7560 <td class="entry_units">
7561 </td>
7562
7563 <td class="entry_range">
7564 </td>
7565
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007566 <td class="entry_tags">
7567 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007568 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007569 </ul>
7570 </td>
7571
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007572 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007573
7574
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007575 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7576 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007577
7578
7579
7580 <!-- end of kind -->
7581 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007582 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007583
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007584 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007585 <tr>
7586 <th class="th_name">Property Name</th>
7587 <th class="th_type">Type</th>
7588 <th class="th_description">Description</th>
7589 <th class="th_units">Units</th>
7590 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007591 <th class="th_tags">Tags</th>
7592 </tr>
7593 </thead>
7594
7595 <tbody>
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606 <tr class="entry" id="dynamic_android.lens.aperture">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007607 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007608 android.<wbr/>lens.<wbr/>aperture
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007609 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007610 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007611 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007612
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007613 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007614
7615
7616 </td> <!-- entry_type -->
7617
7618 <td class="entry_description">
Zhijun He1b58d382014-01-10 10:22:53 -08007619 <p>The ratio of lens focal length to the effective
7620aperture diameter.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007621 </td>
7622
7623 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007624 f-number (f/<wbr/>NNN)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007625 </td>
7626
7627 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007628 <p><a href="#static_android.lens.info.availableApertures">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Apertures</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007629 </td>
7630
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007631 <td class="entry_tags">
7632 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007633 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007634 </ul>
7635 </td>
7636
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007637 </tr>
7638 <tr class="entries_header">
7639 <th class="th_details" colspan="5">Details</th>
7640 </tr>
7641 <tr class="entry_cont">
7642 <td class="entry_details" colspan="5">
Zhijun He1b58d382014-01-10 10:22:53 -08007643 <p>This will only be supported on the camera devices that
7644have variable aperture lens.<wbr/> The aperture value can only be
7645one of the values listed in <a href="#static_android.lens.info.availableApertures">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Apertures</a>.<wbr/></p>
7646<p>When this is supported and <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> is OFF,<wbr/>
7647this can be set along with <a href="#controls_android.sensor.exposureTime">android.<wbr/>sensor.<wbr/>exposure<wbr/>Time</a>,<wbr/>
7648<a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a>,<wbr/> and android.<wbr/>sensor.<wbr/>frame<wbr/>Duration
7649to achieve manual exposure control.<wbr/></p>
7650<p>The requested aperture value may take several frames to reach the
7651requested value; the camera device will report the current (intermediate)
7652aperture size in capture result metadata while the aperture is changing.<wbr/></p>
7653<p>When this is supported and <a href="#controls_android.control.aeMode">android.<wbr/>control.<wbr/>ae<wbr/>Mode</a> is one of
7654the ON modes,<wbr/> this will be overridden by the camera device
7655auto-exposure algorithm,<wbr/> the overridden values are then provided
7656back to the user in the corresponding result.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007657 </td>
7658 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007659
7660
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007661 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7662 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007663
7664
7665 <tr class="entry" id="dynamic_android.lens.filterDensity">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007666 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007667 android.<wbr/>lens.<wbr/>filter<wbr/>Density
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007668 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007669 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007670 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007671
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007672 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007673
7674
7675 </td> <!-- entry_type -->
7676
7677 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007678 <p>State of lens neutral density
7679filter(s)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007680 </td>
7681
7682 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007683 number of stops of filtering
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007684 </td>
7685
7686 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007687 <p><a href="#static_android.lens.info.availableFilterDensities">android.<wbr/>lens.<wbr/>info.<wbr/>available<wbr/>Filter<wbr/>Densities</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007688 </td>
7689
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007690 <td class="entry_tags">
7691 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007692 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007693 </ul>
7694 </td>
7695
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007696 </tr>
7697 <tr class="entries_header">
7698 <th class="th_details" colspan="5">Details</th>
7699 </tr>
7700 <tr class="entry_cont">
7701 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007702 <p>Will not be supported on most devices.<wbr/> Can only
7703pick from supported list</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007704 </td>
7705 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007706
7707
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007708 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7709 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007710
7711
7712 <tr class="entry" id="dynamic_android.lens.focalLength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007713 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007714 android.<wbr/>lens.<wbr/>focal<wbr/>Length
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007715 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007716 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007717 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007718
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007719 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007720
7721
7722 </td> <!-- entry_type -->
7723
7724 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007725 <p>Lens optical zoom setting</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007726 </td>
7727
7728 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007729 focal length in mm
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007730 </td>
7731
7732 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007733 <p>&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007734 </td>
7735
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007736 <td class="entry_tags">
7737 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007738 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007739 </ul>
7740 </td>
7741
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007742 </tr>
7743 <tr class="entries_header">
7744 <th class="th_details" colspan="5">Details</th>
7745 </tr>
7746 <tr class="entry_cont">
7747 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007748 <p>Will not be supported on most devices.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007749 </td>
7750 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007751
7752
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007753 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7754 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007755
7756
7757 <tr class="entry" id="dynamic_android.lens.focusDistance">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007758 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007759 android.<wbr/>lens.<wbr/>focus<wbr/>Distance
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007760 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007761 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007762 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007763
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007764 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007765
7766
7767 </td> <!-- entry_type -->
7768
7769 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007770 <p>Distance to plane of sharpest focus,<wbr/>
7771measured from frontmost surface of the lens</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007772 </td>
7773
7774 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007775 diopters (1/<wbr/>m)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007776 </td>
7777
7778 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007779 <p>&gt;= 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007780 </td>
7781
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007782 <td class="entry_tags">
7783 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007784 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007785 </ul>
7786 </td>
7787
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007788 </tr>
7789 <tr class="entries_header">
7790 <th class="th_details" colspan="5">Details</th>
7791 </tr>
7792 <tr class="entry_cont">
7793 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007794 <p>Should be zero for fixed-focus cameras</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007795 </td>
7796 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007797
7798
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007799 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7800 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007801
7802
7803 <tr class="entry" id="dynamic_android.lens.focusRange">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007804 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007805 android.<wbr/>lens.<wbr/>focus<wbr/>Range
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007806 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007807 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007808 <span class="entry_type_name">float</span>
Zhijun He50451ad2013-09-26 10:27:47 -07007809 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007810
Zhijun He50451ad2013-09-26 10:27:47 -07007811 <span class="entry_type_array">
7812 2
7813 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007814 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08007815 <div class="entry_type_notes">Range of scene distances that are in focus</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007816
7817
7818 </td> <!-- entry_type -->
7819
7820 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007821 <p>The range of scene distances that are in
7822sharp focus (depth of field)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007823 </td>
7824
7825 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08007826 pair of focus distances in diopters: (near,<wbr/>
7827 far)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007828 </td>
7829
7830 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08007831 <p>&gt;=0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007832 </td>
7833
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007834 <td class="entry_tags">
7835 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007836 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007837 </ul>
7838 </td>
7839
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007840 </tr>
7841 <tr class="entries_header">
7842 <th class="th_details" colspan="5">Details</th>
7843 </tr>
7844 <tr class="entry_cont">
7845 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007846 <p>If variable focus not supported,<wbr/> can still report
7847fixed depth of field range</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007848 </td>
7849 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007850
7851
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007852 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7853 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007854
7855
7856 <tr class="entry" id="dynamic_android.lens.opticalStabilizationMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007857 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007858 android.<wbr/>lens.<wbr/>optical<wbr/>Stabilization<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007859 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007860 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007861 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007862
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007863 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007864
7865 <ul class="entry_type_enum">
7866 <li>
7867 <span class="entry_type_enum_name">OFF</span>
7868 </li>
7869 <li>
7870 <span class="entry_type_enum_name">ON</span>
7871 <span class="entry_type_enum_optional">optional</span>
7872 </li>
7873 </ul>
7874
7875 </td> <!-- entry_type -->
7876
7877 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007878 <p>Whether optical image stabilization is
7879enabled.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007880 </td>
7881
7882 <td class="entry_units">
7883 </td>
7884
7885 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08007886 <p>android.<wbr/>lens.<wbr/>available<wbr/>Optical<wbr/>Stabilization</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007887 </td>
7888
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007889 <td class="entry_tags">
7890 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007891 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007892 </ul>
7893 </td>
7894
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007895 </tr>
7896 <tr class="entries_header">
7897 <th class="th_details" colspan="5">Details</th>
7898 </tr>
7899 <tr class="entry_cont">
7900 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08007901 <p>Will not be supported on most devices.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007902 </td>
7903 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007904
7905
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007906 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7907 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007908
7909
7910 <tr class="entry" id="dynamic_android.lens.state">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007911 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08007912 android.<wbr/>lens.<wbr/>state
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007913 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007914 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007915 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007916
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007917 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007918
7919 <ul class="entry_type_enum">
7920 <li>
7921 <span class="entry_type_enum_name">STATIONARY</span>
7922 </li>
Igor Murashkin0e323a12013-09-06 11:50:48 -07007923 <li>
7924 <span class="entry_type_enum_name">MOVING</span>
7925 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007926 </ul>
7927
7928 </td> <!-- entry_type -->
7929
7930 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08007931 <p>Current lens status</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007932 </td>
7933
7934 <td class="entry_units">
7935 </td>
7936
7937 <td class="entry_range">
7938 </td>
7939
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007940 <td class="entry_tags">
7941 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007942 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007943 </ul>
7944 </td>
7945
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007946 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007947
7948
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007949 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
7950 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007951
7952
7953
7954 <!-- end of kind -->
7955 </tbody>
7956
7957 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007958 <tr><td colspan="6" id="section_noiseReduction" class="section">noiseReduction</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007959
7960
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08007961 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007962
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007963 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007964 <tr>
7965 <th class="th_name">Property Name</th>
7966 <th class="th_type">Type</th>
7967 <th class="th_description">Description</th>
7968 <th class="th_units">Units</th>
7969 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007970 <th class="th_tags">Tags</th>
7971 </tr>
7972 </thead>
7973
7974 <tbody>
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985 <tr class="entry" id="controls_android.noiseReduction.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007986 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08007987 android.<wbr/>noise<wbr/>Reduction.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08007988 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007989 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007990 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007991
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007992 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007993
7994 <ul class="entry_type_enum">
7995 <li>
7996 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08007997 <span class="entry_type_enum_notes"><p>No noise reduction is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007998 </li>
7999 <li>
8000 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008001 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to sensor
8002output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008003 </li>
8004 <li>
8005 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008006 <span class="entry_type_enum_notes"><p>May slow down frame rate to provide highest
8007quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008008 </li>
8009 </ul>
8010
8011 </td> <!-- entry_type -->
8012
8013 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008014 <p>Mode of operation for the noise reduction
8015algorithm</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008016 </td>
8017
8018 <td class="entry_units">
8019 </td>
8020
8021 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008022 <p>android.<wbr/>noise<wbr/>Reduction.<wbr/>available<wbr/>Modes</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008023 </td>
8024
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008025 <td class="entry_tags">
8026 <ul class="entry_tags">
8027 <li><a href="#tag_V1">V1</a></li>
8028 </ul>
8029 </td>
8030
8031 </tr>
8032 <tr class="entries_header">
8033 <th class="th_details" colspan="5">Details</th>
8034 </tr>
8035 <tr class="entry_cont">
8036 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008037 <p>Noise filtering control.<wbr/> OFF means no noise reduction
8038will be applied by the HAL.<wbr/></p>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08008039<p>FAST/<wbr/>HIGH_<wbr/>QUALITY both mean camera device determined noise filtering
8040will be applied.<wbr/> HIGH_<wbr/>QUALITY mode indicates that the camera device
8041will use the highest-quality noise filtering algorithms,<wbr/>
8042even if it slows down capture rate.<wbr/> FAST means the camera device should not
Igor Murashkin0b080452013-12-27 15:30:25 -08008043slow down capture rate when applying noise filtering.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008044 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008045 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008046
8047
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008048 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8049 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008050
8051
8052 <tr class="entry" id="controls_android.noiseReduction.strength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008053 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008054 android.<wbr/>noise<wbr/>Reduction.<wbr/>strength
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008055 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008056 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008057 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008058
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008059 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008060
8061
8062 </td> <!-- entry_type -->
8063
8064 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008065 <p>Control the amount of noise reduction
8066applied to the images</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008067 </td>
8068
8069 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008070 1-10; 10 is max noise reduction
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008071 </td>
8072
8073 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008074 <p>1 - 10</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008075 </td>
8076
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008077 <td class="entry_tags">
8078 </td>
8079
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008080 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008081
8082
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008083 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8084 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008085
8086
8087
8088 <!-- end of kind -->
8089 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008090 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008091
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008092 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008093 <tr>
8094 <th class="th_name">Property Name</th>
8095 <th class="th_type">Type</th>
8096 <th class="th_description">Description</th>
8097 <th class="th_units">Units</th>
8098 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008099 <th class="th_tags">Tags</th>
8100 </tr>
8101 </thead>
8102
8103 <tbody>
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114 <tr class="entry" id="dynamic_android.noiseReduction.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008115 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008116 android.<wbr/>noise<wbr/>Reduction.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008117 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008118 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008119 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008120
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008121 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008122
8123 <ul class="entry_type_enum">
8124 <li>
8125 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008126 <span class="entry_type_enum_notes"><p>No noise reduction is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008127 </li>
8128 <li>
8129 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008130 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to sensor
8131output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008132 </li>
8133 <li>
8134 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008135 <span class="entry_type_enum_notes"><p>May slow down frame rate to provide highest
8136quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008137 </li>
8138 </ul>
8139
8140 </td> <!-- entry_type -->
8141
8142 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008143 <p>Mode of operation for the noise reduction
8144algorithm</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008145 </td>
8146
8147 <td class="entry_units">
8148 </td>
8149
8150 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008151 <p>android.<wbr/>noise<wbr/>Reduction.<wbr/>available<wbr/>Modes</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008152 </td>
8153
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008154 <td class="entry_tags">
8155 <ul class="entry_tags">
8156 <li><a href="#tag_V1">V1</a></li>
8157 </ul>
8158 </td>
8159
8160 </tr>
8161 <tr class="entries_header">
8162 <th class="th_details" colspan="5">Details</th>
8163 </tr>
8164 <tr class="entry_cont">
8165 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008166 <p>Noise filtering control.<wbr/> OFF means no noise reduction
8167will be applied by the HAL.<wbr/></p>
Zhijun Hef90eeaf2014-01-16 12:13:35 -08008168<p>FAST/<wbr/>HIGH_<wbr/>QUALITY both mean camera device determined noise filtering
8169will be applied.<wbr/> HIGH_<wbr/>QUALITY mode indicates that the camera device
8170will use the highest-quality noise filtering algorithms,<wbr/>
8171even if it slows down capture rate.<wbr/> FAST means the camera device should not
Igor Murashkin0b080452013-12-27 15:30:25 -08008172slow down capture rate when applying noise filtering.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008173 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008174 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008175
8176
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008177 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8178 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008179
8180
8181
8182 <!-- end of kind -->
8183 </tbody>
8184
8185 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008186 <tr><td colspan="6" id="section_quirks" class="section">quirks</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008187
8188
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008189 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008190
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008191 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008192 <tr>
8193 <th class="th_name">Property Name</th>
8194 <th class="th_type">Type</th>
8195 <th class="th_description">Description</th>
8196 <th class="th_units">Units</th>
8197 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008198 <th class="th_tags">Tags</th>
8199 </tr>
8200 </thead>
8201
8202 <tbody>
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213 <tr class="entry" id="static_android.quirks.meteringCropRegion">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008214 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008215 android.<wbr/>quirks.<wbr/>metering<wbr/>Crop<wbr/>Region
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008216 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008217 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008218 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008219
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008220 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008221
8222
8223 </td> <!-- entry_type -->
8224
8225 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008226 <p>If set to 1,<wbr/> the camera service does not
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008227scale 'normalized' coordinates with respect to the crop
Igor Murashkin0b080452013-12-27 15:30:25 -08008228region.<wbr/> This applies to metering input (a{e,<wbr/>f,<wbr/>wb}Region
8229and output (face rectangles).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008230 </td>
8231
8232 <td class="entry_units">
8233 </td>
8234
8235 <td class="entry_range">
8236 </td>
8237
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008238 <td class="entry_tags">
8239 </td>
8240
8241 </tr>
8242 <tr class="entries_header">
8243 <th class="th_details" colspan="5">Details</th>
8244 </tr>
8245 <tr class="entry_cont">
8246 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008247 <p>Normalized coordinates refer to those in the
8248(-1000,<wbr/>1000) range mentioned in the
8249android.<wbr/>hardware.<wbr/>Camera API.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008250<p>HAL implementations should instead always use and emit
Igor Murashkin0b080452013-12-27 15:30:25 -08008251sensor array-relative coordinates for all region data.<wbr/> Does
8252not need to be listed in static metadata.<wbr/> Support will be
8253removed in future versions of camera service.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008254 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008255 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008256
8257
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008258 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8259 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008260
8261
8262 <tr class="entry" id="static_android.quirks.triggerAfWithAuto">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008263 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008264 android.<wbr/>quirks.<wbr/>trigger<wbr/>Af<wbr/>With<wbr/>Auto
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008265 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008266 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008267 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008268
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008269 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008270
8271
8272 </td> <!-- entry_type -->
8273
8274 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008275 <p>If set to 1,<wbr/> then the camera service always
8276switches to FOCUS_<wbr/>MODE_<wbr/>AUTO before issuing a AF
8277trigger.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008278 </td>
8279
8280 <td class="entry_units">
8281 </td>
8282
8283 <td class="entry_range">
8284 </td>
8285
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008286 <td class="entry_tags">
8287 </td>
8288
8289 </tr>
8290 <tr class="entries_header">
8291 <th class="th_details" colspan="5">Details</th>
8292 </tr>
8293 <tr class="entry_cont">
8294 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008295 <p>HAL implementations should implement AF trigger
8296modes for AUTO,<wbr/> MACRO,<wbr/> CONTINUOUS_<wbr/>FOCUS,<wbr/> and
8297CONTINUOUS_<wbr/>PICTURE modes instead of using this flag.<wbr/> Does
8298not need to be listed in static metadata.<wbr/> Support will be
8299removed in future versions of camera service</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008300 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008301 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008302
8303
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008304 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8305 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008306
8307
8308 <tr class="entry" id="static_android.quirks.useZslFormat">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008309 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008310 android.<wbr/>quirks.<wbr/>use<wbr/>Zsl<wbr/>Format
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008311 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008312 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008313 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008314
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008315 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008316
8317
8318 </td> <!-- entry_type -->
8319
8320 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008321 <p>If set to 1,<wbr/> the camera service uses
8322CAMERA2_<wbr/>PIXEL_<wbr/>FORMAT_<wbr/>ZSL instead of
8323HAL_<wbr/>PIXEL_<wbr/>FORMAT_<wbr/>IMPLEMENTATION_<wbr/>DEFINED for the zero
8324shutter lag stream</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008325 </td>
8326
8327 <td class="entry_units">
8328 </td>
8329
8330 <td class="entry_range">
8331 </td>
8332
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008333 <td class="entry_tags">
8334 </td>
8335
8336 </tr>
8337 <tr class="entries_header">
8338 <th class="th_details" colspan="5">Details</th>
8339 </tr>
8340 <tr class="entry_cont">
8341 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008342 <p>HAL implementations should use gralloc usage flags
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008343to determine that a stream will be used for
Igor Murashkin0b080452013-12-27 15:30:25 -08008344zero-shutter-lag,<wbr/> instead of relying on an explicit
8345format setting.<wbr/> Does not need to be listed in static
8346metadata.<wbr/> Support will be removed in future versions of
8347camera service.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008348 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008349 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008350
8351
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008352 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8353 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008354
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008355
8356 <tr class="entry" id="static_android.quirks.usePartialResult">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008357 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008358 android.<wbr/>quirks.<wbr/>use<wbr/>Partial<wbr/>Result
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008359 </td>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008360 <td class="entry_type">
8361 <span class="entry_type_name">byte</span>
8362
Eino-Ville Talvala52a64a52013-11-07 14:43:43 -08008363 <span class="entry_type_visibility"> [hidden]</span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008364
8365
8366 </td> <!-- entry_type -->
8367
8368 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008369 <p>If set to 1,<wbr/> the HAL will always split result
8370metadata for a single capture into multiple buffers,<wbr/>
8371returned using multiple process_<wbr/>capture_<wbr/>result calls.<wbr/></p>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008372 </td>
8373
8374 <td class="entry_units">
8375 </td>
8376
8377 <td class="entry_range">
8378 </td>
8379
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008380 <td class="entry_tags">
8381 </td>
8382
8383 </tr>
8384 <tr class="entries_header">
8385 <th class="th_details" colspan="5">Details</th>
8386 </tr>
8387 <tr class="entry_cont">
8388 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008389 <p>Does not need to be listed in static
8390metadata.<wbr/> Support for partial results will be reworked in
8391future versions of camera service.<wbr/> This quirk will stop
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008392working at that point; DO NOT USE without careful
Igor Murashkin0b080452013-12-27 15:30:25 -08008393consideration of future support.<wbr/></p>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008394 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008395 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008396
8397
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008398 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8399 <!-- end of entry -->
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008400
8401
8402
8403 <!-- end of kind -->
8404 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008405 <tr><td colspan="6" class="kind">dynamic</td></tr>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008406
8407 <thead class="entries_header">
8408 <tr>
8409 <th class="th_name">Property Name</th>
8410 <th class="th_type">Type</th>
8411 <th class="th_description">Description</th>
8412 <th class="th_units">Units</th>
8413 <th class="th_range">Range</th>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008414 <th class="th_tags">Tags</th>
8415 </tr>
8416 </thead>
8417
8418 <tbody>
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429 <tr class="entry" id="dynamic_android.quirks.partialResult">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008430 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008431 android.<wbr/>quirks.<wbr/>partial<wbr/>Result
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008432 </td>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008433 <td class="entry_type">
8434 <span class="entry_type_name entry_type_name_enum">byte</span>
8435
Eino-Ville Talvala52a64a52013-11-07 14:43:43 -08008436 <span class="entry_type_visibility"> [hidden as boolean]</span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008437
8438 <ul class="entry_type_enum">
8439 <li>
8440 <span class="entry_type_enum_name">FINAL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008441 <span class="entry_type_enum_notes"><p>The last or only metadata result buffer
8442for this capture.<wbr/></p></span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008443 </li>
8444 <li>
8445 <span class="entry_type_enum_name">PARTIAL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008446 <span class="entry_type_enum_notes"><p>A partial buffer of result metadata for this
8447capture.<wbr/> More result buffers for this capture will be sent
8448by the HAL,<wbr/> the last of which will be marked
8449FINAL.<wbr/></p></span>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008450 </li>
8451 </ul>
8452
8453 </td> <!-- entry_type -->
8454
8455 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008456 <p>Whether a result given to the framework is the
8457final one for the capture,<wbr/> or only a partial that contains a
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008458subset of the full set of dynamic metadata
Igor Murashkin0b080452013-12-27 15:30:25 -08008459values.<wbr/></p>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008460 </td>
8461
8462 <td class="entry_units">
8463 </td>
8464
8465 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008466 <p>Optional.<wbr/> Default value is FINAL.<wbr/></p>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008467 </td>
8468
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008469 <td class="entry_tags">
8470 </td>
8471
8472 </tr>
8473 <tr class="entries_header">
8474 <th class="th_details" colspan="5">Details</th>
8475 </tr>
8476 <tr class="entry_cont">
8477 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008478 <p>The entries in the result metadata buffers for a
8479single capture may not overlap,<wbr/> except for this entry.<wbr/> The
Igor Murashkin8aa2a112013-12-09 12:06:17 -08008480FINAL buffers must retain FIFO ordering relative to the
Igor Murashkin0b080452013-12-27 15:30:25 -08008481requests that generate them,<wbr/> so the FINAL buffer for frame 3 must
8482always be sent to the framework after the FINAL buffer for frame 2,<wbr/> and
8483before the FINAL buffer for frame 4.<wbr/> PARTIAL buffers may be returned
8484in any order relative to other frames,<wbr/> but all PARTIAL buffers for a given
8485capture must arrive before the FINAL buffer for that capture.<wbr/> This entry may
8486only be used by the HAL if quirks.<wbr/>usePartialResult is set to 1.<wbr/></p>
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008487 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008488 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008489
8490
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008491 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8492 <!-- end of entry -->
Eino-Ville Talvala82ce3312013-10-09 18:21:30 -07008493
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008494
8495
8496 <!-- end of kind -->
8497 </tbody>
8498
8499 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008500 <tr><td colspan="6" id="section_request" class="section">request</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008501
8502
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008503 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008504
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008505 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008506 <tr>
8507 <th class="th_name">Property Name</th>
8508 <th class="th_type">Type</th>
8509 <th class="th_description">Description</th>
8510 <th class="th_units">Units</th>
8511 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008512 <th class="th_tags">Tags</th>
8513 </tr>
8514 </thead>
8515
8516 <tbody>
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527 <tr class="entry" id="controls_android.request.frameCount">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008528 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008529 android.<wbr/>request.<wbr/>frame<wbr/>Count
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008530 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008531 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008532 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008533
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008534 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008535
8536
8537 </td> <!-- entry_type -->
8538
8539 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008540 <p>A frame counter set by the framework.<wbr/> Must
8541be maintained unchanged in output frame.<wbr/> This value monotonically
8542increases with every new result (that is,<wbr/> each new result has a unique
8543frameCount value).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008544 </td>
8545
8546 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008547 incrementing integer
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008548 </td>
8549
8550 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008551 <p>Any int</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008552 </td>
8553
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008554 <td class="entry_tags">
8555 </td>
8556
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008557 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008558
8559
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008560 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8561 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008562
8563
8564 <tr class="entry" id="controls_android.request.id">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008565 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008566 android.<wbr/>request.<wbr/>id
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008567 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008568 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008569 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008570
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008571 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008572
8573
8574 </td> <!-- entry_type -->
8575
8576 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008577 <p>An application-specified ID for the current
8578request.<wbr/> Must be maintained unchanged in output
8579frame</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008580 </td>
8581
8582 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008583 arbitrary integer assigned by application
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008584 </td>
8585
8586 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008587 <p>Any int</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008588 </td>
8589
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008590 <td class="entry_tags">
8591 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008592 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008593 </ul>
8594 </td>
8595
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008596 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008597
8598
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008599 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8600 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008601
8602
8603 <tr class="entry" id="controls_android.request.inputStreams">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008604 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008605 android.<wbr/>request.<wbr/>input<wbr/>Streams
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008606 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008607 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07008608 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008609 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008610
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008611 <span class="entry_type_array">
8612 n
8613 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008614 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008615
8616
8617 </td> <!-- entry_type -->
8618
8619 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008620 <p>List which camera reprocess stream is used
8621for the source of reprocessing data.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008622 </td>
8623
8624 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008625 List of camera reprocess stream IDs
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008626 </td>
8627
8628 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008629 <p>Typically,<wbr/> only one entry allowed,<wbr/> must be a valid
8630reprocess stream ID.<wbr/></p>
8631<p>If android.<wbr/>jpeg.<wbr/>needs<wbr/>Thumbnail is set,<wbr/> then multiple
8632reprocess streams may be included in a single request; they
8633must be different scaled versions of the same image.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008634 </td>
8635
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008636 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008637 <ul class="entry_tags">
8638 <li><a href="#tag_HAL2">HAL2</a></li>
8639 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008640 </td>
8641
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008642 </tr>
8643 <tr class="entries_header">
8644 <th class="th_details" colspan="5">Details</th>
8645 </tr>
8646 <tr class="entry_cont">
8647 <td class="entry_details" colspan="5">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008648 <p>Only meaningful when <a href="#controls_android.request.type">android.<wbr/>request.<wbr/>type</a> ==
Igor Murashkin0b080452013-12-27 15:30:25 -08008649REPROCESS.<wbr/> Ignored otherwise</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008650 </td>
8651 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008652
8653
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008654 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8655 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008656
8657
8658 <tr class="entry" id="controls_android.request.metadataMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008659 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008660 android.<wbr/>request.<wbr/>metadata<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008661 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008662 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008663 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008664
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008665 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008666
8667 <ul class="entry_type_enum">
8668 <li>
8669 <span class="entry_type_enum_name">NONE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008670 <span class="entry_type_enum_notes"><p>No metadata should be produced on output,<wbr/> except
8671for application-bound buffer data.<wbr/> If no
8672application-bound streams exist,<wbr/> no frame should be
8673placed in the output frame queue.<wbr/> If such streams
8674exist,<wbr/> a frame should be placed on the output queue
8675with null metadata but with the necessary output buffer
8676information.<wbr/> Timestamp information should still be
8677included with any output stream buffers</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008678 </li>
8679 <li>
8680 <span class="entry_type_enum_name">FULL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008681 <span class="entry_type_enum_notes"><p>All metadata should be produced.<wbr/> Statistics will
8682only be produced if they are separately
8683enabled</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008684 </li>
8685 </ul>
8686
8687 </td> <!-- entry_type -->
8688
8689 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008690 <p>How much metadata to produce on
8691output</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008692 </td>
8693
8694 <td class="entry_units">
8695 </td>
8696
8697 <td class="entry_range">
8698 </td>
8699
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008700 <td class="entry_tags">
8701 </td>
8702
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008703 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008704
8705
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008706 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8707 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008708
8709
8710 <tr class="entry" id="controls_android.request.outputStreams">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008711 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008712 android.<wbr/>request.<wbr/>output<wbr/>Streams
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008713 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008714 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07008715 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008716 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008717
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008718 <span class="entry_type_array">
8719 n
8720 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008721 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008722
8723
8724 </td> <!-- entry_type -->
8725
8726 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008727 <p>Lists which camera output streams image data
8728from this capture must be sent to</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008729 </td>
8730
8731 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008732 List of camera stream IDs
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008733 </td>
8734
8735 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008736 <p>List must only include streams that have been
8737created</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008738 </td>
8739
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008740 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008741 <ul class="entry_tags">
8742 <li><a href="#tag_HAL2">HAL2</a></li>
8743 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008744 </td>
8745
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008746 </tr>
8747 <tr class="entries_header">
8748 <th class="th_details" colspan="5">Details</th>
8749 </tr>
8750 <tr class="entry_cont">
8751 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008752 <p>If no output streams are listed,<wbr/> then the image
8753data should simply be discarded.<wbr/> The image data must
8754still be captured for metadata and statistics production,<wbr/>
8755and the lens and flash must operate as requested.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008756 </td>
8757 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008758
8759
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008760 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8761 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008762
8763
8764 <tr class="entry" id="controls_android.request.type">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008765 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008766 android.<wbr/>request.<wbr/>type
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008767 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008768 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008769 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008770
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008771 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008772
8773 <ul class="entry_type_enum">
8774 <li>
8775 <span class="entry_type_enum_name">CAPTURE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008776 <span class="entry_type_enum_notes"><p>Capture a new image from the imaging hardware,<wbr/>
8777and process it according to the
8778settings</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008779 </li>
8780 <li>
8781 <span class="entry_type_enum_name">REPROCESS</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08008782 <span class="entry_type_enum_notes"><p>Process previously captured data; the
8783android.<wbr/>request.<wbr/>input<wbr/>Stream parameter determines the
8784source reprocessing stream.<wbr/> TODO: Mark dynamic metadata
8785needed for reprocessing with [RP]</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008786 </li>
8787 </ul>
8788
8789 </td> <!-- entry_type -->
8790
8791 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008792 <p>The type of the request; either CAPTURE or
8793REPROCESS.<wbr/> For HAL3,<wbr/> this tag is redundant.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008794 </td>
8795
8796 <td class="entry_units">
8797 </td>
8798
8799 <td class="entry_range">
8800 </td>
8801
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008802 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07008803 <ul class="entry_tags">
8804 <li><a href="#tag_HAL2">HAL2</a></li>
8805 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008806 </td>
8807
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008808 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008809
8810
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008811 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8812 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008813
8814
8815
8816 <!-- end of kind -->
8817 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008818 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008819
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008820 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008821 <tr>
8822 <th class="th_name">Property Name</th>
8823 <th class="th_type">Type</th>
8824 <th class="th_description">Description</th>
8825 <th class="th_units">Units</th>
8826 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008827 <th class="th_tags">Tags</th>
8828 </tr>
8829 </thead>
8830
8831 <tbody>
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842 <tr class="entry" id="static_android.request.maxNumOutputStreams">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008843 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008844 android.<wbr/>request.<wbr/>max<wbr/>Num<wbr/>Output<wbr/>Streams
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008845 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008846 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008847 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008848 <span class="entry_type_container">x</span>
8849
8850 <span class="entry_type_array">
8851 3
8852 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008853 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008854
8855
8856 </td> <!-- entry_type -->
8857
8858 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008859 <p>How many output streams can be allocated at
8860the same time for each type of stream</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008861 </td>
8862
8863 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008864 The number of raw sensor streams; the number of
8865 processed,<wbr/> uncompressed streams; and the number of
8866 JPEG-compressed streams
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008867 </td>
8868
8869 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08008870 <p>&gt;=1 for Raw and JPEG-compressed stream.<wbr/> &gt;= 3
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08008871for processed,<wbr/> uncompressed streams</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008872 </td>
8873
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008874 <td class="entry_tags">
8875 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008876 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008877 </ul>
8878 </td>
8879
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008880 </tr>
8881 <tr class="entries_header">
8882 <th class="th_details" colspan="5">Details</th>
8883 </tr>
8884 <tr class="entry_cont">
8885 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008886 <p>Video snapshot with preview callbacks requires 3
8887processed streams (preview,<wbr/> record,<wbr/> app callbacks) and
8888one JPEG stream (snapshot)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008889 </td>
8890 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008891
8892
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008893 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8894 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008895
8896
8897 <tr class="entry" id="static_android.request.maxNumReprocessStreams">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008898 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08008899 android.<wbr/>request.<wbr/>max<wbr/>Num<wbr/>Reprocess<wbr/>Streams
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008900 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008901 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008902 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008903 <span class="entry_type_container">x</span>
8904
8905 <span class="entry_type_array">
8906 1
8907 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008908 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008909
8910
8911 </td> <!-- entry_type -->
8912
8913 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008914 <p>How many reprocessing streams of any type
8915can be allocated at the same time</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008916 </td>
8917
8918 <td class="entry_units">
8919 </td>
8920
8921 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08008922 <p>&gt;= 1</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008923 </td>
8924
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008925 <td class="entry_tags">
8926 </td>
8927
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008928 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008929
8930
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008931 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
8932 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008933
8934
8935
8936 <!-- end of kind -->
8937 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008938 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008939
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008940 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008941 <tr>
8942 <th class="th_name">Property Name</th>
8943 <th class="th_type">Type</th>
8944 <th class="th_description">Description</th>
8945 <th class="th_units">Units</th>
8946 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008947 <th class="th_tags">Tags</th>
8948 </tr>
8949 </thead>
8950
8951 <tbody>
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962 <tr class="entry" id="dynamic_android.request.frameCount">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008963 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08008964 android.<wbr/>request.<wbr/>frame<wbr/>Count
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08008965 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008966 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008967 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008968
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008969 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008970
8971
8972 </td> <!-- entry_type -->
8973
8974 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08008975 <p>A frame counter set by the framework.<wbr/> This value monotonically
8976increases with every new result (that is,<wbr/> each new result has a unique
8977frameCount value).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008978 </td>
8979
8980 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08008981 count of frames
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008982 </td>
8983
8984 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08008985 <p>&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008986 </td>
8987
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008988 <td class="entry_tags">
8989 </td>
8990
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008991 </tr>
8992 <tr class="entries_header">
8993 <th class="th_details" colspan="5">Details</th>
8994 </tr>
8995 <tr class="entry_cont">
8996 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08008997 <p>Reset on release()</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08008998 </td>
8999 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009000
9001
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009002 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9003 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009004
9005
9006 <tr class="entry" id="dynamic_android.request.id">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009007 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009008 android.<wbr/>request.<wbr/>id
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009009 </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">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009012
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009013 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009014
9015
9016 </td> <!-- entry_type -->
9017
9018 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009019 <p>An application-specified ID for the current
9020request.<wbr/> Must be maintained unchanged in output
9021frame</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009022 </td>
9023
9024 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009025 arbitrary integer assigned by application
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009026 </td>
9027
9028 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009029 <p>Any int</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009030 </td>
9031
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009032 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009033 <ul class="entry_tags">
9034 <li><a href="#tag_V1">V1</a></li>
9035 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009036 </td>
9037
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009038 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009039
9040
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009041 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9042 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009043
9044
9045 <tr class="entry" id="dynamic_android.request.metadataMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009046 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009047 android.<wbr/>request.<wbr/>metadata<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009048 </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 entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009051
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009052 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009053
9054 <ul class="entry_type_enum">
9055 <li>
9056 <span class="entry_type_enum_name">NONE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009057 <span class="entry_type_enum_notes"><p>No metadata should be produced on output,<wbr/> except
9058for application-bound buffer data.<wbr/> If no
9059application-bound streams exist,<wbr/> no frame should be
9060placed in the output frame queue.<wbr/> If such streams
9061exist,<wbr/> a frame should be placed on the output queue
9062with null metadata but with the necessary output buffer
9063information.<wbr/> Timestamp information should still be
9064included with any output stream buffers</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009065 </li>
9066 <li>
9067 <span class="entry_type_enum_name">FULL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009068 <span class="entry_type_enum_notes"><p>All metadata should be produced.<wbr/> Statistics will
9069only be produced if they are separately
9070enabled</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009071 </li>
9072 </ul>
9073
9074 </td> <!-- entry_type -->
9075
9076 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009077 <p>How much metadata to produce on
9078output</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009079 </td>
9080
9081 <td class="entry_units">
9082 </td>
9083
9084 <td class="entry_range">
9085 </td>
9086
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009087 <td class="entry_tags">
9088 </td>
9089
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009090 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009091
9092
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009093 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9094 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009095
9096
9097 <tr class="entry" id="dynamic_android.request.outputStreams">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009098 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009099 android.<wbr/>request.<wbr/>output<wbr/>Streams
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009100 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009101 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07009102 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07009103 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009104
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07009105 <span class="entry_type_array">
9106 n
9107 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009108 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009109
9110
9111 </td> <!-- entry_type -->
9112
9113 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009114 <p>Lists which camera output streams image data
9115from this capture must be sent to</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009116 </td>
9117
9118 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009119 List of camera stream IDs
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009120 </td>
9121
9122 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009123 <p>List must only include streams that have been
9124created</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009125 </td>
9126
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009127 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07009128 <ul class="entry_tags">
9129 <li><a href="#tag_HAL2">HAL2</a></li>
9130 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009131 </td>
9132
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009133 </tr>
9134 <tr class="entries_header">
9135 <th class="th_details" colspan="5">Details</th>
9136 </tr>
9137 <tr class="entry_cont">
9138 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009139 <p>If no output streams are listed,<wbr/> then the image
9140data should simply be discarded.<wbr/> The image data must
9141still be captured for metadata and statistics production,<wbr/>
9142and the lens and flash must operate as requested.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009143 </td>
9144 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009145
9146
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009147 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9148 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009149
9150
9151
9152 <!-- end of kind -->
9153 </tbody>
9154
9155 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009156 <tr><td colspan="6" id="section_scaler" class="section">scaler</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009157
9158
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009159 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009160
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009161 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009162 <tr>
9163 <th class="th_name">Property Name</th>
9164 <th class="th_type">Type</th>
9165 <th class="th_description">Description</th>
9166 <th class="th_units">Units</th>
9167 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009168 <th class="th_tags">Tags</th>
9169 </tr>
9170 </thead>
9171
9172 <tbody>
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183 <tr class="entry" id="controls_android.scaler.cropRegion">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009184 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009185 android.<wbr/>scaler.<wbr/>crop<wbr/>Region
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009186 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009187 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009188 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009189 <span class="entry_type_container">x</span>
9190
9191 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07009192 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009193 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009194 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009195
9196
9197 </td> <!-- entry_type -->
9198
9199 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009200 <p>(x,<wbr/> y,<wbr/> width,<wbr/> height).<wbr/></p>
9201<p>A rectangle with the top-level corner of (x,<wbr/>y) and size
9202(width,<wbr/> height).<wbr/> The region of the sensor that is used for
9203output.<wbr/> Each stream must use this rectangle to produce its
9204output,<wbr/> cropping to a smaller region if necessary to
9205maintain the stream's aspect ratio.<wbr/></p>
9206<p>HAL2.<wbr/>x uses only (x,<wbr/> y,<wbr/> width)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009207 </td>
9208
9209 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009210 (x,<wbr/>y) of top-left corner,<wbr/> width and height of region
9211 in pixels; (0,<wbr/>0) is top-left corner of
9212 android.<wbr/>sensor.<wbr/>active<wbr/>Array<wbr/>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009213 </td>
9214
9215 <td class="entry_range">
9216 </td>
9217
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009218 <td class="entry_tags">
9219 <ul class="entry_tags">
9220 <li><a href="#tag_BC">BC</a></li>
9221 </ul>
9222 </td>
9223
9224 </tr>
9225 <tr class="entries_header">
9226 <th class="th_details" colspan="5">Details</th>
9227 </tr>
9228 <tr class="entry_cont">
9229 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009230 <p>Any additional per-stream cropping must be done to
9231maximize the final pixel area of the stream.<wbr/></p>
9232<p>For example,<wbr/> if the crop region is set to a 4:3 aspect
9233ratio,<wbr/> then 4:3 streams should use the exact crop
9234region.<wbr/> 16:9 streams should further crop vertically
9235(letterbox).<wbr/></p>
9236<p>Conversely,<wbr/> if the crop region is set to a 16:9,<wbr/> then 4:3
9237outputs should crop horizontally (pillarbox),<wbr/> and 16:9
9238streams should match exactly.<wbr/> These additional crops must
9239be centered within the crop region.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009240<p>The output streams must maintain square pixels at all
Igor Murashkin0b080452013-12-27 15:30:25 -08009241times,<wbr/> no matter what the relative aspect ratios of the
9242crop region and the stream are.<wbr/> Negative values for
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009243corner are allowed for raw output if full pixel array is
Igor Murashkin0b080452013-12-27 15:30:25 -08009244larger than active pixel array.<wbr/> Width and height may be
9245rounded to nearest larger supportable width,<wbr/> especially
9246for raw output,<wbr/> where only a few fixed scales may be
9247possible.<wbr/> The width and height of the crop region cannot
9248be set to be smaller than floor( activeArraySize.<wbr/>width /<wbr/>
9249android.<wbr/>scaler.<wbr/>max<wbr/>Digital<wbr/>Zoom ) and floor(
9250activeArraySize.<wbr/>height /<wbr/> android.<wbr/>scaler.<wbr/>max<wbr/>Digital<wbr/>Zoom),<wbr/>
9251respectively.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009252 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009253 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009254
9255
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009256 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9257 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009258
9259
9260
9261 <!-- end of kind -->
9262 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009263 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009264
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009265 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009266 <tr>
9267 <th class="th_name">Property Name</th>
9268 <th class="th_type">Type</th>
9269 <th class="th_description">Description</th>
9270 <th class="th_units">Units</th>
9271 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009272 <th class="th_tags">Tags</th>
9273 </tr>
9274 </thead>
9275
9276 <tbody>
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287 <tr class="entry" id="static_android.scaler.availableFormats">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009288 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009289 android.<wbr/>scaler.<wbr/>available<wbr/>Formats
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009290 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009291 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009292 <span class="entry_type_name entry_type_name_enum">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009293 <span class="entry_type_container">x</span>
9294
9295 <span class="entry_type_array">
9296 n
9297 </span>
Eino-Ville Talvalad4e240a2013-08-08 12:56:37 -07009298 <span class="entry_type_visibility"> [public as imageFormat]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -08009299 <div class="entry_type_notes">values from HAL_<wbr/>PIXEL_<wbr/>FORMAT_<wbr/>* in /<wbr/>system/<wbr/>core/<wbr/>include/<wbr/>system/<wbr/>graphics.<wbr/>h</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009300
9301 <ul class="entry_type_enum">
9302 <li>
9303 <span class="entry_type_enum_name">RAW_SENSOR</span>
9304 <span class="entry_type_enum_value">0x20</span>
9305 </li>
9306 <li>
9307 <span class="entry_type_enum_name">YV12</span>
9308 <span class="entry_type_enum_value">0x32315659</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009309 <span class="entry_type_enum_notes"><p>YCrCb 4:2:0 Planar</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009310 </li>
9311 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07009312 <span class="entry_type_enum_name">YCrCb_420_SP</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009313 <span class="entry_type_enum_value">0x11</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009314 <span class="entry_type_enum_notes"><p>NV21</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009315 </li>
9316 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07009317 <span class="entry_type_enum_name">IMPLEMENTATION_DEFINED</span>
9318 <span class="entry_type_enum_value">0x22</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009319 <span class="entry_type_enum_notes"><p>Hal Implementation Defined</p></span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07009320 </li>
9321 <li>
9322 <span class="entry_type_enum_name">YCbCr_420_888</span>
9323 <span class="entry_type_enum_value">0x23</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009324 <span class="entry_type_enum_notes"><p>Flexible YUV420 Format</p></span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07009325 </li>
9326 <li>
9327 <span class="entry_type_enum_name">BLOB</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009328 <span class="entry_type_enum_value">0x21</span>
Igor Murashkina10351a2014-01-15 17:05:22 -08009329 <span class="entry_type_enum_notes"><p>JPEG</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009330 </li>
9331 </ul>
9332
9333 </td> <!-- entry_type -->
9334
9335 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009336 <p>List of app-visible formats</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009337 </td>
9338
9339 <td class="entry_units">
9340 </td>
9341
9342 <td class="entry_range">
9343 </td>
9344
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009345 <td class="entry_tags">
9346 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009347 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009348 </ul>
9349 </td>
9350
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009351 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009352
9353
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009354 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9355 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009356
9357
9358 <tr class="entry" id="static_android.scaler.availableJpegMinDurations">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009359 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009360 android.<wbr/>scaler.<wbr/>available<wbr/>Jpeg<wbr/>Min<wbr/>Durations
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009361 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009362 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009363 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009364 <span class="entry_type_container">x</span>
9365
9366 <span class="entry_type_array">
9367 n
9368 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009369 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009370
9371
9372 </td> <!-- entry_type -->
9373
9374 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009375 <p>The minimum frame duration that is supported
9376for each resolution in availableJpegSizes.<wbr/> Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009377correspond to the frame duration when only that JPEG
Igor Murashkin0b080452013-12-27 15:30:25 -08009378stream is active and captured in a burst,<wbr/> with all
9379processing set to FAST</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009380 </td>
9381
9382 <td class="entry_units">
9383 </td>
9384
9385 <td class="entry_range">
9386 </td>
9387
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009388 <td class="entry_tags">
9389 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009390 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009391 </ul>
9392 </td>
9393
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009394 </tr>
9395 <tr class="entries_header">
9396 <th class="th_details" colspan="5">Details</th>
9397 </tr>
9398 <tr class="entry_cont">
9399 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009400 <p>When multiple streams are configured,<wbr/> the minimum
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009401frame duration will be &gt;= max(individual stream min
Igor Murashkin0b080452013-12-27 15:30:25 -08009402durations)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009403 </td>
9404 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009405
9406
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009407 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9408 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009409
9410
9411 <tr class="entry" id="static_android.scaler.availableJpegSizes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009412 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009413 android.<wbr/>scaler.<wbr/>available<wbr/>Jpeg<wbr/>Sizes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009414 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009415 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009416 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009417 <span class="entry_type_container">x</span>
9418
9419 <span class="entry_type_array">
9420 n x 2
9421 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009422 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009423
9424
9425 </td> <!-- entry_type -->
9426
9427 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009428 <p>The resolutions available for output from
9429the JPEG block.<wbr/> Listed as width x height</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009430 </td>
9431
9432 <td class="entry_units">
9433 </td>
9434
9435 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009436 <p>Must include: - sensor maximum resolution Should
9437include: - half/<wbr/>quarter max resolution</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009438 </td>
9439
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009440 <td class="entry_tags">
9441 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009442 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009443 </ul>
9444 </td>
9445
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009446 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009447
9448
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009449 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9450 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009451
9452
9453 <tr class="entry" id="static_android.scaler.availableMaxDigitalZoom">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009454 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009455 android.<wbr/>scaler.<wbr/>available<wbr/>Max<wbr/>Digital<wbr/>Zoom
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009456 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009457 <td class="entry_type">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07009458 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009459
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009460 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009461
9462
9463 </td> <!-- entry_type -->
9464
9465 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009466 <p>The maximum ratio between active area width
9467and crop region width,<wbr/> or between active area height and
9468crop region height,<wbr/> if the crop region height is larger
9469than width</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009470 </td>
9471
9472 <td class="entry_units">
9473 </td>
9474
9475 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -08009476 <p>&gt;=1</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009477 </td>
9478
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009479 <td class="entry_tags">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07009480 <ul class="entry_tags">
9481 <li><a href="#tag_BC">BC</a></li>
9482 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009483 </td>
9484
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009485 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009486
9487
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009488 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9489 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009490
9491
9492 <tr class="entry" id="static_android.scaler.availableProcessedMinDurations">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009493 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009494 android.<wbr/>scaler.<wbr/>available<wbr/>Processed<wbr/>Min<wbr/>Durations
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009495 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009496 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009497 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009498 <span class="entry_type_container">x</span>
9499
9500 <span class="entry_type_array">
9501 n
9502 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009503 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009504
9505
9506 </td> <!-- entry_type -->
9507
9508 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009509 <p>The minimum frame duration that is supported
9510for each resolution in availableProcessedSizes.<wbr/> Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009511correspond to the frame duration when only that processed
Igor Murashkin0b080452013-12-27 15:30:25 -08009512stream is active,<wbr/> with all processing set to
9513FAST</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009514 </td>
9515
9516 <td class="entry_units">
9517 </td>
9518
9519 <td class="entry_range">
9520 </td>
9521
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009522 <td class="entry_tags">
9523 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009524 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009525 </ul>
9526 </td>
9527
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009528 </tr>
9529 <tr class="entries_header">
9530 <th class="th_details" colspan="5">Details</th>
9531 </tr>
9532 <tr class="entry_cont">
9533 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009534 <p>When multiple streams are configured,<wbr/> the minimum
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009535frame duration will be &gt;= max(individual stream min
Igor Murashkin0b080452013-12-27 15:30:25 -08009536durations)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009537 </td>
9538 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009539
9540
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009541 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9542 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009543
9544
9545 <tr class="entry" id="static_android.scaler.availableProcessedSizes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009546 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009547 android.<wbr/>scaler.<wbr/>available<wbr/>Processed<wbr/>Sizes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009548 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009549 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009550 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009551 <span class="entry_type_container">x</span>
9552
9553 <span class="entry_type_array">
9554 n x 2
9555 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009556 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009557
9558
9559 </td> <!-- entry_type -->
9560
9561 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009562 <p>The resolutions available for use with
9563processed output streams,<wbr/> such as YV12,<wbr/> NV12,<wbr/> and
9564platform opaque YUV/<wbr/>RGB streams to the GPU or video
9565encoders.<wbr/> Listed as width,<wbr/> height</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009566 </td>
9567
9568 <td class="entry_units">
9569 </td>
9570
9571 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009572 <p>Must include: - sensor maximum resolution -
9573standard QCIF,<wbr/> 240p,<wbr/> 480p,<wbr/> 720p,<wbr/> and 1080p
9574resolutions</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009575 </td>
9576
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009577 <td class="entry_tags">
9578 <ul class="entry_tags">
9579 <li><a href="#tag_BC">BC</a></li>
9580 </ul>
9581 </td>
9582
9583 </tr>
9584 <tr class="entries_header">
9585 <th class="th_details" colspan="5">Details</th>
9586 </tr>
9587 <tr class="entry_cont">
9588 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009589 <p>The actual supported resolution list may be limited by
9590consumer end points for different use cases.<wbr/> For example,<wbr/> for
9591recording use case,<wbr/> the largest supported resolution may be
9592limited by max supported size from encoder,<wbr/> for preview use
9593case,<wbr/> the largest supported resolution may be limited by max
9594resolution SurfaceTexture/<wbr/>SurfaceView can support.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009595 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009596 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009597
9598
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009599 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9600 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009601
9602
9603 <tr class="entry" id="static_android.scaler.availableRawMinDurations">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009604 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009605 android.<wbr/>scaler.<wbr/>available<wbr/>Raw<wbr/>Min<wbr/>Durations
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009606 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009607 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009608 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009609 <span class="entry_type_container">x</span>
9610
9611 <span class="entry_type_array">
9612 n
9613 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009614 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009615
9616
9617 </td> <!-- entry_type -->
9618
9619 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009620 <p>The minimum frame duration that is supported
9621for each raw resolution in availableRawSizes.<wbr/> Should
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009622correspond to the frame duration when only the raw stream
Igor Murashkin0b080452013-12-27 15:30:25 -08009623is active.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009624 </td>
9625
9626 <td class="entry_units">
9627 </td>
9628
9629 <td class="entry_range">
9630 </td>
9631
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009632 <td class="entry_tags">
9633 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009634 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009635 </ul>
9636 </td>
9637
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009638 </tr>
9639 <tr class="entries_header">
9640 <th class="th_details" colspan="5">Details</th>
9641 </tr>
9642 <tr class="entry_cont">
9643 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009644 <p>When multiple streams are configured,<wbr/> the minimum
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009645frame duration will be &gt;= max(individual stream min
Igor Murashkin0b080452013-12-27 15:30:25 -08009646durations)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009647 </td>
9648 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009649
9650
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009651 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9652 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009653
9654
9655 <tr class="entry" id="static_android.scaler.availableRawSizes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009656 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -08009657 android.<wbr/>scaler.<wbr/>available<wbr/>Raw<wbr/>Sizes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009658 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009659 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009660 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009661 <span class="entry_type_container">x</span>
9662
9663 <span class="entry_type_array">
9664 n x 2
9665 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009666 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009667
9668
9669 </td> <!-- entry_type -->
9670
9671 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009672 <p>The resolutions available for use with raw
9673sensor output streams,<wbr/> listed as width,<wbr/>
9674height</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009675 </td>
9676
9677 <td class="entry_units">
9678 </td>
9679
9680 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009681 <p>Must include: - sensor maximum resolution</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009682 </td>
9683
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009684 <td class="entry_tags">
9685 </td>
9686
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009687 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009688
9689
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009690 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9691 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009692
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009693
9694
9695 <!-- end of kind -->
9696 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009697 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009698
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009699 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009700 <tr>
9701 <th class="th_name">Property Name</th>
9702 <th class="th_type">Type</th>
9703 <th class="th_description">Description</th>
9704 <th class="th_units">Units</th>
9705 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009706 <th class="th_tags">Tags</th>
9707 </tr>
9708 </thead>
9709
9710 <tbody>
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721 <tr class="entry" id="dynamic_android.scaler.cropRegion">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009722 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009723 android.<wbr/>scaler.<wbr/>crop<wbr/>Region
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009724 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009725 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009726 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009727 <span class="entry_type_container">x</span>
9728
9729 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07009730 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009731 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009732 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009733
9734
9735 </td> <!-- entry_type -->
9736
9737 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009738 <p>(x,<wbr/> y,<wbr/> width,<wbr/> height).<wbr/></p>
9739<p>A rectangle with the top-level corner of (x,<wbr/>y) and size
9740(width,<wbr/> height).<wbr/> The region of the sensor that is used for
9741output.<wbr/> Each stream must use this rectangle to produce its
9742output,<wbr/> cropping to a smaller region if necessary to
9743maintain the stream's aspect ratio.<wbr/></p>
9744<p>HAL2.<wbr/>x uses only (x,<wbr/> y,<wbr/> width)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009745 </td>
9746
9747 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009748 (x,<wbr/>y) of top-left corner,<wbr/> width and height of region
9749 in pixels; (0,<wbr/>0) is top-left corner of
9750 android.<wbr/>sensor.<wbr/>active<wbr/>Array<wbr/>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009751 </td>
9752
9753 <td class="entry_range">
9754 </td>
9755
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009756 <td class="entry_tags">
9757 <ul class="entry_tags">
9758 <li><a href="#tag_BC">BC</a></li>
9759 </ul>
9760 </td>
9761
9762 </tr>
9763 <tr class="entries_header">
9764 <th class="th_details" colspan="5">Details</th>
9765 </tr>
9766 <tr class="entry_cont">
9767 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009768 <p>Any additional per-stream cropping must be done to
9769maximize the final pixel area of the stream.<wbr/></p>
9770<p>For example,<wbr/> if the crop region is set to a 4:3 aspect
9771ratio,<wbr/> then 4:3 streams should use the exact crop
9772region.<wbr/> 16:9 streams should further crop vertically
9773(letterbox).<wbr/></p>
9774<p>Conversely,<wbr/> if the crop region is set to a 16:9,<wbr/> then 4:3
9775outputs should crop horizontally (pillarbox),<wbr/> and 16:9
9776streams should match exactly.<wbr/> These additional crops must
9777be centered within the crop region.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009778<p>The output streams must maintain square pixels at all
Igor Murashkin0b080452013-12-27 15:30:25 -08009779times,<wbr/> no matter what the relative aspect ratios of the
9780crop region and the stream are.<wbr/> Negative values for
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009781corner are allowed for raw output if full pixel array is
Igor Murashkin0b080452013-12-27 15:30:25 -08009782larger than active pixel array.<wbr/> Width and height may be
9783rounded to nearest larger supportable width,<wbr/> especially
9784for raw output,<wbr/> where only a few fixed scales may be
9785possible.<wbr/> The width and height of the crop region cannot
9786be set to be smaller than floor( activeArraySize.<wbr/>width /<wbr/>
9787android.<wbr/>scaler.<wbr/>max<wbr/>Digital<wbr/>Zoom ) and floor(
9788activeArraySize.<wbr/>height /<wbr/> android.<wbr/>scaler.<wbr/>max<wbr/>Digital<wbr/>Zoom),<wbr/>
9789respectively.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009790 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009791 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009792
9793
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009794 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9795 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009796
9797
9798
9799 <!-- end of kind -->
9800 </tbody>
9801
9802 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009803 <tr><td colspan="6" id="section_sensor" class="section">sensor</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009804
9805
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009806 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009807
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009808 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009809 <tr>
9810 <th class="th_name">Property Name</th>
9811 <th class="th_type">Type</th>
9812 <th class="th_description">Description</th>
9813 <th class="th_units">Units</th>
9814 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009815 <th class="th_tags">Tags</th>
9816 </tr>
9817 </thead>
9818
9819 <tbody>
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830 <tr class="entry" id="controls_android.sensor.exposureTime">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009831 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009832 android.<wbr/>sensor.<wbr/>exposure<wbr/>Time
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009833 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009834 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009835 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009836
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009837 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009838
9839
9840 </td> <!-- entry_type -->
9841
9842 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009843 <p>Duration each pixel is exposed to
9844light.<wbr/></p>
9845<p>If the sensor can't expose this exact duration,<wbr/> it should shorten the
9846duration exposed to the nearest possible value (rather than expose longer).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009847 </td>
9848
9849 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009850 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009851 </td>
9852
9853 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009854 <p><a href="#static_android.sensor.info.exposureTimeRange">android.<wbr/>sensor.<wbr/>info.<wbr/>exposure<wbr/>Time<wbr/>Range</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009855 </td>
9856
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009857 <td class="entry_tags">
9858 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009859 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009860 </ul>
9861 </td>
9862
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009863 </tr>
9864 <tr class="entries_header">
9865 <th class="th_details" colspan="5">Details</th>
9866 </tr>
9867 <tr class="entry_cont">
9868 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009869 <p>1/<wbr/>10000 - 30 sec range.<wbr/> No bulb mode</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009870 </td>
9871 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009872
9873
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009874 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9875 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009876
9877
9878 <tr class="entry" id="controls_android.sensor.frameDuration">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009879 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009880 android.<wbr/>sensor.<wbr/>frame<wbr/>Duration
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009881 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009882 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009883 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009884
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009885 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009886
9887
9888 </td> <!-- entry_type -->
9889
9890 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009891 <p>Duration from start of frame exposure to
9892start of next frame exposure</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009893 </td>
9894
9895 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009896 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009897 </td>
9898
9899 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009900 <p>see <a href="#static_android.sensor.info.maxFrameDuration">android.<wbr/>sensor.<wbr/>info.<wbr/>max<wbr/>Frame<wbr/>Duration</a>,<wbr/>
9901android.<wbr/>scaler.<wbr/>info.<wbr/>available<wbr/>Min<wbr/>Frame<wbr/>Durations</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009902 </td>
9903
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009904 <td class="entry_tags">
9905 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009906 <li><a href="#tag_V1">V1</a></li>
9907 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009908 </ul>
9909 </td>
9910
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009911 </tr>
9912 <tr class="entries_header">
9913 <th class="th_details" colspan="5">Details</th>
9914 </tr>
9915 <tr class="entry_cont">
9916 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009917 <p>Exposure time has priority,<wbr/> so duration is set to
9918max(duration,<wbr/> exposure time + overhead)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009919 </td>
9920 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009921
9922
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009923 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9924 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009925
9926
9927 <tr class="entry" id="controls_android.sensor.sensitivity">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009928 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -08009929 android.<wbr/>sensor.<wbr/>sensitivity
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009930 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009931 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009932 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009933
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009934 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009935
9936
9937 </td> <!-- entry_type -->
9938
9939 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -08009940 <p>Gain applied to image data.<wbr/> Must be
Igor Murashkin8aa2a112013-12-09 12:06:17 -08009941implemented through analog gain only if set to values
Igor Murashkin0b080452013-12-27 15:30:25 -08009942below 'maximum analog sensitivity'.<wbr/></p>
9943<p>If the sensor can't apply this exact gain,<wbr/> it should lessen the
9944gain to the nearest possible value (rather than gain more).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009945 </td>
9946
9947 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -08009948 ISO arithmetic units
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009949 </td>
9950
9951 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -08009952 <p><a href="#static_android.sensor.info.sensitivityRange">android.<wbr/>sensor.<wbr/>info.<wbr/>sensitivity<wbr/>Range</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009953 </td>
9954
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009955 <td class="entry_tags">
9956 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009957 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009958 </ul>
9959 </td>
9960
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009961 </tr>
9962 <tr class="entries_header">
9963 <th class="th_details" colspan="5">Details</th>
9964 </tr>
9965 <tr class="entry_cont">
9966 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -08009967 <p>ISO 12232:2006 REI method</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009968 </td>
9969 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -08009970
9971
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009972 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
9973 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009974
9975
9976
9977 <!-- end of kind -->
9978 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -08009979 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009980
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009981 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009982 <tr>
9983 <th class="th_name">Property Name</th>
9984 <th class="th_type">Type</th>
9985 <th class="th_description">Description</th>
9986 <th class="th_units">Units</th>
9987 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009988 <th class="th_tags">Tags</th>
9989 </tr>
9990 </thead>
9991
9992 <tbody>
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005 <tr class="entry" id="static_android.sensor.info.activeArraySize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010006 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010007 android.<wbr/>sensor.<wbr/>info.<wbr/>active<wbr/>Array<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010008 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010009 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010010 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010011 <span class="entry_type_container">x</span>
10012
10013 <span class="entry_type_array">
10014 4
10015 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010016 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010017 <div class="entry_type_notes">Four ints defining the active pixel rectangle</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010018
10019
10020 </td> <!-- entry_type -->
10021
10022 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010023 <p>Area of raw data which corresponds to only
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010024active pixels; smaller or equal to
Igor Murashkin0b080452013-12-27 15:30:25 -080010025pixelArraySize.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010026 </td>
10027
10028 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080010029 xmin,<wbr/> ymin,<wbr/> width,<wbr/> height.<wbr/> Top left of full
10030 pixel array is (0,<wbr/>0)
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010031 </td>
10032
10033 <td class="entry_range">
10034 </td>
10035
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010036 <td class="entry_tags">
10037 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010038 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010039 </ul>
10040 </td>
10041
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010042 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010043
10044
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010045 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10046 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010047
10048
Zhijun He69fc0ea2013-07-17 09:42:58 -070010049 <tr class="entry" id="static_android.sensor.info.sensitivityRange">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010050 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010051 android.<wbr/>sensor.<wbr/>info.<wbr/>sensitivity<wbr/>Range
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010052 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010053 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010054 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010055 <span class="entry_type_container">x</span>
10056
10057 <span class="entry_type_array">
Zhijun He69fc0ea2013-07-17 09:42:58 -070010058 2
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010059 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010060 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010061 <div class="entry_type_notes">Range of supported sensitivities</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010062
10063
10064 </td> <!-- entry_type -->
10065
10066 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010067 <p>Range of valid sensitivities</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010068 </td>
10069
10070 <td class="entry_units">
10071 </td>
10072
10073 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080010074 <p>Min &lt;= 100,<wbr/> Max &gt;= 1600</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010075 </td>
10076
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010077 <td class="entry_tags">
10078 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010079 <li><a href="#tag_BC">BC</a></li>
10080 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010081 </ul>
10082 </td>
10083
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010084 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010085
10086
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010087 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10088 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010089
10090
10091 <tr class="entry" id="static_android.sensor.info.colorFilterArrangement">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010092 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010093 android.<wbr/>sensor.<wbr/>info.<wbr/>color<wbr/>Filter<wbr/>Arrangement
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010094 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010095 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010096 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010097
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010098 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010099
10100 <ul class="entry_type_enum">
10101 <li>
10102 <span class="entry_type_enum_name">RGGB</span>
10103 </li>
10104 <li>
10105 <span class="entry_type_enum_name">GRBG</span>
10106 </li>
10107 <li>
10108 <span class="entry_type_enum_name">GBRG</span>
10109 </li>
10110 <li>
10111 <span class="entry_type_enum_name">BGGR</span>
10112 </li>
10113 <li>
10114 <span class="entry_type_enum_name">RGB</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010115 <span class="entry_type_enum_notes"><p>Sensor is not Bayer; output has 3 16-bit
10116values for each pixel,<wbr/> instead of just 1 16-bit value
10117per pixel.<wbr/></p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010118 </li>
10119 </ul>
10120
10121 </td> <!-- entry_type -->
10122
10123 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010124 <p>Arrangement of color filters on sensor;
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010125represents the colors in the top-left 2x2 section of
Igor Murashkin0b080452013-12-27 15:30:25 -080010126the sensor,<wbr/> in reading order</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010127 </td>
10128
10129 <td class="entry_units">
10130 </td>
10131
10132 <td class="entry_range">
10133 </td>
10134
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010135 <td class="entry_tags">
10136 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010137 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010138 </ul>
10139 </td>
10140
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010141 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010142
10143
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010144 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10145 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010146
10147
10148 <tr class="entry" id="static_android.sensor.info.exposureTimeRange">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010149 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010150 android.<wbr/>sensor.<wbr/>info.<wbr/>exposure<wbr/>Time<wbr/>Range
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010151 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010152 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010153 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010154 <span class="entry_type_container">x</span>
10155
10156 <span class="entry_type_array">
10157 2
10158 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010159 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010160 <div class="entry_type_notes">nanoseconds</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010161
10162
10163 </td> <!-- entry_type -->
10164
10165 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010166 <p>Range of valid exposure
10167times</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010168 </td>
10169
10170 <td class="entry_units">
10171 </td>
10172
10173 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080010174 <p>Min &lt;= 100e3 (100 us),<wbr/> Max &gt;= 30e9 (30
10175sec)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010176 </td>
10177
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010178 <td class="entry_tags">
10179 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010180 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010181 </ul>
10182 </td>
10183
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010184 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010185
10186
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010187 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10188 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010189
10190
10191 <tr class="entry" id="static_android.sensor.info.maxFrameDuration">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010192 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010193 android.<wbr/>sensor.<wbr/>info.<wbr/>max<wbr/>Frame<wbr/>Duration
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010194 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010195 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010196 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010197
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010198 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010199
10200
10201 </td> <!-- entry_type -->
10202
10203 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010204 <p>Maximum possible frame duration (minimum frame
10205rate)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010206 </td>
10207
10208 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080010209 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010210 </td>
10211
10212 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080010213 <p>&gt;= 30e9</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010214 </td>
10215
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010216 <td class="entry_tags">
10217 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010218 <li><a href="#tag_BC">BC</a></li>
10219 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010220 </ul>
10221 </td>
10222
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010223 </tr>
10224 <tr class="entries_header">
10225 <th class="th_details" colspan="5">Details</th>
10226 </tr>
10227 <tr class="entry_cont">
10228 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010229 <p>Minimum duration is a function of resolution,<wbr/>
10230processing settings.<wbr/> See
10231android.<wbr/>scaler.<wbr/>available<wbr/>Processed<wbr/>Min<wbr/>Durations
10232android.<wbr/>scaler.<wbr/>available<wbr/>Jpeg<wbr/>Min<wbr/>Durations
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080010233<a href="#static_android.scaler.availableRawMinDurations">android.<wbr/>scaler.<wbr/>available<wbr/>Raw<wbr/>Min<wbr/>Durations</a></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010234 </td>
10235 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010236
10237
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010238 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10239 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010240
10241
10242 <tr class="entry" id="static_android.sensor.info.physicalSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010243 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010244 android.<wbr/>sensor.<wbr/>info.<wbr/>physical<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010245 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010246 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010247 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010248 <span class="entry_type_container">x</span>
10249
10250 <span class="entry_type_array">
10251 2
10252 </span>
Timothy Knightec817d52013-08-16 16:15:29 -070010253 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010254 <div class="entry_type_notes">width x height in millimeters</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010255
10256
10257 </td> <!-- entry_type -->
10258
10259 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010260 <p>The physical dimensions of the full pixel
10261array</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010262 </td>
10263
10264 <td class="entry_units">
10265 </td>
10266
10267 <td class="entry_range">
10268 </td>
10269
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010270 <td class="entry_tags">
10271 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010272 <li><a href="#tag_V1">V1</a></li>
10273 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010274 </ul>
10275 </td>
10276
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010277 </tr>
10278 <tr class="entries_header">
10279 <th class="th_details" colspan="5">Details</th>
10280 </tr>
10281 <tr class="entry_cont">
10282 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010283 <p>Needed for FOV calculation for old API</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010284 </td>
10285 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010286
10287
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010288 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10289 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010290
10291
10292 <tr class="entry" id="static_android.sensor.info.pixelArraySize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010293 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010294 android.<wbr/>sensor.<wbr/>info.<wbr/>pixel<wbr/>Array<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010295 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010296 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010297 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010298 <span class="entry_type_container">x</span>
10299
10300 <span class="entry_type_array">
10301 2
10302 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010303 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010304
10305
10306 </td> <!-- entry_type -->
10307
10308 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010309 <p>Dimensions of full pixel array,<wbr/> possibly
10310including black calibration pixels</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010311 </td>
10312
10313 <td class="entry_units">
10314 </td>
10315
10316 <td class="entry_range">
10317 </td>
10318
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010319 <td class="entry_tags">
10320 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010321 <li><a href="#tag_DNG">DNG</a></li>
10322 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010323 </ul>
10324 </td>
10325
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010326 </tr>
10327 <tr class="entries_header">
10328 <th class="th_details" colspan="5">Details</th>
10329 </tr>
10330 <tr class="entry_cont">
10331 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010332 <p>Maximum output resolution for raw format must
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010333match this in
Igor Murashkin0b080452013-12-27 15:30:25 -080010334android.<wbr/>scaler.<wbr/>info.<wbr/>available<wbr/>Sizes<wbr/>Per<wbr/>Format</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010335 </td>
10336 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010337
10338
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010339 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10340 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010341
10342
10343 <tr class="entry" id="static_android.sensor.info.whiteLevel">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010344 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010345 android.<wbr/>sensor.<wbr/>info.<wbr/>white<wbr/>Level
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010346 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010347 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010348 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010349
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010350 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010351
10352
10353 </td> <!-- entry_type -->
10354
10355 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010356 <p>Maximum raw value output by
10357sensor</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010358 </td>
10359
10360 <td class="entry_units">
10361 </td>
10362
10363 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080010364 <p>&gt; 1024 (10-bit output)</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010365 </td>
10366
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010367 <td class="entry_tags">
10368 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010369 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010370 </ul>
10371 </td>
10372
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010373 </tr>
10374 <tr class="entries_header">
10375 <th class="th_details" colspan="5">Details</th>
10376 </tr>
10377 <tr class="entry_cont">
10378 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010379 <p>Defines sensor bit depth (10-14 bits is
10380expected)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010381 </td>
10382 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010383
10384
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010385 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10386 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010387
10388
10389
10390
10391
10392 <tr class="entry" id="static_android.sensor.baseGainFactor">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010393 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010394 android.<wbr/>sensor.<wbr/>base<wbr/>Gain<wbr/>Factor
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010395 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010396 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010397 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010398
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010399 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010400
10401
10402 </td> <!-- entry_type -->
10403
10404 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010405 <p>Gain factor from electrons to raw units when
10406ISO=100</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010407 </td>
10408
10409 <td class="entry_units">
10410 </td>
10411
10412 <td class="entry_range">
10413 </td>
10414
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010415 <td class="entry_tags">
10416 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010417 <li><a href="#tag_V1">V1</a></li>
Alex Rayef40ad62013-10-01 17:52:33 -070010418 <li><a href="#tag_FULL">FULL</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010419 </ul>
10420 </td>
10421
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010422 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010423
10424
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010425 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10426 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010427
10428
10429 <tr class="entry" id="static_android.sensor.blackLevelPattern">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010430 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010431 android.<wbr/>sensor.<wbr/>black<wbr/>Level<wbr/>Pattern
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010432 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010433 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010434 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010435 <span class="entry_type_container">x</span>
10436
10437 <span class="entry_type_array">
10438 4
10439 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010440 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010441 <div class="entry_type_notes">2x2 raw count block</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010442
10443
10444 </td> <!-- entry_type -->
10445
10446 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010447 <p>A fixed black level offset for each of the
10448Bayer mosaic channels</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010449 </td>
10450
10451 <td class="entry_units">
10452 </td>
10453
10454 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080010455 <p>&gt;= 0 each</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010456 </td>
10457
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010458 <td class="entry_tags">
10459 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010460 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010461 </ul>
10462 </td>
10463
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010464 </tr>
10465 <tr class="entries_header">
10466 <th class="th_details" colspan="5">Details</th>
10467 </tr>
10468 <tr class="entry_cont">
10469 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010470 <p>As per DNG BlackLevelRepeatDim /<wbr/> BlackLevel
10471tags</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010472 </td>
10473 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010474
10475
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010476 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10477 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010478
10479
10480 <tr class="entry" id="static_android.sensor.calibrationTransform1">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010481 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010482 android.<wbr/>sensor.<wbr/>calibration<wbr/>Transform1
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010483 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010484 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010485 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010486 <span class="entry_type_container">x</span>
10487
10488 <span class="entry_type_array">
10489 9
10490 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010491 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010492 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010493
10494
10495 </td> <!-- entry_type -->
10496
10497 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010498 <p>Per-device calibration on top of color space
10499transform 1</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010500 </td>
10501
10502 <td class="entry_units">
10503 </td>
10504
10505 <td class="entry_range">
10506 </td>
10507
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010508 <td class="entry_tags">
10509 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010510 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010511 </ul>
10512 </td>
10513
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010514 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010515
10516
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010517 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10518 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010519
10520
10521 <tr class="entry" id="static_android.sensor.calibrationTransform2">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010522 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010523 android.<wbr/>sensor.<wbr/>calibration<wbr/>Transform2
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010524 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010525 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010526 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010527 <span class="entry_type_container">x</span>
10528
10529 <span class="entry_type_array">
10530 9
10531 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010532 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010533 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010534
10535
10536 </td> <!-- entry_type -->
10537
10538 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010539 <p>Per-device calibration on top of color space
10540transform 2</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010541 </td>
10542
10543 <td class="entry_units">
10544 </td>
10545
10546 <td class="entry_range">
10547 </td>
10548
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010549 <td class="entry_tags">
10550 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010551 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010552 </ul>
10553 </td>
10554
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010555 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010556
10557
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010558 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10559 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010560
10561
10562 <tr class="entry" id="static_android.sensor.colorTransform1">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010563 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010564 android.<wbr/>sensor.<wbr/>color<wbr/>Transform1
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010565 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010566 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010567 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010568 <span class="entry_type_container">x</span>
10569
10570 <span class="entry_type_array">
10571 9
10572 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010573 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010574 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010575
10576
10577 </td> <!-- entry_type -->
10578
10579 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010580 <p>Linear mapping from XYZ (D50) color space to
10581reference linear sensor color,<wbr/> for first reference
10582illuminant</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010583 </td>
10584
10585 <td class="entry_units">
10586 </td>
10587
10588 <td class="entry_range">
10589 </td>
10590
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010591 <td class="entry_tags">
10592 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010593 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010594 </ul>
10595 </td>
10596
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010597 </tr>
10598 <tr class="entries_header">
10599 <th class="th_details" colspan="5">Details</th>
10600 </tr>
10601 <tr class="entry_cont">
10602 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010603 <p>Use as follows XYZ = inv(transform) * clip( (raw -
10604black level(raw) ) /<wbr/> ( white level - max black level) ).<wbr/>
10605At least in the simple case</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010606 </td>
10607 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010608
10609
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010610 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10611 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010612
10613
10614 <tr class="entry" id="static_android.sensor.colorTransform2">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010615 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010616 android.<wbr/>sensor.<wbr/>color<wbr/>Transform2
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010617 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010618 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010619 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010620 <span class="entry_type_container">x</span>
10621
10622 <span class="entry_type_array">
10623 9
10624 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010625 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010626 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010627
10628
10629 </td> <!-- entry_type -->
10630
10631 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010632 <p>Linear mapping from XYZ (D50) color space to
10633reference linear sensor color,<wbr/> for second reference
10634illuminant</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010635 </td>
10636
10637 <td class="entry_units">
10638 </td>
10639
10640 <td class="entry_range">
10641 </td>
10642
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010643 <td class="entry_tags">
10644 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010645 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010646 </ul>
10647 </td>
10648
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010649 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010650
10651
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010652 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10653 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010654
10655
10656 <tr class="entry" id="static_android.sensor.forwardMatrix1">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010657 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010658 android.<wbr/>sensor.<wbr/>forward<wbr/>Matrix1
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010659 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010660 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010661 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010662 <span class="entry_type_container">x</span>
10663
10664 <span class="entry_type_array">
10665 9
10666 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010667 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010668 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010669
10670
10671 </td> <!-- entry_type -->
10672
10673 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010674 <p>Used by DNG for better WB
10675adaptation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010676 </td>
10677
10678 <td class="entry_units">
10679 </td>
10680
10681 <td class="entry_range">
10682 </td>
10683
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010684 <td class="entry_tags">
10685 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010686 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010687 </ul>
10688 </td>
10689
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010690 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010691
10692
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010693 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10694 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010695
10696
10697 <tr class="entry" id="static_android.sensor.forwardMatrix2">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010698 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010699 android.<wbr/>sensor.<wbr/>forward<wbr/>Matrix2
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010700 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010701 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010702 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010703 <span class="entry_type_container">x</span>
10704
10705 <span class="entry_type_array">
10706 9
10707 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010708 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010709 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010710
10711
10712 </td> <!-- entry_type -->
10713
10714 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010715 <p>Used by DNG for better WB
10716adaptation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010717 </td>
10718
10719 <td class="entry_units">
10720 </td>
10721
10722 <td class="entry_range">
10723 </td>
10724
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010725 <td class="entry_tags">
10726 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010727 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010728 </ul>
10729 </td>
10730
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010731 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010732
10733
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010734 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10735 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010736
10737
10738 <tr class="entry" id="static_android.sensor.maxAnalogSensitivity">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010739 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010740 android.<wbr/>sensor.<wbr/>max<wbr/>Analog<wbr/>Sensitivity
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010741 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010742 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010743 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010744
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010745 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010746
10747
10748 </td> <!-- entry_type -->
10749
10750 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010751 <p>Maximum sensitivity that is implemented
10752purely through analog gain</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010753 </td>
10754
10755 <td class="entry_units">
10756 </td>
10757
10758 <td class="entry_range">
10759 </td>
10760
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010761 <td class="entry_tags">
10762 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010763 <li><a href="#tag_V1">V1</a></li>
Alex Rayef40ad62013-10-01 17:52:33 -070010764 <li><a href="#tag_FULL">FULL</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010765 </ul>
10766 </td>
10767
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010768 </tr>
10769 <tr class="entries_header">
10770 <th class="th_details" colspan="5">Details</th>
10771 </tr>
10772 <tr class="entry_cont">
10773 <td class="entry_details" colspan="5">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080010774 <p>For <a href="#controls_android.sensor.sensitivity">android.<wbr/>sensor.<wbr/>sensitivity</a> values less than or
Igor Murashkin0b080452013-12-27 15:30:25 -080010775equal to this,<wbr/> all applied gain must be analog.<wbr/> For
10776values above this,<wbr/> it can be a mix of analog and
10777digital</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010778 </td>
10779 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010780
10781
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010782 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10783 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010784
10785
10786 <tr class="entry" id="static_android.sensor.noiseModelCoefficients">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010787 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010788 android.<wbr/>sensor.<wbr/>noise<wbr/>Model<wbr/>Coefficients
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010789 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010790 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010791 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010792 <span class="entry_type_container">x</span>
10793
10794 <span class="entry_type_array">
10795 2
10796 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010797 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080010798 <div class="entry_type_notes">float constants A,<wbr/> B for the noise variance model</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010799
10800
10801 </td> <!-- entry_type -->
10802
10803 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010804 <p>Estimation of sensor noise
10805characteristics</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010806 </td>
10807
10808 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080010809 var(raw pixel value) = electrons * (baseGainFactor
10810 * iso/<wbr/>100)^2 + A * (baseGainFactor * iso/<wbr/>100)^2 +
10811 B
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010812 </td>
10813
10814 <td class="entry_range">
10815 </td>
10816
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010817 <td class="entry_tags">
10818 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010819 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010820 </ul>
10821 </td>
10822
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010823 </tr>
10824 <tr class="entries_header">
10825 <th class="th_details" colspan="5">Details</th>
10826 </tr>
10827 <tr class="entry_cont">
10828 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080010829 <p>A represents sensor read noise before analog
10830amplification; B represents noise from A/<wbr/>D conversion and
10831other circuits after amplification.<wbr/> Both noise sources
10832are assumed to be gaussian,<wbr/> independent,<wbr/> and not to vary
10833across the sensor</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010834 </td>
10835 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010836
10837
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010838 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10839 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010840
10841
10842 <tr class="entry" id="static_android.sensor.orientation">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010843 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080010844 android.<wbr/>sensor.<wbr/>orientation
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010845 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010846 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010847 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010848
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010849 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010850
10851
10852 </td> <!-- entry_type -->
10853
10854 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010855 <p>Clockwise angle through which the output
Igor Murashkin8aa2a112013-12-09 12:06:17 -080010856image needs to be rotated to be upright on the device
Igor Murashkin0b080452013-12-27 15:30:25 -080010857screen in its native orientation.<wbr/> Also defines the
10858direction of rolling shutter readout,<wbr/> which is from top
10859to bottom in the sensor's coordinate system</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010860 </td>
10861
10862 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080010863 degrees clockwise rotation,<wbr/> only multiples of
10864 90
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010865 </td>
10866
10867 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080010868 <p>0,<wbr/>90,<wbr/>180,<wbr/>270</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010869 </td>
10870
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010871 <td class="entry_tags">
10872 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010873 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010874 </ul>
10875 </td>
10876
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010877 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010878
10879
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010880 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
10881 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010882
10883
10884 <tr class="entry" id="static_android.sensor.referenceIlluminant1">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010885 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080010886 android.<wbr/>sensor.<wbr/>reference<wbr/>Illuminant1
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080010887 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010888 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010889 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010890
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010891 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010892
10893 <ul class="entry_type_enum">
10894 <li>
10895 <span class="entry_type_enum_name">DAYLIGHT</span>
10896 <span class="entry_type_enum_value">1</span>
10897 </li>
10898 <li>
10899 <span class="entry_type_enum_name">FLUORESCENT</span>
10900 <span class="entry_type_enum_value">2</span>
10901 </li>
10902 <li>
10903 <span class="entry_type_enum_name">TUNGSTEN</span>
10904 <span class="entry_type_enum_value">3</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010905 <span class="entry_type_enum_notes"><p>Incandescent light</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010906 </li>
10907 <li>
10908 <span class="entry_type_enum_name">FLASH</span>
10909 <span class="entry_type_enum_value">4</span>
10910 </li>
10911 <li>
10912 <span class="entry_type_enum_name">FINE_WEATHER</span>
10913 <span class="entry_type_enum_value">9</span>
10914 </li>
10915 <li>
10916 <span class="entry_type_enum_name">CLOUDY_WEATHER</span>
10917 <span class="entry_type_enum_value">10</span>
10918 </li>
10919 <li>
10920 <span class="entry_type_enum_name">SHADE</span>
10921 <span class="entry_type_enum_value">11</span>
10922 </li>
10923 <li>
10924 <span class="entry_type_enum_name">DAYLIGHT_FLUORESCENT</span>
10925 <span class="entry_type_enum_value">12</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010926 <span class="entry_type_enum_notes"><p>D 5700 - 7100K</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010927 </li>
10928 <li>
10929 <span class="entry_type_enum_name">DAY_WHITE_FLUORESCENT</span>
10930 <span class="entry_type_enum_value">13</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010931 <span class="entry_type_enum_notes"><p>N 4600 - 5400K</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010932 </li>
10933 <li>
10934 <span class="entry_type_enum_name">COOL_WHITE_FLUORESCENT</span>
10935 <span class="entry_type_enum_value">14</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010936 <span class="entry_type_enum_notes"><p>W 3900 - 4500K</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010937 </li>
10938 <li>
10939 <span class="entry_type_enum_name">WHITE_FLUORESCENT</span>
10940 <span class="entry_type_enum_value">15</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080010941 <span class="entry_type_enum_notes"><p>WW 3200 - 3700K</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010942 </li>
10943 <li>
10944 <span class="entry_type_enum_name">STANDARD_A</span>
10945 <span class="entry_type_enum_value">17</span>
10946 </li>
10947 <li>
10948 <span class="entry_type_enum_name">STANDARD_B</span>
10949 <span class="entry_type_enum_value">18</span>
10950 </li>
10951 <li>
10952 <span class="entry_type_enum_name">STANDARD_C</span>
10953 <span class="entry_type_enum_value">19</span>
10954 </li>
10955 <li>
10956 <span class="entry_type_enum_name">D55</span>
10957 <span class="entry_type_enum_value">20</span>
10958 </li>
10959 <li>
10960 <span class="entry_type_enum_name">D65</span>
10961 <span class="entry_type_enum_value">21</span>
10962 </li>
10963 <li>
10964 <span class="entry_type_enum_name">D75</span>
10965 <span class="entry_type_enum_value">22</span>
10966 </li>
10967 <li>
10968 <span class="entry_type_enum_name">D50</span>
10969 <span class="entry_type_enum_value">23</span>
10970 </li>
10971 <li>
10972 <span class="entry_type_enum_name">ISO_STUDIO_TUNGSTEN</span>
10973 <span class="entry_type_enum_value">24</span>
10974 </li>
10975 </ul>
10976
10977 </td> <!-- entry_type -->
10978
10979 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080010980 <p>Light source used to define transform
109811</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010982 </td>
10983
10984 <td class="entry_units">
10985 </td>
10986
10987 <td class="entry_range">
10988 </td>
10989
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010990 <td class="entry_tags">
10991 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010992 <li><a href="#tag_DNG">DNG</a></li>
10993 <li><a href="#tag_EXIF">EXIF</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010994 </ul>
10995 </td>
10996
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080010997 </tr>
10998 <tr class="entries_header">
10999 <th class="th_details" colspan="5">Details</th>
11000 </tr>
11001 <tr class="entry_cont">
11002 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011003 <p>[EXIF LightSource tag] Must all these be
11004supported? Need CCT for each!</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011005 </td>
11006 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011007
11008
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011009 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11010 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011011
11012
11013 <tr class="entry" id="static_android.sensor.referenceIlluminant2">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011014 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011015 android.<wbr/>sensor.<wbr/>reference<wbr/>Illuminant2
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011016 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011017 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011018 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011019
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011020 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011021
11022
11023 </td> <!-- entry_type -->
11024
11025 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011026 <p>Light source used to define transform
110272</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011028 </td>
11029
11030 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011031 Same as illuminant 1
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011032 </td>
11033
11034 <td class="entry_range">
11035 </td>
11036
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011037 <td class="entry_tags">
11038 </td>
11039
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011040 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011041
11042
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011043 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11044 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011045
11046
11047
11048 <!-- end of kind -->
11049 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011050 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011051
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011052 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011053 <tr>
11054 <th class="th_name">Property Name</th>
11055 <th class="th_type">Type</th>
11056 <th class="th_description">Description</th>
11057 <th class="th_units">Units</th>
11058 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011059 <th class="th_tags">Tags</th>
11060 </tr>
11061 </thead>
11062
11063 <tbody>
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074 <tr class="entry" id="dynamic_android.sensor.exposureTime">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011075 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011076 android.<wbr/>sensor.<wbr/>exposure<wbr/>Time
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011077 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011078 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011079 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011080
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011081 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011082
11083
11084 </td> <!-- entry_type -->
11085
11086 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011087 <p>Duration each pixel is exposed to
11088light.<wbr/></p>
11089<p>If the sensor can't expose this exact duration,<wbr/> it should shorten the
11090duration exposed to the nearest possible value (rather than expose longer).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011091 </td>
11092
11093 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011094 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011095 </td>
11096
11097 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011098 <p><a href="#static_android.sensor.info.exposureTimeRange">android.<wbr/>sensor.<wbr/>info.<wbr/>exposure<wbr/>Time<wbr/>Range</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011099 </td>
11100
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011101 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011102 <ul class="entry_tags">
11103 <li><a href="#tag_V1">V1</a></li>
11104 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011105 </td>
11106
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011107 </tr>
11108 <tr class="entries_header">
11109 <th class="th_details" colspan="5">Details</th>
11110 </tr>
11111 <tr class="entry_cont">
11112 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011113 <p>1/<wbr/>10000 - 30 sec range.<wbr/> No bulb mode</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011114 </td>
11115 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011116
11117
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011118 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11119 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011120
11121
11122 <tr class="entry" id="dynamic_android.sensor.frameDuration">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011123 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011124 android.<wbr/>sensor.<wbr/>frame<wbr/>Duration
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011125 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011126 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011127 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011128
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011129 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011130
11131
11132 </td> <!-- entry_type -->
11133
11134 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011135 <p>Duration from start of frame exposure to
11136start of next frame exposure</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011137 </td>
11138
11139 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011140 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011141 </td>
11142
11143 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011144 <p>see <a href="#static_android.sensor.info.maxFrameDuration">android.<wbr/>sensor.<wbr/>info.<wbr/>max<wbr/>Frame<wbr/>Duration</a>,<wbr/>
11145android.<wbr/>scaler.<wbr/>info.<wbr/>available<wbr/>Min<wbr/>Frame<wbr/>Durations</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011146 </td>
11147
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011148 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011149 <ul class="entry_tags">
11150 <li><a href="#tag_V1">V1</a></li>
11151 <li><a href="#tag_BC">BC</a></li>
11152 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011153 </td>
11154
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011155 </tr>
11156 <tr class="entries_header">
11157 <th class="th_details" colspan="5">Details</th>
11158 </tr>
11159 <tr class="entry_cont">
11160 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011161 <p>Exposure time has priority,<wbr/> so duration is set to
11162max(duration,<wbr/> exposure time + overhead)</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011163 </td>
11164 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011165
11166
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011167 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11168 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011169
11170
11171 <tr class="entry" id="dynamic_android.sensor.sensitivity">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011172 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011173 android.<wbr/>sensor.<wbr/>sensitivity
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011174 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011175 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011176 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011177
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011178 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011179
11180
11181 </td> <!-- entry_type -->
11182
11183 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011184 <p>Gain applied to image data.<wbr/> Must be
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011185implemented through analog gain only if set to values
Igor Murashkin0b080452013-12-27 15:30:25 -080011186below 'maximum analog sensitivity'.<wbr/></p>
11187<p>If the sensor can't apply this exact gain,<wbr/> it should lessen the
11188gain to the nearest possible value (rather than gain more).<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011189 </td>
11190
11191 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011192 ISO arithmetic units
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011193 </td>
11194
11195 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011196 <p><a href="#static_android.sensor.info.sensitivityRange">android.<wbr/>sensor.<wbr/>info.<wbr/>sensitivity<wbr/>Range</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011197 </td>
11198
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011199 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011200 <ul class="entry_tags">
11201 <li><a href="#tag_V1">V1</a></li>
11202 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011203 </td>
11204
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011205 </tr>
11206 <tr class="entries_header">
11207 <th class="th_details" colspan="5">Details</th>
11208 </tr>
11209 <tr class="entry_cont">
11210 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011211 <p>ISO 12232:2006 REI method</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011212 </td>
11213 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011214
11215
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011216 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11217 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011218
11219
11220 <tr class="entry" id="dynamic_android.sensor.timestamp">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011221 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011222 android.<wbr/>sensor.<wbr/>timestamp
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011223 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011224 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011225 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011226
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011227 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011228
11229
11230 </td> <!-- entry_type -->
11231
11232 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011233 <p>Time at start of exposure of first
11234row</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011235 </td>
11236
11237 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011238 nanoseconds
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011239 </td>
11240
11241 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080011242 <p>&gt; 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011243 </td>
11244
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011245 <td class="entry_tags">
11246 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011247 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011248 </ul>
11249 </td>
11250
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011251 </tr>
11252 <tr class="entries_header">
11253 <th class="th_details" colspan="5">Details</th>
11254 </tr>
11255 <tr class="entry_cont">
11256 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011257 <p>Monotonic,<wbr/> should be synced to other timestamps in
11258system</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011259 </td>
11260 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011261
11262
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011263 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11264 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011265
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011266
11267 <tr class="entry" id="dynamic_android.sensor.temperature">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011268 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011269 android.<wbr/>sensor.<wbr/>temperature
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011270 </td>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011271 <td class="entry_type">
11272 <span class="entry_type_name">float</span>
11273
11274 <span class="entry_type_visibility"> [public]</span>
11275
11276
11277 </td> <!-- entry_type -->
11278
11279 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011280 <p>The temperature of the sensor,<wbr/> sampled at the time
11281exposure began for this frame.<wbr/></p>
11282<p>The thermal diode being queried should be inside the sensor PCB,<wbr/> or
11283somewhere close to it.<wbr/></p>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011284 </td>
11285
11286 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011287 celsius
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011288 </td>
11289
11290 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011291 <p>Optional.<wbr/> This value is missing if no temperature is available.<wbr/></p>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011292 </td>
11293
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011294 <td class="entry_tags">
Alex Rayef40ad62013-10-01 17:52:33 -070011295 <ul class="entry_tags">
11296 <li><a href="#tag_FULL">FULL</a></li>
11297 </ul>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011298 </td>
11299
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011300 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011301
11302
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011303 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11304 <!-- end of entry -->
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011305
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011306
11307
11308 <!-- end of kind -->
11309 </tbody>
11310
11311 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011312 <tr><td colspan="6" id="section_shading" class="section">shading</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011313
11314
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011315 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011316
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011317 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011318 <tr>
11319 <th class="th_name">Property Name</th>
11320 <th class="th_type">Type</th>
11321 <th class="th_description">Description</th>
11322 <th class="th_units">Units</th>
11323 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011324 <th class="th_tags">Tags</th>
11325 </tr>
11326 </thead>
11327
11328 <tbody>
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339 <tr class="entry" id="controls_android.shading.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011340 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011341 android.<wbr/>shading.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011342 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011343 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011344 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011345
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011346 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011347
11348 <ul class="entry_type_enum">
11349 <li>
11350 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011351 <span class="entry_type_enum_notes"><p>No shading correction is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011352 </li>
11353 <li>
11354 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011355 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
11356bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011357 </li>
11358 <li>
11359 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011360 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
11361quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011362 </li>
11363 </ul>
11364
11365 </td> <!-- entry_type -->
11366
11367 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011368 <p>Quality of lens shading correction applied
11369to the image data</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011370 </td>
11371
11372 <td class="entry_units">
11373 </td>
11374
11375 <td class="entry_range">
11376 </td>
11377
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011378 <td class="entry_tags">
11379 </td>
11380
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011381 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011382
11383
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011384 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11385 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011386
11387
11388 <tr class="entry" id="controls_android.shading.strength">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011389 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011390 android.<wbr/>shading.<wbr/>strength
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011391 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011392 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011393 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011394
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011395 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011396
11397
11398 </td> <!-- entry_type -->
11399
11400 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011401 <p>Control the amount of shading correction
11402applied to the images</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011403 </td>
11404
11405 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011406 unitless: 1-10; 10 is full shading
11407 compensation
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011408 </td>
11409
11410 <td class="entry_range">
11411 </td>
11412
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011413 <td class="entry_tags">
11414 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011415 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011416 </ul>
11417 </td>
11418
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011419 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011420
11421
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011422 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11423 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011424
11425
11426
11427 <!-- end of kind -->
11428 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011429 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011430
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011431 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011432 <tr>
11433 <th class="th_name">Property Name</th>
11434 <th class="th_type">Type</th>
11435 <th class="th_description">Description</th>
11436 <th class="th_units">Units</th>
11437 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011438 <th class="th_tags">Tags</th>
11439 </tr>
11440 </thead>
11441
11442 <tbody>
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453 <tr class="entry" id="dynamic_android.shading.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011454 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011455 android.<wbr/>shading.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011456 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011457 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011458 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011459
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011460 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011461
11462 <ul class="entry_type_enum">
11463 <li>
11464 <span class="entry_type_enum_name">OFF</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011465 <span class="entry_type_enum_notes"><p>No shading correction is applied</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011466 </li>
11467 <li>
11468 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011469 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
11470bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011471 </li>
11472 <li>
11473 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011474 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
11475quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011476 </li>
11477 </ul>
11478
11479 </td> <!-- entry_type -->
11480
11481 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011482 <p>Quality of lens shading correction applied
11483to the image data</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011484 </td>
11485
11486 <td class="entry_units">
11487 </td>
11488
11489 <td class="entry_range">
11490 </td>
11491
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011492 <td class="entry_tags">
11493 </td>
11494
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011495 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011496
11497
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011498 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11499 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011500
11501
11502
11503 <!-- end of kind -->
11504 </tbody>
11505
11506 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011507 <tr><td colspan="6" id="section_statistics" class="section">statistics</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011508
11509
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011510 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011511
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011512 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011513 <tr>
11514 <th class="th_name">Property Name</th>
11515 <th class="th_type">Type</th>
11516 <th class="th_description">Description</th>
11517 <th class="th_units">Units</th>
11518 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011519 <th class="th_tags">Tags</th>
11520 </tr>
11521 </thead>
11522
11523 <tbody>
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534 <tr class="entry" id="controls_android.statistics.faceDetectMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011535 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011536 android.<wbr/>statistics.<wbr/>face<wbr/>Detect<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011537 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011538 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011539 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011540
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011541 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011542
11543 <ul class="entry_type_enum">
11544 <li>
11545 <span class="entry_type_enum_name">OFF</span>
11546 </li>
11547 <li>
11548 <span class="entry_type_enum_name">SIMPLE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011549 <span class="entry_type_enum_notes"><p>Optional Return rectangle and confidence
11550only</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011551 </li>
11552 <li>
11553 <span class="entry_type_enum_name">FULL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080011554 <span class="entry_type_enum_notes"><p>Optional Return all face
11555metadata</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011556 </li>
11557 </ul>
11558
11559 </td> <!-- entry_type -->
11560
11561 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011562 <p>State of the face detector
11563unit</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011564 </td>
11565
11566 <td class="entry_units">
11567 </td>
11568
11569 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011570 <p><a href="#static_android.statistics.info.availableFaceDetectModes">android.<wbr/>statistics.<wbr/>info.<wbr/>available<wbr/>Face<wbr/>Detect<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011571 </td>
11572
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011573 <td class="entry_tags">
11574 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011575 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011576 </ul>
11577 </td>
11578
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011579 </tr>
11580 <tr class="entries_header">
11581 <th class="th_details" colspan="5">Details</th>
11582 </tr>
11583 <tr class="entry_cont">
11584 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011585 <p>Whether face detection is enabled,<wbr/> and whether it
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011586should output just the basic fields or the full set of
Igor Murashkin0b080452013-12-27 15:30:25 -080011587fields.<wbr/> Value must be one of the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011588<a href="#static_android.statistics.info.availableFaceDetectModes">android.<wbr/>statistics.<wbr/>info.<wbr/>available<wbr/>Face<wbr/>Detect<wbr/>Modes</a>.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011589 </td>
11590 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011591
11592
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011593 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11594 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011595
11596
11597 <tr class="entry" id="controls_android.statistics.histogramMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011598 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011599 android.<wbr/>statistics.<wbr/>histogram<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011600 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011601 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011602 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011603
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011604 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011605
11606 <ul class="entry_type_enum">
11607 <li>
11608 <span class="entry_type_enum_name">OFF</span>
11609 </li>
11610 <li>
11611 <span class="entry_type_enum_name">ON</span>
11612 </li>
11613 </ul>
11614
11615 </td> <!-- entry_type -->
11616
11617 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011618 <p>Operating mode for histogram
11619generation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011620 </td>
11621
11622 <td class="entry_units">
11623 </td>
11624
11625 <td class="entry_range">
11626 </td>
11627
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011628 <td class="entry_tags">
11629 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011630 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011631 </ul>
11632 </td>
11633
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011634 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011635
11636
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011637 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11638 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011639
11640
11641 <tr class="entry" id="controls_android.statistics.sharpnessMapMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011642 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011643 android.<wbr/>statistics.<wbr/>sharpness<wbr/>Map<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011644 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011645 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011646 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011647
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011648 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011649
11650 <ul class="entry_type_enum">
11651 <li>
11652 <span class="entry_type_enum_name">OFF</span>
11653 </li>
11654 <li>
11655 <span class="entry_type_enum_name">ON</span>
11656 </li>
11657 </ul>
11658
11659 </td> <!-- entry_type -->
11660
11661 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011662 <p>Operating mode for sharpness map
11663generation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011664 </td>
11665
11666 <td class="entry_units">
11667 </td>
11668
11669 <td class="entry_range">
11670 </td>
11671
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011672 <td class="entry_tags">
11673 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080011674 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011675 </ul>
11676 </td>
11677
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011678 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011679
11680
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011681 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11682 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011683
Zhijun He69fc0ea2013-07-17 09:42:58 -070011684
11685 <tr class="entry" id="controls_android.statistics.lensShadingMapMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011686 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011687 android.<wbr/>statistics.<wbr/>lens<wbr/>Shading<wbr/>Map<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011688 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011689 <td class="entry_type">
11690 <span class="entry_type_name entry_type_name_enum">byte</span>
11691
11692 <span class="entry_type_visibility"> [public]</span>
11693
11694 <ul class="entry_type_enum">
11695 <li>
11696 <span class="entry_type_enum_name">OFF</span>
11697 </li>
11698 <li>
11699 <span class="entry_type_enum_name">ON</span>
11700 </li>
11701 </ul>
11702
11703 </td> <!-- entry_type -->
11704
11705 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011706 <p>Whether the HAL needs to output the lens
11707shading map in output result metadata</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011708 </td>
11709
11710 <td class="entry_units">
11711 </td>
11712
11713 <td class="entry_range">
11714 </td>
11715
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011716 <td class="entry_tags">
11717 </td>
11718
11719 </tr>
11720 <tr class="entries_header">
11721 <th class="th_details" colspan="5">Details</th>
11722 </tr>
11723 <tr class="entry_cont">
11724 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011725 <p>When set to ON,<wbr/>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011726<a href="#dynamic_android.statistics.lensShadingMap">android.<wbr/>statistics.<wbr/>lens<wbr/>Shading<wbr/>Map</a> must be provided in
Igor Murashkin0b080452013-12-27 15:30:25 -080011727the output result metadata.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011728 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011729 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011730
11731
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011732 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11733 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070011734
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011735
11736
11737 <!-- end of kind -->
11738 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011739 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011740
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011741 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011742 <tr>
11743 <th class="th_name">Property Name</th>
11744 <th class="th_type">Type</th>
11745 <th class="th_description">Description</th>
11746 <th class="th_units">Units</th>
11747 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011748 <th class="th_tags">Tags</th>
11749 </tr>
11750 </thead>
11751
11752 <tbody>
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765 <tr class="entry" id="static_android.statistics.info.availableFaceDetectModes">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011766 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080011767 android.<wbr/>statistics.<wbr/>info.<wbr/>available<wbr/>Face<wbr/>Detect<wbr/>Modes
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011768 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011769 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011770 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011771 <span class="entry_type_container">x</span>
11772
11773 <span class="entry_type_array">
11774 n
11775 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011776 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080011777 <div class="entry_type_notes">List of enums from android.<wbr/>statistics.<wbr/>face<wbr/>Detect<wbr/>Mode</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011778
11779
11780 </td> <!-- entry_type -->
11781
11782 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011783 <p>Which face detection modes are available,<wbr/>
11784if any</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011785 </td>
11786
11787 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080011788 List of enum:
Zhijun He69fc0ea2013-07-17 09:42:58 -070011789 OFF
11790 SIMPLE
Igor Murashkin0b080452013-12-27 15:30:25 -080011791 FULL
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011792 </td>
11793
11794 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011795 </td>
11796
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011797 <td class="entry_tags">
11798 </td>
11799
11800 </tr>
11801 <tr class="entries_header">
11802 <th class="th_details" colspan="5">Details</th>
11803 </tr>
11804 <tr class="entry_cont">
11805 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080011806 <p>OFF means face detection is disabled,<wbr/> it must
11807be included in the list.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011808<p>SIMPLE means the device supports the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011809<a href="#dynamic_android.statistics.faceRectangles">android.<wbr/>statistics.<wbr/>face<wbr/>Rectangles</a> and
11810<a href="#dynamic_android.statistics.faceScores">android.<wbr/>statistics.<wbr/>face<wbr/>Scores</a> outputs.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080011811<p>FULL means the device additionally supports the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011812<a href="#dynamic_android.statistics.faceIds">android.<wbr/>statistics.<wbr/>face<wbr/>Ids</a> and
11813<a href="#dynamic_android.statistics.faceLandmarks">android.<wbr/>statistics.<wbr/>face<wbr/>Landmarks</a> outputs.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011814 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011815 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011816
11817
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011818 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11819 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011820
11821
11822 <tr class="entry" id="static_android.statistics.info.histogramBucketCount">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011823 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011824 android.<wbr/>statistics.<wbr/>info.<wbr/>histogram<wbr/>Bucket<wbr/>Count
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011825 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011826 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011827 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011828
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011829 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011830
11831
11832 </td> <!-- entry_type -->
11833
11834 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011835 <p>Number of histogram buckets
11836supported</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011837 </td>
11838
11839 <td class="entry_units">
11840 </td>
11841
11842 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080011843 <p>&gt;= 64</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011844 </td>
11845
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011846 <td class="entry_tags">
11847 </td>
11848
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011849 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011850
11851
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011852 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11853 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011854
11855
11856 <tr class="entry" id="static_android.statistics.info.maxFaceCount">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011857 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011858 android.<wbr/>statistics.<wbr/>info.<wbr/>max<wbr/>Face<wbr/>Count
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011859 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011860 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011861 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011862
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011863 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011864
11865
11866 </td> <!-- entry_type -->
11867
11868 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011869 <p>Maximum number of simultaneously detectable
11870faces</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011871 </td>
11872
11873 <td class="entry_units">
11874 </td>
11875
11876 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080011877 <p>&gt;= 4 if availableFaceDetectionModes lists
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011878modes besides OFF,<wbr/> otherwise 0</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011879 </td>
11880
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011881 <td class="entry_tags">
11882 </td>
11883
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011884 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011885
11886
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011887 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11888 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011889
11890
11891 <tr class="entry" id="static_android.statistics.info.maxHistogramCount">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011892 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011893 android.<wbr/>statistics.<wbr/>info.<wbr/>max<wbr/>Histogram<wbr/>Count
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011894 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011895 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011896 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011897
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011898 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011899
11900
11901 </td> <!-- entry_type -->
11902
11903 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011904 <p>Maximum value possible for a histogram
11905bucket</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011906 </td>
11907
11908 <td class="entry_units">
11909 </td>
11910
11911 <td class="entry_range">
11912 </td>
11913
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011914 <td class="entry_tags">
11915 </td>
11916
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011917 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011918
11919
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011920 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11921 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011922
11923
11924 <tr class="entry" id="static_android.statistics.info.maxSharpnessMapValue">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011925 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011926 android.<wbr/>statistics.<wbr/>info.<wbr/>max<wbr/>Sharpness<wbr/>Map<wbr/>Value
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011927 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011928 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011929 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011930
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070011931 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011932
11933
11934 </td> <!-- entry_type -->
11935
11936 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011937 <p>Maximum value possible for a sharpness map
11938region.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011939 </td>
11940
11941 <td class="entry_units">
11942 </td>
11943
11944 <td class="entry_range">
11945 </td>
11946
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011947 <td class="entry_tags">
11948 </td>
11949
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011950 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011951
11952
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011953 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11954 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011955
11956
11957 <tr class="entry" id="static_android.statistics.info.sharpnessMapSize">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011958 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080011959 android.<wbr/>statistics.<wbr/>info.<wbr/>sharpness<wbr/>Map<wbr/>Size
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011960 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011961 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080011962 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011963 <span class="entry_type_container">x</span>
11964
11965 <span class="entry_type_array">
11966 2
11967 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011968 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080011969 <div class="entry_type_notes">width x height</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011970
11971
11972 </td> <!-- entry_type -->
11973
11974 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080011975 <p>Dimensions of the sharpness
11976map</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011977 </td>
11978
11979 <td class="entry_units">
11980 </td>
11981
11982 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080011983 <p>Must be at least 32 x 32</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011984 </td>
11985
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011986 <td class="entry_tags">
11987 </td>
11988
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011989 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080011990
11991
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080011992 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
11993 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011994
11995
11996
11997
11998
11999
12000 <!-- end of kind -->
12001 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012002 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012003
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012004 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012005 <tr>
12006 <th class="th_name">Property Name</th>
12007 <th class="th_type">Type</th>
12008 <th class="th_description">Description</th>
12009 <th class="th_units">Units</th>
12010 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012011 <th class="th_tags">Tags</th>
12012 </tr>
12013 </thead>
12014
12015 <tbody>
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026 <tr class="entry" id="dynamic_android.statistics.faceDetectMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012027 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012028 android.<wbr/>statistics.<wbr/>face<wbr/>Detect<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012029 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012030 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012031 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012032
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012033 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012034
12035 <ul class="entry_type_enum">
12036 <li>
12037 <span class="entry_type_enum_name">OFF</span>
12038 </li>
12039 <li>
12040 <span class="entry_type_enum_name">SIMPLE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080012041 <span class="entry_type_enum_notes"><p>Optional Return rectangle and confidence
12042only</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012043 </li>
12044 <li>
12045 <span class="entry_type_enum_name">FULL</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080012046 <span class="entry_type_enum_notes"><p>Optional Return all face
12047metadata</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012048 </li>
12049 </ul>
12050
12051 </td> <!-- entry_type -->
12052
12053 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012054 <p>State of the face detector
12055unit</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012056 </td>
12057
12058 <td class="entry_units">
12059 </td>
12060
12061 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012062 <p><a href="#static_android.statistics.info.availableFaceDetectModes">android.<wbr/>statistics.<wbr/>info.<wbr/>available<wbr/>Face<wbr/>Detect<wbr/>Modes</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012063 </td>
12064
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012065 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012066 <ul class="entry_tags">
12067 <li><a href="#tag_BC">BC</a></li>
12068 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012069 </td>
12070
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012071 </tr>
12072 <tr class="entries_header">
12073 <th class="th_details" colspan="5">Details</th>
12074 </tr>
12075 <tr class="entry_cont">
12076 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012077 <p>Whether face detection is enabled,<wbr/> and whether it
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012078should output just the basic fields or the full set of
Igor Murashkin0b080452013-12-27 15:30:25 -080012079fields.<wbr/> Value must be one of the
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012080<a href="#static_android.statistics.info.availableFaceDetectModes">android.<wbr/>statistics.<wbr/>info.<wbr/>available<wbr/>Face<wbr/>Detect<wbr/>Modes</a>.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012081 </td>
12082 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012083
12084
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012085 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12086 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012087
12088
12089 <tr class="entry" id="dynamic_android.statistics.faceIds">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012090 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012091 android.<wbr/>statistics.<wbr/>face<wbr/>Ids
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012092 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012093 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012094 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012095 <span class="entry_type_container">x</span>
12096
12097 <span class="entry_type_array">
12098 n
12099 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -070012100 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012101
12102
12103 </td> <!-- entry_type -->
12104
12105 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012106 <p>List of unique IDs for detected
12107faces</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012108 </td>
12109
12110 <td class="entry_units">
12111 </td>
12112
12113 <td class="entry_range">
12114 </td>
12115
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012116 <td class="entry_tags">
12117 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012118 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012119 </ul>
12120 </td>
12121
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012122 </tr>
12123 <tr class="entries_header">
12124 <th class="th_details" colspan="5">Details</th>
12125 </tr>
12126 <tr class="entry_cont">
12127 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012128 <p>Only available if faceDetectMode == FULL</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012129 </td>
12130 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012131
12132
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012133 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12134 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012135
12136
12137 <tr class="entry" id="dynamic_android.statistics.faceLandmarks">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012138 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012139 android.<wbr/>statistics.<wbr/>face<wbr/>Landmarks
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012140 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012141 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012142 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012143 <span class="entry_type_container">x</span>
12144
12145 <span class="entry_type_array">
12146 n x 6
12147 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -070012148 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012149 <div class="entry_type_notes">(leftEyeX,<wbr/> leftEyeY,<wbr/> rightEyeX,<wbr/> rightEyeY,<wbr/> mouthX,<wbr/> mouthY)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012150
12151
12152 </td> <!-- entry_type -->
12153
12154 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012155 <p>List of landmarks for detected
12156faces</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012157 </td>
12158
12159 <td class="entry_units">
12160 </td>
12161
12162 <td class="entry_range">
12163 </td>
12164
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012165 <td class="entry_tags">
12166 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012167 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012168 </ul>
12169 </td>
12170
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012171 </tr>
12172 <tr class="entries_header">
12173 <th class="th_details" colspan="5">Details</th>
12174 </tr>
12175 <tr class="entry_cont">
12176 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012177 <p>Only available if faceDetectMode == FULL</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012178 </td>
12179 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012180
12181
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012182 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12183 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012184
12185
12186 <tr class="entry" id="dynamic_android.statistics.faceRectangles">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012187 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012188 android.<wbr/>statistics.<wbr/>face<wbr/>Rectangles
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012189 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012190 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012191 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012192 <span class="entry_type_container">x</span>
12193
12194 <span class="entry_type_array">
12195 n x 4
12196 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -070012197 <span class="entry_type_visibility"> [hidden as rectangle]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012198 <div class="entry_type_notes">(xmin,<wbr/> ymin,<wbr/> xmax,<wbr/> ymax).<wbr/> (0,<wbr/>0) is top-left of active pixel area</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012199
12200
12201 </td> <!-- entry_type -->
12202
12203 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012204 <p>List of the bounding rectangles for detected
12205faces</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012206 </td>
12207
12208 <td class="entry_units">
12209 </td>
12210
12211 <td class="entry_range">
12212 </td>
12213
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012214 <td class="entry_tags">
12215 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012216 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012217 </ul>
12218 </td>
12219
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012220 </tr>
12221 <tr class="entries_header">
12222 <th class="th_details" colspan="5">Details</th>
12223 </tr>
12224 <tr class="entry_cont">
12225 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012226 <p>Only available if faceDetectMode != OFF</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012227 </td>
12228 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012229
12230
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012231 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12232 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012233
12234
12235 <tr class="entry" id="dynamic_android.statistics.faceScores">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012236 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012237 android.<wbr/>statistics.<wbr/>face<wbr/>Scores
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012238 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012239 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012240 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012241 <span class="entry_type_container">x</span>
12242
12243 <span class="entry_type_array">
12244 n
12245 </span>
Zhijun He3b4c2062013-10-07 11:23:30 -070012246 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012247
12248
12249 </td> <!-- entry_type -->
12250
12251 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012252 <p>List of the face confidence scores for
12253detected faces</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012254 </td>
12255
12256 <td class="entry_units">
12257 </td>
12258
12259 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012260 <p>1-100</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012261 </td>
12262
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012263 <td class="entry_tags">
12264 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012265 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012266 </ul>
12267 </td>
12268
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012269 </tr>
12270 <tr class="entries_header">
12271 <th class="th_details" colspan="5">Details</th>
12272 </tr>
12273 <tr class="entry_cont">
12274 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012275 <p>Only available if faceDetectMode != OFF.<wbr/> The value should be
12276meaningful (for example,<wbr/> setting 100 at all times is illegal).<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012277 </td>
12278 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012279
12280
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012281 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12282 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012283
12284
12285 <tr class="entry" id="dynamic_android.statistics.histogram">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012286 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012287 android.<wbr/>statistics.<wbr/>histogram
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012288 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012289 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012290 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012291 <span class="entry_type_container">x</span>
12292
12293 <span class="entry_type_array">
12294 n x 3
12295 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012296 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012297 <div class="entry_type_notes">count of pixels for each color channel that fall into each histogram bucket,<wbr/> scaled to be between 0 and maxHistogramCount</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012298
12299
12300 </td> <!-- entry_type -->
12301
12302 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012303 <p>A 3-channel histogram based on the raw
12304sensor data</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012305 </td>
12306
12307 <td class="entry_units">
12308 </td>
12309
12310 <td class="entry_range">
12311 </td>
12312
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012313 <td class="entry_tags">
12314 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012315 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012316 </ul>
12317 </td>
12318
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012319 </tr>
12320 <tr class="entries_header">
12321 <th class="th_details" colspan="5">Details</th>
12322 </tr>
12323 <tr class="entry_cont">
12324 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012325 <p>The k'th bucket (0-based) covers the input range
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012326(with w = <a href="#static_android.sensor.info.whiteLevel">android.<wbr/>sensor.<wbr/>info.<wbr/>white<wbr/>Level</a>) of [ k * w/<wbr/>N,<wbr/>
Igor Murashkin0b080452013-12-27 15:30:25 -080012327(k + 1) * w /<wbr/> N ).<wbr/> If only a monochrome sharpness map is
12328supported,<wbr/> all channels should have the same data</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012329 </td>
12330 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012331
12332
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012333 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12334 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012335
12336
12337 <tr class="entry" id="dynamic_android.statistics.histogramMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012338 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080012339 android.<wbr/>statistics.<wbr/>histogram<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012340 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012341 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012342 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012343
Igor Murashkinb8dc8812013-07-17 16:29:34 -070012344 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012345
12346 <ul class="entry_type_enum">
12347 <li>
12348 <span class="entry_type_enum_name">OFF</span>
12349 </li>
12350 <li>
12351 <span class="entry_type_enum_name">ON</span>
12352 </li>
12353 </ul>
12354
12355 </td> <!-- entry_type -->
12356
12357 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012358 <p>Operating mode for histogram
12359generation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012360 </td>
12361
12362 <td class="entry_units">
12363 </td>
12364
12365 <td class="entry_range">
12366 </td>
12367
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012368 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012369 <ul class="entry_tags">
12370 <li><a href="#tag_V1">V1</a></li>
12371 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012372 </td>
12373
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012374 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012375
12376
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012377 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12378 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012379
12380
12381 <tr class="entry" id="dynamic_android.statistics.sharpnessMap">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012382 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012383 android.<wbr/>statistics.<wbr/>sharpness<wbr/>Map
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012384 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012385 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012386 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012387 <span class="entry_type_container">x</span>
12388
12389 <span class="entry_type_array">
12390 n x m x 3
12391 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012392 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012393 <div class="entry_type_notes">estimated sharpness for each region of the input image.<wbr/> Normalized to be between 0 and maxSharpnessMapValue.<wbr/> Higher values mean sharper (better focused)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012394
12395
12396 </td> <!-- entry_type -->
12397
12398 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012399 <p>A 3-channel sharpness map,<wbr/> based on the raw
12400sensor data</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012401 </td>
12402
12403 <td class="entry_units">
12404 </td>
12405
12406 <td class="entry_range">
12407 </td>
12408
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012409 <td class="entry_tags">
12410 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012411 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012412 </ul>
12413 </td>
12414
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012415 </tr>
12416 <tr class="entries_header">
12417 <th class="th_details" colspan="5">Details</th>
12418 </tr>
12419 <tr class="entry_cont">
12420 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012421 <p>If only a monochrome sharpness map is supported,<wbr/>
12422all channels should have the same data</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012423 </td>
12424 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012425
12426
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012427 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12428 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012429
12430
12431 <tr class="entry" id="dynamic_android.statistics.sharpnessMapMode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012432 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080012433 android.<wbr/>statistics.<wbr/>sharpness<wbr/>Map<wbr/>Mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012434 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012435 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012436 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012437
Igor Murashkinb8dc8812013-07-17 16:29:34 -070012438 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012439
12440 <ul class="entry_type_enum">
12441 <li>
12442 <span class="entry_type_enum_name">OFF</span>
12443 </li>
12444 <li>
12445 <span class="entry_type_enum_name">ON</span>
12446 </li>
12447 </ul>
12448
12449 </td> <!-- entry_type -->
12450
12451 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012452 <p>Operating mode for sharpness map
12453generation</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012454 </td>
12455
12456 <td class="entry_units">
12457 </td>
12458
12459 <td class="entry_range">
12460 </td>
12461
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012462 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080012463 <ul class="entry_tags">
12464 <li><a href="#tag_V1">V1</a></li>
12465 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012466 </td>
12467
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012468 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012469
12470
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012471 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12472 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012473
Zhijun He69fc0ea2013-07-17 09:42:58 -070012474
12475 <tr class="entry" id="dynamic_android.statistics.lensShadingMap">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012476 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012477 android.<wbr/>statistics.<wbr/>lens<wbr/>Shading<wbr/>Map
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012478 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012479 <td class="entry_type">
12480 <span class="entry_type_name">float</span>
12481 <span class="entry_type_container">x</span>
12482
12483 <span class="entry_type_array">
12484 4 x n x m
12485 </span>
12486 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012487 <div class="entry_type_notes">2D array of float gain factors per channel to correct lens shading</div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012488
12489
12490 </td> <!-- entry_type -->
12491
12492 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012493 <p>The shading map is a low-resolution floating-point map
12494that lists the coefficients used to correct for vignetting,<wbr/> for each
12495Bayer color channel.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012496 </td>
12497
12498 <td class="entry_units">
12499 </td>
12500
12501 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012502 <p>Each gain factor is &gt;= 1</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012503 </td>
12504
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012505 <td class="entry_tags">
12506 </td>
12507
12508 </tr>
12509 <tr class="entries_header">
12510 <th class="th_details" colspan="5">Details</th>
12511 </tr>
12512 <tr class="entry_cont">
12513 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012514 <p>The least shaded section of the image should have a gain factor
12515of 1; all other sections should have gains above 1.<wbr/></p>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012516<p>When <a href="#controls_android.colorCorrection.mode">android.<wbr/>color<wbr/>Correction.<wbr/>mode</a> = TRANSFORM_<wbr/>MATRIX,<wbr/> the map
Igor Murashkin0b080452013-12-27 15:30:25 -080012517must take into account the colorCorrection settings.<wbr/></p>
12518<p>The shading map is for the entire active pixel array,<wbr/> and is not
12519affected by the crop region specified in the request.<wbr/> Each shading map
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080012520entry is the value of the shading compensation map over a specific
Igor Murashkin0b080452013-12-27 15:30:25 -080012521pixel on the sensor.<wbr/> Specifically,<wbr/> with a (N x M) resolution shading
12522map,<wbr/> and an active pixel array size (W x H),<wbr/> shading map entry
12523(x,<wbr/>y) ϵ (0 ...<wbr/> N-1,<wbr/> 0 ...<wbr/> M-1) is the value of the shading map at
12524pixel ( ((W-1)/<wbr/>(N-1)) * x,<wbr/> ((H-1)/<wbr/>(M-1)) * y) for the four color channels.<wbr/>
12525The map is assumed to be bilinearly interpolated between the sample points.<wbr/></p>
12526<p>The channel order is [R,<wbr/> Geven,<wbr/> Godd,<wbr/> B],<wbr/> where Geven is the green
12527channel for the even rows of a Bayer pattern,<wbr/> and Godd is the odd rows.<wbr/>
12528The shading map is stored in a fully interleaved format,<wbr/> and its size
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012529is provided in the camera static metadata by <a href="#static_android.lens.info.shadingMapSize">android.<wbr/>lens.<wbr/>info.<wbr/>shading<wbr/>Map<wbr/>Size</a>.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -080012530<p>The shading map should have on the order of 30-40 rows and columns,<wbr/>
12531and must be smaller than 64x64.<wbr/></p>
12532<p>As an example,<wbr/> given a very small map defined as:</p>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012533<pre><code><a href="#static_android.lens.info.shadingMapSize">android.<wbr/>lens.<wbr/>info.<wbr/>shading<wbr/>Map<wbr/>Size</a> = [ 4,<wbr/> 3 ]
12534<a href="#dynamic_android.statistics.lensShadingMap">android.<wbr/>statistics.<wbr/>lens<wbr/>Shading<wbr/>Map</a> =
Igor Murashkin0b080452013-12-27 15:30:25 -080012535[ 1.<wbr/>3,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>15,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>15,<wbr/> 1.<wbr/>2,<wbr/>
12536 1.<wbr/>1,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3,<wbr/> 1.<wbr/>3,<wbr/>
12537 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>25,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>0,<wbr/>
12538 1.<wbr/>0,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3,<wbr/> 1.<wbr/>25,<wbr/> 1.<wbr/>2,<wbr/>
12539 1.<wbr/>3,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>15,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>2,<wbr/>
12540 1.<wbr/>2,<wbr/> 1.<wbr/>1,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3,<wbr/> 1.<wbr/>15,<wbr/> 1.<wbr/>2,<wbr/> 1.<wbr/>3 ]
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080012541</code></pre>
12542<p>The low-resolution scaling map images for each channel are
12543(displayed using nearest-neighbor interpolation):</p>
12544<p><img alt="Red lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/red_shading.png"/>
12545<img alt="Green (even rows) lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/green_e_shading.png"/>
12546<img alt="Green (odd rows) lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/green_o_shading.png"/>
12547<img alt="Blue lens shading map" src="images/camera2/metadata/android.statistics.lensShadingMap/blue_shading.png"/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -080012548<p>As a visualization only,<wbr/> inverting the full-color map to recover an
Igor Murashkin1dd4ecb2013-12-11 13:31:00 -080012549image of a gray wall (using bicubic interpolation for visual quality) as captured by the sensor gives:</p>
Igor Murashkin0b080452013-12-27 15:30:25 -080012550<p><img alt="Image of a uniform white wall (inverse shading map)" src="images/camera2/metadata/android.statistics.lensShadingMap/inv_shading.png"/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012551 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012552 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012553
12554
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012555 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12556 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070012557
12558
12559 <tr class="entry" id="dynamic_android.statistics.predictedColorGains">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012560 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012561 android.<wbr/>statistics.<wbr/>predicted<wbr/>Color<wbr/>Gains
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012562 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012563 <td class="entry_type">
12564 <span class="entry_type_name">float</span>
12565 <span class="entry_type_container">x</span>
12566
12567 <span class="entry_type_array">
12568 4
12569 </span>
Igor Murashkin0fe2f132014-01-13 16:59:47 -080012570 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012571 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012572
12573
12574 </td> <!-- entry_type -->
12575
12576 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012577 <p>The best-fit color channel gains calculated
12578by the HAL's statistics units for the current output frame</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012579 </td>
12580
12581 <td class="entry_units">
12582 </td>
12583
12584 <td class="entry_range">
Igor Murashkin0fe2f132014-01-13 16:59:47 -080012585 <p><strong>Deprecated</strong>.<wbr/> Do not use.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012586 </td>
12587
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012588 <td class="entry_tags">
12589 </td>
12590
12591 </tr>
12592 <tr class="entries_header">
12593 <th class="th_details" colspan="5">Details</th>
12594 </tr>
12595 <tr class="entry_cont">
12596 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012597 <p>This may be different than the gains used for this frame,<wbr/>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012598since statistics processing on data from a new frame
12599typically completes after the transform has already been
Igor Murashkin0b080452013-12-27 15:30:25 -080012600applied to that frame.<wbr/></p>
12601<p>The 4 channel gains are defined in Bayer domain,<wbr/>
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012602see <a href="#controls_android.colorCorrection.gains">android.<wbr/>color<wbr/>Correction.<wbr/>gains</a> for details.<wbr/></p>
Igor Murashkin0b080452013-12-27 15:30:25 -080012603<p>This value should always be calculated by the AWB block,<wbr/>
12604regardless of the android.<wbr/>control.<wbr/>* current values.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012605 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012606 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012607
12608
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012609 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12610 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070012611
12612
12613 <tr class="entry" id="dynamic_android.statistics.predictedColorTransform">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012614 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012615 android.<wbr/>statistics.<wbr/>predicted<wbr/>Color<wbr/>Transform
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012616 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012617 <td class="entry_type">
12618 <span class="entry_type_name">rational</span>
12619 <span class="entry_type_container">x</span>
12620
12621 <span class="entry_type_array">
12622 3 x 3
12623 </span>
Igor Murashkin0fe2f132014-01-13 16:59:47 -080012624 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012625 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012626
12627
12628 </td> <!-- entry_type -->
12629
12630 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012631 <p>The best-fit color transform matrix estimate
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012632calculated by the HAL's statistics units for the current
Igor Murashkin0b080452013-12-27 15:30:25 -080012633output frame</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012634 </td>
12635
12636 <td class="entry_units">
12637 </td>
12638
12639 <td class="entry_range">
Igor Murashkin0fe2f132014-01-13 16:59:47 -080012640 <p><strong>Deprecated</strong>.<wbr/> Do not use.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012641 </td>
12642
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012643 <td class="entry_tags">
12644 </td>
12645
12646 </tr>
12647 <tr class="entries_header">
12648 <th class="th_details" colspan="5">Details</th>
12649 </tr>
12650 <tr class="entry_cont">
12651 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012652 <p>The HAL must provide the estimate from its
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012653statistics unit on the white balance transforms to use
Igor Murashkin0b080452013-12-27 15:30:25 -080012654for the next frame.<wbr/> These are the values the HAL believes
12655are the best fit for the current output frame.<wbr/> This may
12656be different than the transform used for this frame,<wbr/> since
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012657statistics processing on data from a new frame typically
12658completes after the transform has already been applied to
Igor Murashkin0b080452013-12-27 15:30:25 -080012659that frame.<wbr/></p>
12660<p>These estimates must be provided for all frames,<wbr/> even if
12661capture settings and color transforms are set by the application.<wbr/></p>
12662<p>This value should always be calculated by the AWB block,<wbr/>
12663regardless of the android.<wbr/>control.<wbr/>* current values.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012664 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012665 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012666
12667
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012668 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12669 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070012670
12671
12672 <tr class="entry" id="dynamic_android.statistics.sceneFlicker">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012673 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012674 android.<wbr/>statistics.<wbr/>scene<wbr/>Flicker
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012675 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012676 <td class="entry_type">
12677 <span class="entry_type_name entry_type_name_enum">byte</span>
12678
12679 <span class="entry_type_visibility"> [public]</span>
12680
12681 <ul class="entry_type_enum">
12682 <li>
12683 <span class="entry_type_enum_name">NONE</span>
12684 </li>
12685 <li>
12686 <span class="entry_type_enum_name">50HZ</span>
12687 </li>
12688 <li>
12689 <span class="entry_type_enum_name">60HZ</span>
12690 </li>
12691 </ul>
12692
12693 </td> <!-- entry_type -->
12694
12695 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012696 <p>The HAL estimated scene illumination lighting
12697frequency</p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070012698 </td>
12699
12700 <td class="entry_units">
12701 </td>
12702
12703 <td class="entry_range">
12704 </td>
12705
Zhijun He69fc0ea2013-07-17 09:42:58 -070012706 <td class="entry_tags">
12707 </td>
12708
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012709 </tr>
12710 <tr class="entries_header">
12711 <th class="th_details" colspan="5">Details</th>
12712 </tr>
12713 <tr class="entry_cont">
12714 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012715 <p>Report NONE if there doesn't appear to be flickering
12716illumination</p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012717 </td>
12718 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012719
12720
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012721 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12722 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070012723
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012724
12725
12726 <!-- end of kind -->
12727 </tbody>
12728
12729 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012730 <tr><td colspan="6" id="section_tonemap" class="section">tonemap</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012731
12732
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012733 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012734
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012735 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012736 <tr>
12737 <th class="th_name">Property Name</th>
12738 <th class="th_type">Type</th>
12739 <th class="th_description">Description</th>
12740 <th class="th_units">Units</th>
12741 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012742 <th class="th_tags">Tags</th>
12743 </tr>
12744 </thead>
12745
12746 <tbody>
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757 <tr class="entry" id="controls_android.tonemap.curveBlue">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012758 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012759 android.<wbr/>tonemap.<wbr/>curve<wbr/>Blue
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012760 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012761 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080012762 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070012763 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012764
Zhijun He704d1282013-08-19 15:26:33 -070012765 <span class="entry_type_array">
12766 n x 2
12767 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012768 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012769 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012770
12771
12772 </td> <!-- entry_type -->
12773
12774 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012775 <p>Table mapping blue input values to output
12776values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012777 </td>
12778
12779 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080012780 same as android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012781 </td>
12782
12783 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012784 <p>same as <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012785 </td>
12786
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012787 <td class="entry_tags">
12788 </td>
12789
12790 </tr>
12791 <tr class="entries_header">
12792 <th class="th_details" colspan="5">Details</th>
12793 </tr>
12794 <tr class="entry_cont">
12795 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012796 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the blue
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012797channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
12798<p>See <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a> for more details.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012799 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012800 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012801
12802
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012803 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12804 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012805
12806
12807 <tr class="entry" id="controls_android.tonemap.curveGreen">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012808 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012809 android.<wbr/>tonemap.<wbr/>curve<wbr/>Green
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012810 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012811 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080012812 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070012813 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012814
Zhijun He704d1282013-08-19 15:26:33 -070012815 <span class="entry_type_array">
12816 n x 2
12817 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012818 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012819 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012820
12821
12822 </td> <!-- entry_type -->
12823
12824 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012825 <p>Table mapping green input values to output
12826values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012827 </td>
12828
12829 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080012830 same as android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012831 </td>
12832
12833 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012834 <p>same as <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012835 </td>
12836
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012837 <td class="entry_tags">
12838 </td>
12839
12840 </tr>
12841 <tr class="entries_header">
12842 <th class="th_details" colspan="5">Details</th>
12843 </tr>
12844 <tr class="entry_cont">
12845 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012846 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the green
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012847channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
12848<p>See <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a> for more details.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012849 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012850 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012851
12852
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012853 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12854 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012855
12856
12857 <tr class="entry" id="controls_android.tonemap.curveRed">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012858 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080012859 android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012860 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012861 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012862 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012863 <span class="entry_type_container">x</span>
12864
12865 <span class="entry_type_array">
12866 n x 2
12867 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012868 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080012869 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012870
12871
12872 </td> <!-- entry_type -->
12873
12874 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080012875 <p>Table mapping red input values to output
12876values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012877 </td>
12878
12879 <td class="entry_units">
12880 </td>
12881
12882 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012883 <p>0-1 on input and output coordinates.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012884 </td>
12885
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012886 <td class="entry_tags">
12887 <ul class="entry_tags">
12888 <li><a href="#tag_DNG">DNG</a></li>
12889 </ul>
12890 </td>
12891
12892 </tr>
12893 <tr class="entries_header">
12894 <th class="th_details" colspan="5">Details</th>
12895 </tr>
12896 <tr class="entry_cont">
12897 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080012898 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the red
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080012899channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012900<p>Since the input and output ranges may vary depending on
Igor Murashkin0b080452013-12-27 15:30:25 -080012901the camera pipeline,<wbr/> the input and output pixel values
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012902are represented by normalized floating-point values
Igor Murashkin0b080452013-12-27 15:30:25 -080012903between 0 and 1,<wbr/> with 0 == black and 1 == white.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080012904<p>The curve should be linearly interpolated between the
Igor Murashkin0b080452013-12-27 15:30:25 -080012905defined points.<wbr/> The points will be listed in increasing
12906order of P_<wbr/>IN.<wbr/> For example,<wbr/> if the array is: [0.<wbr/>0,<wbr/> 0.<wbr/>0,<wbr/>
129070.<wbr/>3,<wbr/> 0.<wbr/>5,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>0],<wbr/> then the input-&gt;output mapping
12908for a few sample points would be: 0 -&gt; 0,<wbr/> 0.<wbr/>15 -&gt;
129090.<wbr/>25,<wbr/> 0.<wbr/>3 -&gt; 0.<wbr/>5,<wbr/> 0.<wbr/>5 -&gt; 0.<wbr/>64</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012910 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012911 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012912
12913
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012914 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12915 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012916
12917
12918 <tr class="entry" id="controls_android.tonemap.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012919 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080012920 android.<wbr/>tonemap.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012921 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012922 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012923 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012924
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012925 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012926
12927 <ul class="entry_type_enum">
12928 <li>
12929 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080012930 <span class="entry_type_enum_notes"><p>Use the tone mapping curve specified in
12931android.<wbr/>tonemap.<wbr/>curve</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012932 </li>
12933 <li>
12934 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080012935 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
12936bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012937 </li>
12938 <li>
12939 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080012940 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
12941quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012942 </li>
12943 </ul>
12944
12945 </td> <!-- entry_type -->
12946
12947 <td class="entry_description">
12948 </td>
12949
12950 <td class="entry_units">
12951 </td>
12952
12953 <td class="entry_range">
12954 </td>
12955
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012956 <td class="entry_tags">
12957 </td>
12958
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012959 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012960
12961
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012962 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
12963 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012964
12965
12966
12967 <!-- end of kind -->
12968 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080012969 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012970
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070012971 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012972 <tr>
12973 <th class="th_name">Property Name</th>
12974 <th class="th_type">Type</th>
12975 <th class="th_description">Description</th>
12976 <th class="th_units">Units</th>
12977 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012978 <th class="th_tags">Tags</th>
12979 </tr>
12980 </thead>
12981
12982 <tbody>
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993 <tr class="entry" id="static_android.tonemap.maxCurvePoints">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012994 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080012995 android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080012996 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012997 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080012998 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080012999
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013000 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013001
13002
13003 </td> <!-- entry_type -->
13004
13005 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013006 <p>Maximum number of supported points in the
13007tonemap curve</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013008 </td>
13009
13010 <td class="entry_units">
13011 </td>
13012
13013 <td class="entry_range">
Igor Murashkin6cb7c2c2014-01-10 15:12:40 -080013014 <p>&gt;= 128</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013015 </td>
13016
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013017 <td class="entry_tags">
13018 </td>
13019
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013020 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013021
13022
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013023 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13024 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013025
13026
13027
13028 <!-- end of kind -->
13029 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013030 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013031
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013032 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013033 <tr>
13034 <th class="th_name">Property Name</th>
13035 <th class="th_type">Type</th>
13036 <th class="th_description">Description</th>
13037 <th class="th_units">Units</th>
13038 <th class="th_range">Range</th>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013039 <th class="th_tags">Tags</th>
13040 </tr>
13041 </thead>
13042
13043 <tbody>
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054 <tr class="entry" id="dynamic_android.tonemap.curveBlue">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013055 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080013056 android.<wbr/>tonemap.<wbr/>curve<wbr/>Blue
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013057 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013058 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080013059 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070013060 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013061
Zhijun He704d1282013-08-19 15:26:33 -070013062 <span class="entry_type_array">
13063 n x 2
13064 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013065 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080013066 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013067
13068
13069 </td> <!-- entry_type -->
13070
13071 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013072 <p>Table mapping blue input values to output
13073values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013074 </td>
13075
13076 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080013077 same as android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013078 </td>
13079
13080 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013081 <p>same as <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013082 </td>
13083
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013084 <td class="entry_tags">
13085 </td>
13086
13087 </tr>
13088 <tr class="entries_header">
13089 <th class="th_details" colspan="5">Details</th>
13090 </tr>
13091 <tr class="entry_cont">
13092 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013093 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the blue
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013094channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
13095<p>See <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a> for more details.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013096 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013097 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013098
13099
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013100 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13101 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013102
13103
13104 <tr class="entry" id="dynamic_android.tonemap.curveGreen">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013105 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080013106 android.<wbr/>tonemap.<wbr/>curve<wbr/>Green
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013107 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013108 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080013109 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070013110 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013111
Zhijun He704d1282013-08-19 15:26:33 -070013112 <span class="entry_type_array">
13113 n x 2
13114 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013115 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080013116 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013117
13118
13119 </td> <!-- entry_type -->
13120
13121 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013122 <p>Table mapping green input values to output
13123values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013124 </td>
13125
13126 <td class="entry_units">
Igor Murashkin0b080452013-12-27 15:30:25 -080013127 same as android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013128 </td>
13129
13130 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013131 <p>same as <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013132 </td>
13133
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013134 <td class="entry_tags">
13135 </td>
13136
13137 </tr>
13138 <tr class="entries_header">
13139 <th class="th_details" colspan="5">Details</th>
13140 </tr>
13141 <tr class="entry_cont">
13142 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013143 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the green
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013144channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
13145<p>See <a href="#controls_android.tonemap.curveRed">android.<wbr/>tonemap.<wbr/>curve<wbr/>Red</a> for more details.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013146 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013147 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013148
13149
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013150 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13151 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013152
13153
13154 <tr class="entry" id="dynamic_android.tonemap.curveRed">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013155 <td class="entry_name" rowspan="3">
Igor Murashkin0b080452013-12-27 15:30:25 -080013156 android.<wbr/>tonemap.<wbr/>curve<wbr/>Red
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013157 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013158 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080013159 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013160 <span class="entry_type_container">x</span>
13161
13162 <span class="entry_type_array">
13163 n x 2
13164 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013165 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin0b080452013-12-27 15:30:25 -080013166 <div class="entry_type_notes">1D array of float pairs (P_<wbr/>IN,<wbr/> P_<wbr/>OUT).<wbr/> The maximum number of pairs is specified by android.<wbr/>tonemap.<wbr/>max<wbr/>Curve<wbr/>Points.<wbr/></div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013167
13168
13169 </td> <!-- entry_type -->
13170
13171 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013172 <p>Table mapping red input values to output
13173values</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013174 </td>
13175
13176 <td class="entry_units">
13177 </td>
13178
13179 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013180 <p>0-1 on input and output coordinates.<wbr/></p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013181 </td>
13182
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013183 <td class="entry_tags">
13184 <ul class="entry_tags">
13185 <li><a href="#tag_DNG">DNG</a></li>
13186 </ul>
13187 </td>
13188
13189 </tr>
13190 <tr class="entries_header">
13191 <th class="th_details" colspan="5">Details</th>
13192 </tr>
13193 <tr class="entry_cont">
13194 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013195 <p>Tonemapping /<wbr/> contrast /<wbr/> gamma curve for the red
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013196channel,<wbr/> to use when <a href="#controls_android.tonemap.mode">android.<wbr/>tonemap.<wbr/>mode</a> is CONTRAST_<wbr/>CURVE.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013197<p>Since the input and output ranges may vary depending on
Igor Murashkin0b080452013-12-27 15:30:25 -080013198the camera pipeline,<wbr/> the input and output pixel values
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013199are represented by normalized floating-point values
Igor Murashkin0b080452013-12-27 15:30:25 -080013200between 0 and 1,<wbr/> with 0 == black and 1 == white.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013201<p>The curve should be linearly interpolated between the
Igor Murashkin0b080452013-12-27 15:30:25 -080013202defined points.<wbr/> The points will be listed in increasing
13203order of P_<wbr/>IN.<wbr/> For example,<wbr/> if the array is: [0.<wbr/>0,<wbr/> 0.<wbr/>0,<wbr/>
132040.<wbr/>3,<wbr/> 0.<wbr/>5,<wbr/> 1.<wbr/>0,<wbr/> 1.<wbr/>0],<wbr/> then the input-&gt;output mapping
13205for a few sample points would be: 0 -&gt; 0,<wbr/> 0.<wbr/>15 -&gt;
132060.<wbr/>25,<wbr/> 0.<wbr/>3 -&gt; 0.<wbr/>5,<wbr/> 0.<wbr/>5 -&gt; 0.<wbr/>64</p>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013207 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013208 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013209
13210
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013211 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13212 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013213
13214
13215 <tr class="entry" id="dynamic_android.tonemap.mode">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013216 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080013217 android.<wbr/>tonemap.<wbr/>mode
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013218 </td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013219 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080013220 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013221
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013222 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013223
13224 <ul class="entry_type_enum">
13225 <li>
13226 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080013227 <span class="entry_type_enum_notes"><p>Use the tone mapping curve specified in
13228android.<wbr/>tonemap.<wbr/>curve</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013229 </li>
13230 <li>
13231 <span class="entry_type_enum_name">FAST</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080013232 <span class="entry_type_enum_notes"><p>Must not slow down frame rate relative to raw
13233bayer output</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013234 </li>
13235 <li>
13236 <span class="entry_type_enum_name">HIGH_QUALITY</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080013237 <span class="entry_type_enum_notes"><p>Frame rate may be reduced by high
13238quality</p></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013239 </li>
13240 </ul>
13241
13242 </td> <!-- entry_type -->
13243
13244 <td class="entry_description">
13245 </td>
13246
13247 <td class="entry_units">
13248 </td>
13249
13250 <td class="entry_range">
13251 </td>
13252
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013253 <td class="entry_tags">
13254 </td>
13255
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013256 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013257
13258
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013259 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13260 <!-- end of entry -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013261
13262
13263
13264 <!-- end of kind -->
13265 </tbody>
13266
13267 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013268 <tr><td colspan="6" id="section_led" class="section">led</td></tr>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013269
13270
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013271 <tr><td colspan="6" class="kind">controls</td></tr>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013272
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013273 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013274 <tr>
13275 <th class="th_name">Property Name</th>
13276 <th class="th_type">Type</th>
13277 <th class="th_description">Description</th>
13278 <th class="th_units">Units</th>
13279 <th class="th_range">Range</th>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013280 <th class="th_tags">Tags</th>
13281 </tr>
13282 </thead>
13283
13284 <tbody>
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295 <tr class="entry" id="controls_android.led.transmit">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013296 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080013297 android.<wbr/>led.<wbr/>transmit
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013298 </td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013299 <td class="entry_type">
13300 <span class="entry_type_name entry_type_name_enum">byte</span>
13301
Igor Murashkinb8dc8812013-07-17 16:29:34 -070013302 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013303
13304 <ul class="entry_type_enum">
13305 <li>
13306 <span class="entry_type_enum_name">OFF</span>
13307 </li>
13308 <li>
13309 <span class="entry_type_enum_name">ON</span>
13310 </li>
13311 </ul>
13312
13313 </td> <!-- entry_type -->
13314
13315 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013316 <p>This LED is nominally used to indicate to the user
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013317that the camera is powered on and may be streaming images back to the
Igor Murashkin0b080452013-12-27 15:30:25 -080013318Application Processor.<wbr/> In certain rare circumstances,<wbr/> the OS may
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013319disable this when video is processed locally and not transmitted to
Igor Murashkin0b080452013-12-27 15:30:25 -080013320any untrusted applications.<wbr/></p>
13321<p>In particular,<wbr/> the LED <em>must</em> always be on when the data could be
13322transmitted off the device.<wbr/> The LED <em>should</em> always be on whenever
13323data is stored locally on the device.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013324<p>The LED <em>may</em> be off if a trusted application is using the data that
Igor Murashkin0b080452013-12-27 15:30:25 -080013325doesn't violate the above rules.<wbr/></p>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013326 </td>
13327
13328 <td class="entry_units">
13329 </td>
13330
13331 <td class="entry_range">
13332 </td>
13333
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013334 <td class="entry_tags">
13335 </td>
13336
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013337 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013338
13339
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013340 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13341 <!-- end of entry -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013342
13343
13344
13345 <!-- end of kind -->
13346 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013347 <tr><td colspan="6" class="kind">dynamic</td></tr>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013348
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013349 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013350 <tr>
13351 <th class="th_name">Property Name</th>
13352 <th class="th_type">Type</th>
13353 <th class="th_description">Description</th>
13354 <th class="th_units">Units</th>
13355 <th class="th_range">Range</th>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013356 <th class="th_tags">Tags</th>
13357 </tr>
13358 </thead>
13359
13360 <tbody>
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371 <tr class="entry" id="dynamic_android.led.transmit">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013372 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080013373 android.<wbr/>led.<wbr/>transmit
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013374 </td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013375 <td class="entry_type">
13376 <span class="entry_type_name entry_type_name_enum">byte</span>
13377
Igor Murashkinb8dc8812013-07-17 16:29:34 -070013378 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013379
13380 <ul class="entry_type_enum">
13381 <li>
13382 <span class="entry_type_enum_name">OFF</span>
13383 </li>
13384 <li>
13385 <span class="entry_type_enum_name">ON</span>
13386 </li>
13387 </ul>
13388
13389 </td> <!-- entry_type -->
13390
13391 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013392 <p>This LED is nominally used to indicate to the user
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013393that the camera is powered on and may be streaming images back to the
Igor Murashkin0b080452013-12-27 15:30:25 -080013394Application Processor.<wbr/> In certain rare circumstances,<wbr/> the OS may
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013395disable this when video is processed locally and not transmitted to
Igor Murashkin0b080452013-12-27 15:30:25 -080013396any untrusted applications.<wbr/></p>
13397<p>In particular,<wbr/> the LED <em>must</em> always be on when the data could be
13398transmitted off the device.<wbr/> The LED <em>should</em> always be on whenever
13399data is stored locally on the device.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013400<p>The LED <em>may</em> be off if a trusted application is using the data that
Igor Murashkin0b080452013-12-27 15:30:25 -080013401doesn't violate the above rules.<wbr/></p>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013402 </td>
13403
13404 <td class="entry_units">
13405 </td>
13406
13407 <td class="entry_range">
13408 </td>
13409
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013410 <td class="entry_tags">
13411 </td>
13412
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013413 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013414
13415
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013416 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13417 <!-- end of entry -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013418
13419
13420
13421 <!-- end of kind -->
13422 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013423 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013424
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013425 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013426 <tr>
13427 <th class="th_name">Property Name</th>
13428 <th class="th_type">Type</th>
13429 <th class="th_description">Description</th>
13430 <th class="th_units">Units</th>
13431 <th class="th_range">Range</th>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013432 <th class="th_tags">Tags</th>
13433 </tr>
13434 </thead>
13435
13436 <tbody>
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447 <tr class="entry" id="static_android.led.availableLeds">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013448 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080013449 android.<wbr/>led.<wbr/>available<wbr/>Leds
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013450 </td>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013451 <td class="entry_type">
13452 <span class="entry_type_name entry_type_name_enum">byte</span>
13453 <span class="entry_type_container">x</span>
13454
13455 <span class="entry_type_array">
13456 n
13457 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013458 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013459
13460 <ul class="entry_type_enum">
13461 <li>
13462 <span class="entry_type_enum_name">TRANSMIT</span>
Igor Murashkina10351a2014-01-15 17:05:22 -080013463 <span class="entry_type_enum_notes"><p><a href="#controls_android.led.transmit">android.<wbr/>led.<wbr/>transmit</a> control is used</p></span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013464 </li>
13465 </ul>
13466
13467 </td> <!-- entry_type -->
13468
13469 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013470 <p>A list of camera LEDs that are available on this system.<wbr/></p>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013471 </td>
13472
13473 <td class="entry_units">
13474 </td>
13475
13476 <td class="entry_range">
13477 </td>
13478
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013479 <td class="entry_tags">
13480 </td>
13481
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013482 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013483
13484
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013485 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13486 <!-- end of entry -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070013487
13488
13489
13490 <!-- end of kind -->
13491 </tbody>
13492
13493 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013494 <tr><td colspan="6" id="section_info" class="section">info</td></tr>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013495
13496
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013497 <tr><td colspan="6" class="kind">static</td></tr>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013498
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013499 <thead class="entries_header">
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013500 <tr>
13501 <th class="th_name">Property Name</th>
13502 <th class="th_type">Type</th>
13503 <th class="th_description">Description</th>
13504 <th class="th_units">Units</th>
13505 <th class="th_range">Range</th>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013506 <th class="th_tags">Tags</th>
13507 </tr>
13508 </thead>
13509
13510 <tbody>
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521 <tr class="entry" id="static_android.info.supportedHardwareLevel">
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013522 <td class="entry_name" rowspan="1">
Igor Murashkin0b080452013-12-27 15:30:25 -080013523 android.<wbr/>info.<wbr/>supported<wbr/>Hardware<wbr/>Level
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013524 </td>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013525 <td class="entry_type">
13526 <span class="entry_type_name entry_type_name_enum">byte</span>
13527
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070013528 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013529
13530 <ul class="entry_type_enum">
13531 <li>
13532 <span class="entry_type_enum_name">LIMITED</span>
13533 </li>
13534 <li>
13535 <span class="entry_type_enum_name">FULL</span>
13536 </li>
13537 </ul>
13538
13539 </td> <!-- entry_type -->
13540
13541 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013542 <p>The camera 3 HAL device can implement one of two possible
13543operational modes; limited and full.<wbr/> Full support is
13544expected from new higher-end devices.<wbr/> Limited mode has
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013545hardware requirements roughly in line with those for a
Igor Murashkin0b080452013-12-27 15:30:25 -080013546camera HAL device v1 implementation,<wbr/> and is expected from
13547older or inexpensive devices.<wbr/> Full is a strict superset of
13548limited,<wbr/> and they share the same essential operational flow.<wbr/></p>
13549<p>For full details refer to "S3.<wbr/> Operational Modes" in camera3.<wbr/>h</p>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013550 </td>
13551
13552 <td class="entry_units">
13553 </td>
13554
13555 <td class="entry_range">
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013556 <p>Optional.<wbr/> Default value is LIMITED.<wbr/></p>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013557 </td>
13558
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013559 <td class="entry_tags">
13560 </td>
13561
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013562 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013563
13564
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013565 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13566 <!-- end of entry -->
Igor Murashkin38b8cae2013-05-23 16:38:59 -070013567
13568
13569
13570 <!-- end of kind -->
13571 </tbody>
13572
13573 <!-- end of section -->
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013574 <tr><td colspan="6" id="section_blackLevel" class="section">blackLevel</td></tr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013575
13576
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013577 <tr><td colspan="6" class="kind">controls</td></tr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013578
13579 <thead class="entries_header">
13580 <tr>
13581 <th class="th_name">Property Name</th>
13582 <th class="th_type">Type</th>
13583 <th class="th_description">Description</th>
13584 <th class="th_units">Units</th>
13585 <th class="th_range">Range</th>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013586 <th class="th_tags">Tags</th>
13587 </tr>
13588 </thead>
13589
13590 <tbody>
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601 <tr class="entry" id="controls_android.blackLevel.lock">
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013602 <td class="entry_name" rowspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013603 android.<wbr/>black<wbr/>Level.<wbr/>lock
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013604 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013605 <td class="entry_type">
13606 <span class="entry_type_name entry_type_name_enum">byte</span>
13607
Igor Murashkinb8dc8812013-07-17 16:29:34 -070013608 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013609
13610 <ul class="entry_type_enum">
13611 <li>
13612 <span class="entry_type_enum_name">OFF</span>
13613 </li>
13614 <li>
13615 <span class="entry_type_enum_name">ON</span>
13616 </li>
13617 </ul>
13618
13619 </td> <!-- entry_type -->
13620
13621 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013622 <p>Whether black-level compensation is locked
13623to its current values,<wbr/> or is free to vary.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013624 </td>
13625
13626 <td class="entry_units">
13627 </td>
13628
13629 <td class="entry_range">
13630 </td>
13631
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013632 <td class="entry_tags">
13633 <ul class="entry_tags">
13634 <li><a href="#tag_HAL2">HAL2</a></li>
13635 </ul>
13636 </td>
13637
13638 </tr>
13639 <tr class="entries_header">
13640 <th class="th_details" colspan="5">Details</th>
13641 </tr>
13642 <tr class="entry_cont">
13643 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013644 <p>When set to ON,<wbr/> the values used for black-level
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013645compensation will not change until the lock is set to
Igor Murashkin0b080452013-12-27 15:30:25 -080013646OFF.<wbr/></p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013647<p>Since changes to certain capture parameters (such as
13648exposure time) may require resetting of black level
Igor Murashkin0b080452013-12-27 15:30:25 -080013649compensation,<wbr/> the camera device must report whether setting
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013650the black level lock was successful in the output result
Igor Murashkin0b080452013-12-27 15:30:25 -080013651metadata.<wbr/></p>
13652<p>For example,<wbr/> if a sequence of requests is as follows:</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013653<ul>
Igor Murashkin0b080452013-12-27 15:30:25 -080013654<li>Request 1: Exposure = 10ms,<wbr/> Black level lock = OFF</li>
13655<li>Request 2: Exposure = 10ms,<wbr/> Black level lock = ON</li>
13656<li>Request 3: Exposure = 10ms,<wbr/> Black level lock = ON</li>
13657<li>Request 4: Exposure = 20ms,<wbr/> Black level lock = ON</li>
13658<li>Request 5: Exposure = 20ms,<wbr/> Black level lock = ON</li>
13659<li>Request 6: Exposure = 20ms,<wbr/> Black level lock = ON</li>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013660</ul>
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013661<p>And the exposure change in Request 4 requires the camera
Igor Murashkin0b080452013-12-27 15:30:25 -080013662device to reset the black level offsets,<wbr/> then the output
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013663result metadata is expected to be:</p>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013664<ul>
Igor Murashkin0b080452013-12-27 15:30:25 -080013665<li>Result 1: Exposure = 10ms,<wbr/> Black level lock = OFF</li>
13666<li>Result 2: Exposure = 10ms,<wbr/> Black level lock = ON</li>
13667<li>Result 3: Exposure = 10ms,<wbr/> Black level lock = ON</li>
13668<li>Result 4: Exposure = 20ms,<wbr/> Black level lock = OFF</li>
13669<li>Result 5: Exposure = 20ms,<wbr/> Black level lock = ON</li>
13670<li>Result 6: Exposure = 20ms,<wbr/> Black level lock = ON</li>
Igor Murashkin8aa2a112013-12-09 12:06:17 -080013671</ul>
Igor Murashkin0b080452013-12-27 15:30:25 -080013672<p>This indicates to the application that on frame 4,<wbr/> black
13673levels were reset due to exposure value changes,<wbr/> and pixel
13674values may not be consistent across captures.<wbr/></p>
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013675<p>The camera device will maintain the lock to the extent
Igor Murashkin0b080452013-12-27 15:30:25 -080013676possible,<wbr/> only overriding the lock to OFF when changes to
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013677other request parameters require a black level recalculation
Igor Murashkin0b080452013-12-27 15:30:25 -080013678or reset.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013679 </td>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013680 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013681
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013682 <tr class="entries_header">
13683 <th class="th_details" colspan="5">HAL Implementation Details</th>
13684 </tr>
13685 <tr class="entry_cont">
13686 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013687 <p>If for some reason black level locking is no longer possible
13688(for example,<wbr/> the analog gain has changed,<wbr/> which forces
13689black level offsets to be recalculated),<wbr/> then the HAL must
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013690override this request (and it must report 'OFF' when this
13691does happen) until the next capture for which locking is
Igor Murashkin0b080452013-12-27 15:30:25 -080013692possible again.<wbr/></p>
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013693 </td>
13694 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013695
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013696 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13697 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070013698
13699
13700
13701 <!-- end of kind -->
13702 </tbody>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013703 <tr><td colspan="6" class="kind">dynamic</td></tr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013704
13705 <thead class="entries_header">
13706 <tr>
13707 <th class="th_name">Property Name</th>
13708 <th class="th_type">Type</th>
13709 <th class="th_description">Description</th>
13710 <th class="th_units">Units</th>
13711 <th class="th_range">Range</th>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013712 <th class="th_tags">Tags</th>
13713 </tr>
13714 </thead>
13715
13716 <tbody>
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727 <tr class="entry" id="dynamic_android.blackLevel.lock">
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013728 <td class="entry_name" rowspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013729 android.<wbr/>black<wbr/>Level.<wbr/>lock
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013730 </td>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013731 <td class="entry_type">
13732 <span class="entry_type_name entry_type_name_enum">byte</span>
13733
Igor Murashkinb8dc8812013-07-17 16:29:34 -070013734 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013735
13736 <ul class="entry_type_enum">
13737 <li>
13738 <span class="entry_type_enum_name">OFF</span>
13739 </li>
13740 <li>
13741 <span class="entry_type_enum_name">ON</span>
13742 </li>
13743 </ul>
13744
13745 </td> <!-- entry_type -->
13746
13747 <td class="entry_description">
Igor Murashkin0b080452013-12-27 15:30:25 -080013748 <p>Whether black-level compensation is locked
13749to its current values,<wbr/> or is free to vary.<wbr/></p>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013750 </td>
13751
13752 <td class="entry_units">
13753 </td>
13754
13755 <td class="entry_range">
13756 </td>
13757
Zhijun He69fc0ea2013-07-17 09:42:58 -070013758 <td class="entry_tags">
13759 <ul class="entry_tags">
13760 <li><a href="#tag_HAL2">HAL2</a></li>
13761 </ul>
13762 </td>
13763
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013764 </tr>
13765 <tr class="entries_header">
13766 <th class="th_details" colspan="5">Details</th>
13767 </tr>
13768 <tr class="entry_cont">
13769 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013770 <p>Whether the black level offset was locked for this frame.<wbr/> Should be
Eino-Ville Talvala63c0fb22014-01-02 16:11:44 -080013771ON if <a href="#controls_android.blackLevel.lock">android.<wbr/>black<wbr/>Level.<wbr/>lock</a> was ON in the capture request,<wbr/> unless
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013772a change in other capture settings forced the camera device to
Igor Murashkin0b080452013-12-27 15:30:25 -080013773perform a black level reset.<wbr/></p>
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013774 </td>
13775 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013776
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013777 <tr class="entries_header">
13778 <th class="th_details" colspan="5">HAL Implementation Details</th>
13779 </tr>
13780 <tr class="entry_cont">
13781 <td class="entry_details" colspan="5">
Igor Murashkin0b080452013-12-27 15:30:25 -080013782 <p>If for some reason black level locking is no longer possible
13783(for example,<wbr/> the analog gain has changed,<wbr/> which forces
13784black level offsets to be recalculated),<wbr/> then the HAL must
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013785override this request (and it must report 'OFF' when this
13786does happen) until the next capture for which locking is
Igor Murashkin0b080452013-12-27 15:30:25 -080013787possible again.<wbr/></p>
Eino-Ville Talvala7796cfe2013-12-26 13:16:54 -080013788 </td>
13789 </tr>
Eino-Ville Talvalaa5b73c22013-12-27 13:50:19 -080013790
Eino-Ville Talvala8eb70052013-12-26 12:06:13 -080013791 <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
13792 <!-- end of entry -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070013793
13794
13795
13796 <!-- end of kind -->
13797 </tbody>
13798
13799 <!-- end of section -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013800<!-- </namespace> -->
13801 </table>
13802
13803 <div class="tags" id="tag_index">
13804 <h2>Tags</h2>
13805 <ul>
13806 <li id="tag_AWB">AWB -
13807 Needed for auto white balance
13808
13809 <ul class="tags_entries">
13810 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
13811 </ul>
13812 </li> <!-- tag_AWB -->
13813 <li id="tag_BC">BC -
13814 Needed for backwards compatibility with old Java API
13815
13816 <ul class="tags_entries">
Eino-Ville Talvala19ce2c12013-12-30 12:03:45 -080013817 <li><a href="#controls_android.control.aeAntibandingMode">android.control.aeAntibandingMode</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013818 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a> (controls)</li>
13819 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a> (controls)</li>
13820 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a> (controls)</li>
13821 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a> (controls)</li>
13822 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070013823 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013824 <li><a href="#controls_android.control.afMode">android.control.afMode</a> (controls)</li>
13825 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070013826 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013827 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a> (controls)</li>
13828 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
13829 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a> (controls)</li>
13830 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a> (controls)</li>
13831 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a> (controls)</li>
13832 <li><a href="#controls_android.control.mode">android.control.mode</a> (controls)</li>
13833 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a> (controls)</li>
13834 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a> (controls)</li>
Eino-Ville Talvala9fa0d902014-01-08 16:16:53 -080013835 <li><a href="#static_android.control.aeAvailableModes">android.control.aeAvailableModes</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013836 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a> (static)</li>
13837 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a> (static)</li>
13838 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a> (static)</li>
13839 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a> (static)</li>
13840 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a> (static)</li>
13841 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a> (static)</li>
13842 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a> (static)</li>
13843 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a> (static)</li>
13844 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a> (static)</li>
13845 <li><a href="#controls_android.flash.mode">android.flash.mode</a> (controls)</li>
13846 <li><a href="#static_android.flash.info.available">android.flash.info.available</a> (static)</li>
13847 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a> (controls)</li>
13848 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a> (controls)</li>
13849 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a> (controls)</li>
13850 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a> (controls)</li>
13851 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a> (controls)</li>
13852 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a> (controls)</li>
13853 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a> (controls)</li>
13854 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a> (static)</li>
13855 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
13856 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
13857 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a> (static)</li>
13858 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a> (dynamic)</li>
13859 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a> (static)</li>
13860 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a> (controls)</li>
13861 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a> (static)</li>
13862 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a> (static)</li>
13863 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a> (static)</li>
Igor Murashkinf11a4df2013-05-07 10:00:46 -070013864 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013865 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a> (static)</li>
13866 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a> (static)</li>
13867 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013868 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013869 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013870 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
13871 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
13872 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
13873 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a> (static)</li>
13874 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a> (dynamic)</li>
13875 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a> (controls)</li>
13876 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a> (dynamic)</li>
13877 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a> (dynamic)</li>
13878 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a> (dynamic)</li>
13879 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a> (dynamic)</li>
13880 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a> (dynamic)</li>
13881 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a> (dynamic)</li>
13882 </ul>
13883 </li> <!-- tag_BC -->
13884 <li id="tag_V1">V1 -
13885 New features for first camera 2 release (API1)
13886
13887 <ul class="tags_entries">
13888 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a> (controls)</li>
13889 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a> (controls)</li>
13890 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a> (controls)</li>
13891 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a> (static)</li>
13892 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a> (controls)</li>
13893 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a> (controls)</li>
13894 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a> (controls)</li>
13895 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a> (controls)</li>
13896 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
13897 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (controls)</li>
13898 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a> (static)</li>
13899 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a> (static)</li>
13900 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
13901 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a> (static)</li>
13902 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a> (static)</li>
13903 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a> (static)</li>
13904 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a> (static)</li>
13905 <li><a href="#static_android.lens.position">android.lens.position</a> (static)</li>
13906 <li><a href="#dynamic_android.lens.state">android.lens.state</a> (dynamic)</li>
13907 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a> (controls)</li>
13908 <li><a href="#controls_android.request.id">android.request.id</a> (controls)</li>
13909 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a> (controls)</li>
13910 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
13911 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013912 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013913 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a> (static)</li>
13914 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
13915 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
13916 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
13917 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
13918 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a> (static)</li>
13919 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a> (controls)</li>
13920 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a> (controls)</li>
13921 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a> (dynamic)</li>
13922 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a> (dynamic)</li>
13923 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a> (dynamic)</li>
13924 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a> (dynamic)</li>
13925 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a> (dynamic)</li>
13926 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (dynamic)</li>
13927 </ul>
13928 </li> <!-- tag_V1 -->
13929 <li id="tag_ADV">ADV - None
13930 <ul class="tags_entries">
13931 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a> (static)</li>
13932 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a> (static)</li>
13933 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a> (controls)</li>
13934 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a> (static)</li>
13935 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a> (static)</li>
13936 <li><a href="#controls_android.shading.strength">android.shading.strength</a> (controls)</li>
13937 </ul>
13938 </li> <!-- tag_ADV -->
13939 <li id="tag_DNG">DNG -
13940 Needed for DNG file support
13941
13942 <ul class="tags_entries">
13943 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013944 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a> (static)</li>
13945 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a> (static)</li>
13946 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
13947 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a> (static)</li>
13948 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a> (static)</li>
13949 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a> (static)</li>
13950 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a> (static)</li>
13951 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a> (static)</li>
13952 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a> (static)</li>
13953 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a> (static)</li>
13954 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a> (static)</li>
13955 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
13956 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a> (controls)</li>
13957 </ul>
13958 </li> <!-- tag_DNG -->
13959 <li id="tag_EXIF">EXIF - None
13960 <ul class="tags_entries">
13961 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
13962 </ul>
13963 </li> <!-- tag_EXIF -->
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070013964 <li id="tag_HAL2">HAL2 -
Alex Rayef40ad62013-10-01 17:52:33 -070013965 Entry is only used by camera device HAL 2.x
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070013966
13967 <ul class="tags_entries">
13968 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a> (controls)</li>
13969 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a> (controls)</li>
13970 <li><a href="#controls_android.request.type">android.request.type</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070013971 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a> (controls)</li>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070013972 </ul>
13973 </li> <!-- tag_HAL2 -->
Alex Rayef40ad62013-10-01 17:52:33 -070013974 <li id="tag_FULL">FULL -
13975 Entry is required for full hardware level devices, and optional for other hardware levels
13976
13977 <ul class="tags_entries">
13978 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
13979 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
13980 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a> (dynamic)</li>
13981 </ul>
13982 </li> <!-- tag_FULL -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080013983 </ul>
13984 </div>
13985
13986 [ <a href="#">top</a> ]
13987
13988</body>
13989</html>