blob: e0aaf81dea49959ec2b966801869264a6a455276 [file] [log] [blame]
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001<!DOCTYPE html>
2<html>
3<!-- Copyright (C) 2012 The Android Open Source Project
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16-->
17<head>
18 <!-- automatically generated from html.mako. do NOT edit directly -->
19 <meta charset="utf-8" />
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070020 <title>Android Camera HAL3.0 Properties</title>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080021 <style type="text/css">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070022 body { background-color: #f7f7f7; font-family: Roboto, sans-serif;}
23 h1 { color: #333333; }
24 h2 { color: #333333; }
25 a:link { color: #258aaf; text-decoration: none}
26 a:hover { color: #459aaf; text-decoration: underline }
27 a:visited { color: #154a5f; text-decoration: none}
28 .section { color: #eeeeee; font-size: 1.5em; font-weight: bold; background-color: #888888; padding: 0.5em 0em 0.5em 0.5em; border-width: thick thin thin thin; border-color: #111111 #777777 #777777 #777777}
29 .kind { color: #eeeeee; font-size: 1.2em; font-weight: bold; padding-left: 1.5em; background-color: #aaaaaa }
30 .entry { background-color: #f0f0f0 }
31 .entries_header { background-color: #dddddd; text-align: center}
32
33 /* toc style */
34 .toc_section_header { font-size:1.3em; }
35 .toc_kind_header { font-size:1.2em; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080036
37 /* table column sizes */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070038 table { border-collapse:collapse; table-layout: fixed; width: 100%; word-wrap: break-word }
39 td,th { border: 1px solid; border-color: #aaaaaa; padding-left: 0.5em; padding-right: 0.5em }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080040 .th_name { width: 20% }
41 .th_units { width: 10% }
42 .th_tags { width: 5% }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070043 .th_notes { width: 25% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080044 .th_type { width: 20% }
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070045 .th_description { width: 20% }
46 .th_range { width: 10% }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080047 td { font-size: 0.9em; }
48
49 /* hide the first thead, we need it there only to enforce column sizes */
50 .thead_dummy { visibility: hidden; }
51
52 /* Entry flair */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070053 .entry_name { color: #333333; padding-left:1.0em; font-size:1.1em; font-family: monospace; }
Igor Murashkin08b8aad2012-11-29 15:23:03 -080054
55 /* Entry type flair */
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070056 .entry_type_name { font-size:1.1em; color: #669900; font-weight: bold;}
57 .entry_type_name_enum:after { color: #669900; font-weight: bold; content:" (enum)" }
58 .entry_type_visibility { font-weight: bolder; padding-left:1em}
Igor Murashkin08b8aad2012-11-29 15:23:03 -080059 .entry_type_enum_name { font-family: monospace; font-weight: bolder; }
60 .entry_type_enum_notes:before { content:" - " }
61 .entry_type_enum_value:before { content:" = " }
62 .entry_type_enum_value { font-family: monospace; }
63 .entry ul { margin: 0 0 0 0; list-style-position: inside; padding-left: 0.5em; }
64 .entry ul li { padding: 0 0 0 0; margin: 0 0 0 0;}
65
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070066 /* Entry visibility flair */
67
Igor Murashkin08b8aad2012-11-29 15:23:03 -080068 /* Entry tags flair */
69 .entry_tags ul { list-style-type: none; }
70
71
72 /* TODO: generate abbr element for each tag link? */
73 /* TODO for each x.y.z try to link it to the entry */
74
75 </style>
76
77 <style>
78
79 {
80 /* broken...
81 supposedly there is a bug in chrome that it lays out tables before
82 it knows its being printed, so the page-break-* styles are ignored
83 */
84 tr { page-break-after: always; page-break-inside: avoid; }
85 }
86
87 </style>
88</head>
89
90
91
Igor Murashkin08b8aad2012-11-29 15:23:03 -080092<body>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070093 <h1>Android Camera HAL3.0 Properties</h1>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080094
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070095
Igor Murashkin08b8aad2012-11-29 15:23:03 -080096 <h2>Table of Contents</h2>
97 <ul class="toc">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070098 <li><a href="#tag_index" class="toc_section_header">Tags</a></li>
99 <li>
100 <span class="toc_section_header"><a href="#section_colorCorrection">colorCorrection</a></span>
101 <ul class="toc_section">
102 <li>
103 <span class="toc_kind_header">controls</span>
104 <ul class="toc_section">
105 <li><a href="#controls_android.colorCorrection.mode">android.colorCorrection.mode</a></li>
106 <li><a href="#controls_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700107 <li><a href="#controls_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700108 </ul>
109 </li>
110 <li>
111 <span class="toc_kind_header">dynamic</span>
112 <ul class="toc_section">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700113 <li><a href="#dynamic_android.colorCorrection.transform">android.colorCorrection.transform</a></li>
114 <li><a href="#dynamic_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700115 </ul>
116 </li>
117 </ul> <!-- toc_section -->
118 </li>
119 <li>
120 <span class="toc_section_header"><a href="#section_control">control</a></span>
121 <ul class="toc_section">
122 <li>
123 <span class="toc_kind_header">controls</span>
124 <ul class="toc_section">
125 <li><a href="#controls_android.control.aeAntibandingMode">android.control.aeAntibandingMode</a></li>
126 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a></li>
127 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a></li>
128 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a></li>
129 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a></li>
130 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a></li>
131 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a></li>
132 <li><a href="#controls_android.control.afMode">android.control.afMode</a></li>
133 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a></li>
134 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a></li>
135 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a></li>
136 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a></li>
137 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a></li>
138 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a></li>
139 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a></li>
140 <li><a href="#controls_android.control.mode">android.control.mode</a></li>
141 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a></li>
142 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a></li>
143 </ul>
144 </li>
145 <li>
146 <span class="toc_kind_header">static</span>
147 <ul class="toc_section">
148 <li><a href="#static_android.control.aeAvailableAntibandingModes">android.control.aeAvailableAntibandingModes</a></li>
149 <li><a href="#static_android.control.aeAvailableModes">android.control.aeAvailableModes</a></li>
150 <li><a href="#static_android.control.aeAvailableTargetFpsRanges">android.control.aeAvailableTargetFpsRanges</a></li>
151 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a></li>
152 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a></li>
153 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a></li>
154 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a></li>
155 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a></li>
156 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a></li>
157 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a></li>
158 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a></li>
159 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a></li>
160 </ul>
161 </li>
162 <li>
163 <span class="toc_kind_header">dynamic</span>
164 <ul class="toc_section">
165 <li><a href="#dynamic_android.control.aePrecaptureId">android.control.aePrecaptureId</a></li>
166 <li><a href="#dynamic_android.control.aeRegions">android.control.aeRegions</a></li>
167 <li><a href="#dynamic_android.control.aeState">android.control.aeState</a></li>
168 <li><a href="#dynamic_android.control.afMode">android.control.afMode</a></li>
169 <li><a href="#dynamic_android.control.afRegions">android.control.afRegions</a></li>
170 <li><a href="#dynamic_android.control.afState">android.control.afState</a></li>
171 <li><a href="#dynamic_android.control.afTriggerId">android.control.afTriggerId</a></li>
172 <li><a href="#dynamic_android.control.awbMode">android.control.awbMode</a></li>
173 <li><a href="#dynamic_android.control.awbRegions">android.control.awbRegions</a></li>
174 <li><a href="#dynamic_android.control.awbState">android.control.awbState</a></li>
175 <li><a href="#dynamic_android.control.mode">android.control.mode</a></li>
176 </ul>
177 </li>
178 </ul> <!-- toc_section -->
179 </li>
180 <li>
181 <span class="toc_section_header"><a href="#section_demosaic">demosaic</a></span>
182 <ul class="toc_section">
183 <li>
184 <span class="toc_kind_header">controls</span>
185 <ul class="toc_section">
186 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a></li>
187 </ul>
188 </li>
189 </ul> <!-- toc_section -->
190 </li>
191 <li>
192 <span class="toc_section_header"><a href="#section_edge">edge</a></span>
193 <ul class="toc_section">
194 <li>
195 <span class="toc_kind_header">controls</span>
196 <ul class="toc_section">
197 <li><a href="#controls_android.edge.mode">android.edge.mode</a></li>
198 <li><a href="#controls_android.edge.strength">android.edge.strength</a></li>
199 </ul>
200 </li>
201 <li>
202 <span class="toc_kind_header">dynamic</span>
203 <ul class="toc_section">
204 <li><a href="#dynamic_android.edge.mode">android.edge.mode</a></li>
205 </ul>
206 </li>
207 </ul> <!-- toc_section -->
208 </li>
209 <li>
210 <span class="toc_section_header"><a href="#section_flash">flash</a></span>
211 <ul class="toc_section">
212 <li>
213 <span class="toc_kind_header">controls</span>
214 <ul class="toc_section">
215 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a></li>
216 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a></li>
217 <li><a href="#controls_android.flash.mode">android.flash.mode</a></li>
218 </ul>
219 </li>
220 <li>
221 <span class="toc_kind_header">static</span>
222 <ul class="toc_section">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800223
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700224 <li><a href="#static_android.flash.info.available">android.flash.info.available</a></li>
225 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800226
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700227 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a></li>
228 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a></li>
229 </ul>
230 </li>
231 <li>
232 <span class="toc_kind_header">dynamic</span>
233 <ul class="toc_section">
234 <li><a href="#dynamic_android.flash.firingPower">android.flash.firingPower</a></li>
235 <li><a href="#dynamic_android.flash.firingTime">android.flash.firingTime</a></li>
236 <li><a href="#dynamic_android.flash.mode">android.flash.mode</a></li>
237 <li><a href="#dynamic_android.flash.state">android.flash.state</a></li>
238 </ul>
239 </li>
240 </ul> <!-- toc_section -->
241 </li>
242 <li>
243 <span class="toc_section_header"><a href="#section_geometric">geometric</a></span>
244 <ul class="toc_section">
245 <li>
246 <span class="toc_kind_header">controls</span>
247 <ul class="toc_section">
248 <li><a href="#controls_android.geometric.mode">android.geometric.mode</a></li>
249 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a></li>
250 </ul>
251 </li>
252 </ul> <!-- toc_section -->
253 </li>
254 <li>
255 <span class="toc_section_header"><a href="#section_hotPixel">hotPixel</a></span>
256 <ul class="toc_section">
257 <li>
258 <span class="toc_kind_header">controls</span>
259 <ul class="toc_section">
260 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a></li>
261 </ul>
262 </li>
263 <li>
264 <span class="toc_kind_header">static</span>
265 <ul class="toc_section">
266
267 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a></li>
268
269 </ul>
270 </li>
271 <li>
272 <span class="toc_kind_header">dynamic</span>
273 <ul class="toc_section">
274 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a></li>
275 </ul>
276 </li>
277 </ul> <!-- toc_section -->
278 </li>
279 <li>
280 <span class="toc_section_header"><a href="#section_jpeg">jpeg</a></span>
281 <ul class="toc_section">
282 <li>
283 <span class="toc_kind_header">controls</span>
284 <ul class="toc_section">
285 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
286 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
287 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
288 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a></li>
289 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a></li>
290 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
291 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
292 </ul>
293 </li>
294 <li>
295 <span class="toc_kind_header">static</span>
296 <ul class="toc_section">
297 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a></li>
298 <li><a href="#static_android.jpeg.maxSize">android.jpeg.maxSize</a></li>
299 </ul>
300 </li>
301 <li>
302 <span class="toc_kind_header">dynamic</span>
303 <ul class="toc_section">
304 <li><a href="#dynamic_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a></li>
305 <li><a href="#dynamic_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a></li>
306 <li><a href="#dynamic_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a></li>
307 <li><a href="#dynamic_android.jpeg.orientation">android.jpeg.orientation</a></li>
308 <li><a href="#dynamic_android.jpeg.quality">android.jpeg.quality</a></li>
309 <li><a href="#dynamic_android.jpeg.size">android.jpeg.size</a></li>
310 <li><a href="#dynamic_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a></li>
311 <li><a href="#dynamic_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a></li>
312 </ul>
313 </li>
314 </ul> <!-- toc_section -->
315 </li>
316 <li>
317 <span class="toc_section_header"><a href="#section_lens">lens</a></span>
318 <ul class="toc_section">
319 <li>
320 <span class="toc_kind_header">controls</span>
321 <ul class="toc_section">
322 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a></li>
323 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a></li>
324 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a></li>
325 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a></li>
326 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
327 </ul>
328 </li>
329 <li>
330 <span class="toc_kind_header">static</span>
331 <ul class="toc_section">
332
333 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a></li>
334 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a></li>
335 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a></li>
336 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a></li>
337 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a></li>
338 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a></li>
339 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a></li>
340 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700341 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a></li>
342
343 <li><a href="#static_android.lens.facing">android.lens.facing</a></li>
344 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a></li>
345 <li><a href="#static_android.lens.position">android.lens.position</a></li>
346 </ul>
347 </li>
348 <li>
349 <span class="toc_kind_header">dynamic</span>
350 <ul class="toc_section">
351 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a></li>
352 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a></li>
353 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a></li>
354 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a></li>
355 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a></li>
356 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a></li>
357 <li><a href="#dynamic_android.lens.state">android.lens.state</a></li>
358 </ul>
359 </li>
360 </ul> <!-- toc_section -->
361 </li>
362 <li>
363 <span class="toc_section_header"><a href="#section_noiseReduction">noiseReduction</a></span>
364 <ul class="toc_section">
365 <li>
366 <span class="toc_kind_header">controls</span>
367 <ul class="toc_section">
368 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
369 <li><a href="#controls_android.noiseReduction.strength">android.noiseReduction.strength</a></li>
370 </ul>
371 </li>
372 <li>
373 <span class="toc_kind_header">dynamic</span>
374 <ul class="toc_section">
375 <li><a href="#dynamic_android.noiseReduction.mode">android.noiseReduction.mode</a></li>
376 </ul>
377 </li>
378 </ul> <!-- toc_section -->
379 </li>
380 <li>
381 <span class="toc_section_header"><a href="#section_quirks">quirks</a></span>
382 <ul class="toc_section">
383 <li>
384 <span class="toc_kind_header">static</span>
385 <ul class="toc_section">
386 <li><a href="#static_android.quirks.meteringCropRegion">android.quirks.meteringCropRegion</a></li>
387 <li><a href="#static_android.quirks.triggerAfWithAuto">android.quirks.triggerAfWithAuto</a></li>
388 <li><a href="#static_android.quirks.useZslFormat">android.quirks.useZslFormat</a></li>
389 </ul>
390 </li>
391 </ul> <!-- toc_section -->
392 </li>
393 <li>
394 <span class="toc_section_header"><a href="#section_request">request</a></span>
395 <ul class="toc_section">
396 <li>
397 <span class="toc_kind_header">controls</span>
398 <ul class="toc_section">
399 <li><a href="#controls_android.request.frameCount">android.request.frameCount</a></li>
400 <li><a href="#controls_android.request.id">android.request.id</a></li>
401 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a></li>
402 <li><a href="#controls_android.request.metadataMode">android.request.metadataMode</a></li>
403 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a></li>
404 <li><a href="#controls_android.request.type">android.request.type</a></li>
405 </ul>
406 </li>
407 <li>
408 <span class="toc_kind_header">static</span>
409 <ul class="toc_section">
410 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a></li>
411 <li><a href="#static_android.request.maxNumReprocessStreams">android.request.maxNumReprocessStreams</a></li>
412 </ul>
413 </li>
414 <li>
415 <span class="toc_kind_header">dynamic</span>
416 <ul class="toc_section">
417 <li><a href="#dynamic_android.request.frameCount">android.request.frameCount</a></li>
418 <li><a href="#dynamic_android.request.id">android.request.id</a></li>
419 <li><a href="#dynamic_android.request.metadataMode">android.request.metadataMode</a></li>
420 <li><a href="#dynamic_android.request.outputStreams">android.request.outputStreams</a></li>
421 </ul>
422 </li>
423 </ul> <!-- toc_section -->
424 </li>
425 <li>
426 <span class="toc_section_header"><a href="#section_scaler">scaler</a></span>
427 <ul class="toc_section">
428 <li>
429 <span class="toc_kind_header">controls</span>
430 <ul class="toc_section">
431 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
432 </ul>
433 </li>
434 <li>
435 <span class="toc_kind_header">static</span>
436 <ul class="toc_section">
437 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a></li>
438 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a></li>
439 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a></li>
440 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a></li>
441 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a></li>
442 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a></li>
443 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a></li>
444 <li><a href="#static_android.scaler.availableRawSizes">android.scaler.availableRawSizes</a></li>
445 </ul>
446 </li>
447 <li>
448 <span class="toc_kind_header">dynamic</span>
449 <ul class="toc_section">
450 <li><a href="#dynamic_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
451 </ul>
452 </li>
453 </ul> <!-- toc_section -->
454 </li>
455 <li>
456 <span class="toc_section_header"><a href="#section_sensor">sensor</a></span>
457 <ul class="toc_section">
458 <li>
459 <span class="toc_kind_header">controls</span>
460 <ul class="toc_section">
461 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
462 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
463 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
464 </ul>
465 </li>
466 <li>
467 <span class="toc_kind_header">static</span>
468 <ul class="toc_section">
469
470 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700471 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700472 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a></li>
473 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a></li>
474 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a></li>
475 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a></li>
476 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a></li>
477 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a></li>
478
479 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a></li>
480 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a></li>
481 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a></li>
482 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a></li>
483 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a></li>
484 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a></li>
485 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a></li>
486 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a></li>
487 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a></li>
488 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a></li>
489 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a></li>
490 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a></li>
491 <li><a href="#static_android.sensor.referenceIlluminant2">android.sensor.referenceIlluminant2</a></li>
492 </ul>
493 </li>
494 <li>
495 <span class="toc_kind_header">dynamic</span>
496 <ul class="toc_section">
497 <li><a href="#dynamic_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
498 <li><a href="#dynamic_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
499 <li><a href="#dynamic_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
500 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a></li>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700501 <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700502 </ul>
503 </li>
504 </ul> <!-- toc_section -->
505 </li>
506 <li>
507 <span class="toc_section_header"><a href="#section_shading">shading</a></span>
508 <ul class="toc_section">
509 <li>
510 <span class="toc_kind_header">controls</span>
511 <ul class="toc_section">
512 <li><a href="#controls_android.shading.mode">android.shading.mode</a></li>
513 <li><a href="#controls_android.shading.strength">android.shading.strength</a></li>
514 </ul>
515 </li>
516 <li>
517 <span class="toc_kind_header">dynamic</span>
518 <ul class="toc_section">
519 <li><a href="#dynamic_android.shading.mode">android.shading.mode</a></li>
520 </ul>
521 </li>
522 </ul> <!-- toc_section -->
523 </li>
524 <li>
525 <span class="toc_section_header"><a href="#section_statistics">statistics</a></span>
526 <ul class="toc_section">
527 <li>
528 <span class="toc_kind_header">controls</span>
529 <ul class="toc_section">
530 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
531 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
532 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700533 <li><a href="#controls_android.statistics.lensShadingMapMode">android.statistics.lensShadingMapMode</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700534 </ul>
535 </li>
536 <li>
537 <span class="toc_kind_header">static</span>
538 <ul class="toc_section">
539
540 <li><a href="#static_android.statistics.info.availableFaceDetectModes">android.statistics.info.availableFaceDetectModes</a></li>
541 <li><a href="#static_android.statistics.info.histogramBucketCount">android.statistics.info.histogramBucketCount</a></li>
542 <li><a href="#static_android.statistics.info.maxFaceCount">android.statistics.info.maxFaceCount</a></li>
543 <li><a href="#static_android.statistics.info.maxHistogramCount">android.statistics.info.maxHistogramCount</a></li>
544 <li><a href="#static_android.statistics.info.maxSharpnessMapValue">android.statistics.info.maxSharpnessMapValue</a></li>
545 <li><a href="#static_android.statistics.info.sharpnessMapSize">android.statistics.info.sharpnessMapSize</a></li>
546
547 </ul>
548 </li>
549 <li>
550 <span class="toc_kind_header">dynamic</span>
551 <ul class="toc_section">
552 <li><a href="#dynamic_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
553 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a></li>
554 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a></li>
555 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a></li>
556 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a></li>
557 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a></li>
558 <li><a href="#dynamic_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
559 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a></li>
560 <li><a href="#dynamic_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700561 <li><a href="#dynamic_android.statistics.lensShadingMap">android.statistics.lensShadingMap</a></li>
562 <li><a href="#dynamic_android.statistics.predictedColorGains">android.statistics.predictedColorGains</a></li>
563 <li><a href="#dynamic_android.statistics.predictedColorTransform">android.statistics.predictedColorTransform</a></li>
564 <li><a href="#dynamic_android.statistics.sceneFlicker">android.statistics.sceneFlicker</a></li>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700565 </ul>
566 </li>
567 </ul> <!-- toc_section -->
568 </li>
569 <li>
570 <span class="toc_section_header"><a href="#section_tonemap">tonemap</a></span>
571 <ul class="toc_section">
572 <li>
573 <span class="toc_kind_header">controls</span>
574 <ul class="toc_section">
575 <li><a href="#controls_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
576 <li><a href="#controls_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
577 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
578 <li><a href="#controls_android.tonemap.mode">android.tonemap.mode</a></li>
579 </ul>
580 </li>
581 <li>
582 <span class="toc_kind_header">static</span>
583 <ul class="toc_section">
584 <li><a href="#static_android.tonemap.maxCurvePoints">android.tonemap.maxCurvePoints</a></li>
585 </ul>
586 </li>
587 <li>
588 <span class="toc_kind_header">dynamic</span>
589 <ul class="toc_section">
590 <li><a href="#dynamic_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
591 <li><a href="#dynamic_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
592 <li><a href="#dynamic_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
593 <li><a href="#dynamic_android.tonemap.mode">android.tonemap.mode</a></li>
594 </ul>
595 </li>
596 </ul> <!-- toc_section -->
597 </li>
598 <li>
599 <span class="toc_section_header"><a href="#section_led">led</a></span>
600 <ul class="toc_section">
601 <li>
602 <span class="toc_kind_header">controls</span>
603 <ul class="toc_section">
604 <li><a href="#controls_android.led.transmit">android.led.transmit</a></li>
605 </ul>
606 </li>
607 <li>
608 <span class="toc_kind_header">dynamic</span>
609 <ul class="toc_section">
610 <li><a href="#dynamic_android.led.transmit">android.led.transmit</a></li>
611 </ul>
612 </li>
613 <li>
614 <span class="toc_kind_header">static</span>
615 <ul class="toc_section">
616 <li><a href="#static_android.led.availableLeds">android.led.availableLeds</a></li>
617 </ul>
618 </li>
619 </ul> <!-- toc_section -->
620 </li>
621 <li>
622 <span class="toc_section_header"><a href="#section_info">info</a></span>
623 <ul class="toc_section">
624 <li>
625 <span class="toc_kind_header">static</span>
626 <ul class="toc_section">
627 <li><a href="#static_android.info.supportedHardwareLevel">android.info.supportedHardwareLevel</a></li>
628 </ul>
629 </li>
630 </ul> <!-- toc_section -->
631 </li>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700632 <li>
633 <span class="toc_section_header"><a href="#section_blackLevel">blackLevel</a></span>
634 <ul class="toc_section">
635 <li>
636 <span class="toc_kind_header">controls</span>
637 <ul class="toc_section">
638 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a></li>
639 </ul>
640 </li>
641 <li>
642 <span class="toc_kind_header">dynamic</span>
643 <ul class="toc_section">
644 <li><a href="#dynamic_android.blackLevel.lock">android.blackLevel.lock</a></li>
645 </ul>
646 </li>
647 </ul> <!-- toc_section -->
648 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800649 </ul>
650
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700651
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800652 <h1>Properties</h1>
653 <table class="properties">
654
655 <thead class="thead_dummy">
656 <tr>
657 <th class="th_name">Property Name</th>
658 <th class="th_type">Type</th>
659 <th class="th_description">Description</th>
660 <th class="th_units">Units</th>
661 <th class="th_range">Range</th>
662 <th class="th_notes">Notes</th>
663 <th class="th_tags">Tags</th>
664 </tr>
665 </thead> <!-- so that the first occurrence of thead is not
666 above the first occurrence of tr -->
667<!-- <namespace name="android"> -->
668 <tr><td colspan="7" id="section_colorCorrection" class="section">colorCorrection</td></tr>
669
670
671 <tr><td colspan="7" class="kind">controls</td></tr>
672
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700673 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800674 <tr>
675 <th class="th_name">Property Name</th>
676 <th class="th_type">Type</th>
677 <th class="th_description">Description</th>
678 <th class="th_units">Units</th>
679 <th class="th_range">Range</th>
680 <th class="th_notes">Notes</th>
681 <th class="th_tags">Tags</th>
682 </tr>
683 </thead>
684
685 <tbody>
686
687
688
689
690
691
692
693
694
695
696 <tr class="entry" id="controls_android.colorCorrection.mode">
697 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>mode</td>
698 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800699 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800700
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700701 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800702
703 <ul class="entry_type_enum">
704 <li>
705 <span class="entry_type_enum_name">TRANSFORM_MATRIX</span>
706 <span class="entry_type_enum_notes">Use the android.<wbr>color<wbr>Correction.<wbr>transform matrix
Zhijun He69fc0ea2013-07-17 09:42:58 -0700707 and android.<wbr>color<wbr>Correction.<wbr>gains to do color conversion</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800708 </li>
709 <li>
710 <span class="entry_type_enum_name">FAST</span>
711 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
712 bayer output</span>
713 </li>
714 <li>
715 <span class="entry_type_enum_name">HIGH_QUALITY</span>
716 <span class="entry_type_enum_notes">Frame rate may be reduced by high
717 quality</span>
718 </li>
719 </ul>
720
721 </td> <!-- entry_type -->
722
723 <td class="entry_description">
724 </td>
725
726 <td class="entry_units">
727 </td>
728
729 <td class="entry_range">
730 </td>
731
732 <td class="entry_notes">
Timothy Knight21f88802013-09-06 13:32:51 -0700733 When android.<wbr>control.<wbr>awb<wbr>Mode is not OFF,<wbr> TRANSFORM_<wbr>MATRIX
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700734 should be ignored.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800735 </td>
736
737 <td class="entry_tags">
738 </td>
739
740 </tr> <!-- end of entry -->
741
742
743 <tr class="entry" id="controls_android.colorCorrection.transform">
744 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
745 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700746 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800747 <span class="entry_type_container">x</span>
748
749 <span class="entry_type_array">
750 3 x 3
751 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700752 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700753 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800754
755
756 </td> <!-- entry_type -->
757
758 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700759 A color transform matrix to use to transform
760 from sensor RGB color space to output linear sRGB color space
761
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800762 </td>
763
764 <td class="entry_units">
765 </td>
766
767 <td class="entry_range">
768 Output values are expected to be in the range
769 (0,<wbr>1)
770 </td>
771
772 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700773 This matrix is either set by HAL when the request
774 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
775 directly by the application in the request when the
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700776 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
777<br>
778<br> In the latter case,<wbr> the HAL may round the matrix to account
Zhijun He69fc0ea2013-07-17 09:42:58 -0700779 for precision issues; the final rounded matrix should be
780 reported back in this matrix result metadata.<wbr>
781 </td>
782
783 <td class="entry_tags">
784 </td>
785
786 </tr> <!-- end of entry -->
787
788
789 <tr class="entry" id="controls_android.colorCorrection.gains">
790 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
791 <td class="entry_type">
792 <span class="entry_type_name">float</span>
793 <span class="entry_type_container">x</span>
794
795 <span class="entry_type_array">
796 4
797 </span>
798 <span class="entry_type_visibility"> [public]</span>
799 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
800
801
802 </td> <!-- entry_type -->
803
804 <td class="entry_description">
805 Gains applying to Bayer color channels for
806 white-balance
807 </td>
808
809 <td class="entry_units">
810 </td>
811
812 <td class="entry_range">
813 </td>
814
815 <td class="entry_notes">
816 The 4-channel white-balance gains are defined in
817 the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
818 for green pixels on even rows of the output,<wbr> and G_<wbr>odd
819 is the gain for greenpixels on the odd rows.<wbr> if a HAL
820 does not support a separate gain for even/<wbr>odd green channels,<wbr>
821 it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
822 G_<wbr>even in the output result metadata.<wbr>
823<br>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700824<br> This array is either set by HAL when the request
825 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
826 directly by the application in the request when the
827 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
828<br>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700829<br> The ouput should be the gains actually applied by the HAL to
830 the current frame.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800831 </td>
832
833 <td class="entry_tags">
834 </td>
835
836 </tr> <!-- end of entry -->
837
838
839
840 <!-- end of kind -->
841 </tbody>
842 <tr><td colspan="7" class="kind">dynamic</td></tr>
843
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700844 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800845 <tr>
846 <th class="th_name">Property Name</th>
847 <th class="th_type">Type</th>
848 <th class="th_description">Description</th>
849 <th class="th_units">Units</th>
850 <th class="th_range">Range</th>
851 <th class="th_notes">Notes</th>
852 <th class="th_tags">Tags</th>
853 </tr>
854 </thead>
855
856 <tbody>
857
858
859
860
861
862
863
864
865
866
Zhijun He69fc0ea2013-07-17 09:42:58 -0700867 <tr class="entry" id="dynamic_android.colorCorrection.transform">
868 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800869 <td class="entry_type">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700870 <span class="entry_type_name">rational</span>
871 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800872
Zhijun He69fc0ea2013-07-17 09:42:58 -0700873 <span class="entry_type_array">
874 3 x 3
875 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700876 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700877 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800878
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800879
880 </td> <!-- entry_type -->
881
882 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700883 A color transform matrix to use to transform
884 from sensor RGB color space to output linear sRGB color space
885
886 </td>
887
888 <td class="entry_units">
889 </td>
890
891 <td class="entry_range">
892 Output values are expected to be in the range
893 (0,<wbr>1)
894 </td>
895
896 <td class="entry_notes">
897 This matrix is either set by HAL when the request
898 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
899 directly by the application in the request when the
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700900 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
901<br>
902<br> In the latter case,<wbr> the HAL may round the matrix to account
Zhijun He69fc0ea2013-07-17 09:42:58 -0700903 for precision issues; the final rounded matrix should be
904 reported back in this matrix result metadata.<wbr>
905 </td>
906
907 <td class="entry_tags">
908 </td>
909
910 </tr> <!-- end of entry -->
911
912
913 <tr class="entry" id="dynamic_android.colorCorrection.gains">
914 <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
915 <td class="entry_type">
916 <span class="entry_type_name">float</span>
917 <span class="entry_type_container">x</span>
918
919 <span class="entry_type_array">
920 4
921 </span>
922 <span class="entry_type_visibility"> [public]</span>
923 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
924
925
926 </td> <!-- entry_type -->
927
928 <td class="entry_description">
929 Gains applying to Bayer color channels for
930 white-balance
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800931 </td>
932
933 <td class="entry_units">
934 </td>
935
936 <td class="entry_range">
937 </td>
938
939 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -0700940 The 4-channel white-balance gains are defined in
941 the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
942 for green pixels on even rows of the output,<wbr> and G_<wbr>odd
943 is the gain for greenpixels on the odd rows.<wbr> if a HAL
944 does not support a separate gain for even/<wbr>odd green channels,<wbr>
945 it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
946 G_<wbr>even in the output result metadata.<wbr>
947<br>
Igor Murashkin656aa5a2013-08-13 14:23:39 -0700948<br> This array is either set by HAL when the request
949 android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
950 directly by the application in the request when the
951 android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
952<br>
Zhijun He69fc0ea2013-07-17 09:42:58 -0700953<br> The ouput should be the gains actually applied by the HAL to
954 the current frame.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800955 </td>
956
957 <td class="entry_tags">
958 </td>
959
960 </tr> <!-- end of entry -->
961
962
963
964 <!-- end of kind -->
965 </tbody>
966
967 <!-- end of section -->
968 <tr><td colspan="7" id="section_control" class="section">control</td></tr>
969
970
971 <tr><td colspan="7" class="kind">controls</td></tr>
972
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -0700973 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -0800974 <tr>
975 <th class="th_name">Property Name</th>
976 <th class="th_type">Type</th>
977 <th class="th_description">Description</th>
978 <th class="th_units">Units</th>
979 <th class="th_range">Range</th>
980 <th class="th_notes">Notes</th>
981 <th class="th_tags">Tags</th>
982 </tr>
983 </thead>
984
985 <tbody>
986
987
988
989
990
991
992
993
994
995
996 <tr class="entry" id="controls_android.control.aeAntibandingMode">
997 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Antibanding<wbr>Mode</td>
998 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -0800999 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001000
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001001 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001002
1003 <ul class="entry_type_enum">
1004 <li>
1005 <span class="entry_type_enum_name">OFF</span>
1006 </li>
1007 <li>
1008 <span class="entry_type_enum_name">50HZ</span>
1009 </li>
1010 <li>
1011 <span class="entry_type_enum_name">60HZ</span>
1012 </li>
1013 <li>
1014 <span class="entry_type_enum_name">AUTO</span>
1015 </li>
1016 </ul>
1017
1018 </td> <!-- entry_type -->
1019
1020 <td class="entry_description">
1021 Enum for controlling
1022 antibanding
1023 </td>
1024
1025 <td class="entry_units">
1026 </td>
1027
1028 <td class="entry_range">
1029
1030 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes
1031 </td>
1032
1033 <td class="entry_notes">
1034 </td>
1035
1036 <td class="entry_tags">
1037 </td>
1038
1039 </tr> <!-- end of entry -->
1040
1041
1042 <tr class="entry" id="controls_android.control.aeExposureCompensation">
1043 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Exposure<wbr>Compensation</td>
1044 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001045 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001046
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001047 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001048
1049
1050 </td> <!-- entry_type -->
1051
1052 <td class="entry_description">
1053 Adjustment to AE target image
1054 brightness
1055 </td>
1056
1057 <td class="entry_units">
1058 count of positive/<wbr>negative EV steps
1059 </td>
1060
1061 <td class="entry_range">
1062 </td>
1063
1064 <td class="entry_notes">
1065 For example,<wbr> if EV step is 0.<wbr>333,<wbr> '6' will mean an
1066 exposure compensation of +2 EV; -3 will mean an exposure
1067 compensation of -1
1068 </td>
1069
1070 <td class="entry_tags">
1071 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001072 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001073 </ul>
1074 </td>
1075
1076 </tr> <!-- end of entry -->
1077
1078
1079 <tr class="entry" id="controls_android.control.aeLock">
1080 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Lock</td>
1081 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001082 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001083
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001084 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001085
1086 <ul class="entry_type_enum">
1087 <li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001088 <span class="entry_type_enum_name">OFF</span>
1089 <span class="entry_type_enum_notes">Autoexposure lock is disabled; the AE algorithm
1090 is free to update its parameters.<wbr></span>
1091 </li>
1092 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001093 <span class="entry_type_enum_name">ON</span>
1094 <span class="entry_type_enum_notes">Autoexposure lock is enabled; the AE algorithm
1095 must not update the exposure and sensitivity parameters
1096 while the lock is active</span>
1097 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001098 </ul>
1099
1100 </td> <!-- entry_type -->
1101
1102 <td class="entry_description">
1103 Whether AE is currently locked to its latest
1104 calculated values
1105 </td>
1106
1107 <td class="entry_units">
1108 </td>
1109
1110 <td class="entry_range">
1111 </td>
1112
1113 <td class="entry_notes">
1114 Note that even when AE is locked,<wbr> the flash may be
1115 fired if the AE mode is ON_<wbr>AUTO_<wbr>FLASH /<wbr> ON_<wbr>ALWAYS_<wbr>FLASH /<wbr>
1116 ON_<wbr>AUTO_<wbr>FLASH_<wbr>REDEYE.<wbr>
1117 </td>
1118
1119 <td class="entry_tags">
1120 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001121 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001122 </ul>
1123 </td>
1124
1125 </tr> <!-- end of entry -->
1126
1127
1128 <tr class="entry" id="controls_android.control.aeMode">
1129 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Mode</td>
1130 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001131 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001132
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001133 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001134
1135 <ul class="entry_type_enum">
1136 <li>
1137 <span class="entry_type_enum_name">OFF</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07001138 <span class="entry_type_enum_notes">Autoexposure is disabled; sensor.<wbr>exposureTime,<wbr>
1139 sensor.<wbr>sensitivity and sensor.<wbr>frameDuration are used</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001140 </li>
1141 <li>
1142 <span class="entry_type_enum_name">ON</span>
1143 <span class="entry_type_enum_notes">Autoexposure is active,<wbr> no flash
1144 control</span>
1145 </li>
1146 <li>
1147 <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
1148 <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
1149 flash control; flash may be fired when precapture
1150 trigger is activated,<wbr> and for captures for which
1151 captureIntent = STILL_<wbr>CAPTURE</span>
1152 </li>
1153 <li>
1154 <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
1155 <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
1156 flash control for precapture trigger and always flash
1157 when captureIntent = STILL_<wbr>CAPTURE</span>
1158 </li>
1159 <li>
1160 <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
1161 <span class="entry_type_enum_notes">optional Automatic red eye reduction with flash.<wbr>
1162 If deemed necessary,<wbr> red eye reduction sequence should
1163 fire when precapture trigger is activated,<wbr> and final
1164 flash should fire when captureIntent =
1165 STILL_<wbr>CAPTURE</span>
1166 </li>
1167 </ul>
1168
1169 </td> <!-- entry_type -->
1170
1171 <td class="entry_description">
1172 Whether AE is currently updating the sensor
1173 exposure and sensitivity fields
1174 </td>
1175
1176 <td class="entry_units">
1177 </td>
1178
1179 <td class="entry_range">
1180 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes
1181 </td>
1182
1183 <td class="entry_notes">
1184 Only effective if android.<wbr>control.<wbr>mode =
1185 AUTO
1186 </td>
1187
1188 <td class="entry_tags">
1189 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001190 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001191 </ul>
1192 </td>
1193
1194 </tr> <!-- end of entry -->
1195
1196
1197 <tr class="entry" id="controls_android.control.aeRegions">
1198 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
1199 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001200 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001201 <span class="entry_type_container">x</span>
1202
1203 <span class="entry_type_array">
1204 5 x area_count
1205 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001207
1208
1209 </td> <!-- entry_type -->
1210
1211 <td class="entry_description">
1212 List of areas to use for
1213 metering
1214 </td>
1215
1216 <td class="entry_units">
1217 </td>
1218
1219 <td class="entry_range">
1220 </td>
1221
1222 <td class="entry_notes">
1223 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001224 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1225 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001226<br>
1227<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001228 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1229 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1230 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1231 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001232 should be nonnegative.<wbr>
1233<br>
1234<br> If all regions have 0 weight,<wbr> then no specific metering area
1235 needs to be used by the HAL.<wbr> If the metering region is
1236 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1237 should ignore the sections outside the region and output the
1238 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001239 </td>
1240
1241 <td class="entry_tags">
1242 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001243 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001244 </ul>
1245 </td>
1246
1247 </tr> <!-- end of entry -->
1248
1249
1250 <tr class="entry" id="controls_android.control.aeTargetFpsRange">
1251 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Target<wbr>Fps<wbr>Range</td>
1252 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001253 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001254 <span class="entry_type_container">x</span>
1255
1256 <span class="entry_type_array">
1257 2
1258 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001259 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001260
1261
1262 </td> <!-- entry_type -->
1263
1264 <td class="entry_description">
1265 Range over which fps can be adjusted to
1266 maintain exposure
1267 </td>
1268
1269 <td class="entry_units">
1270 </td>
1271
1272 <td class="entry_range">
1273 android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges
1274 </td>
1275
1276 <td class="entry_notes">
1277 Only constrains AE algorithm,<wbr> not manual control
1278 of android.<wbr>sensor.<wbr>exposure<wbr>Time
1279 </td>
1280
1281 <td class="entry_tags">
1282 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001283 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001284 </ul>
1285 </td>
1286
1287 </tr> <!-- end of entry -->
1288
1289
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001290 <tr class="entry" id="controls_android.control.aePrecaptureTrigger">
1291 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Trigger</td>
1292 <td class="entry_type">
1293 <span class="entry_type_name entry_type_name_enum">byte</span>
1294
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001295 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001296
1297 <ul class="entry_type_enum">
1298 <li>
1299 <span class="entry_type_enum_name">IDLE</span>
1300 <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
1301 </li>
1302 <li>
1303 <span class="entry_type_enum_name">START</span>
1304 <span class="entry_type_enum_notes">The precapture metering sequence
1305 must be started.<wbr> The exact effect of the precapture
1306 trigger depends on the current AE mode and
1307 state.<wbr></span>
1308 </li>
1309 </ul>
1310
1311 </td> <!-- entry_type -->
1312
1313 <td class="entry_description">
1314 Whether the HAL must trigger precapture
1315 metering.<wbr>
1316 </td>
1317
1318 <td class="entry_units">
1319 </td>
1320
1321 <td class="entry_range">
1322 </td>
1323
1324 <td class="entry_notes">
1325 This entry is normally set to IDLE,<wbr> or is not
1326 included at all in the request settings.<wbr> When included and
1327 set to START,<wbr> the HAL must trigger the autoexposure
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001328 precapture metering sequence.<wbr>
1329<br>
1330<br> The effect of AE precapture trigger depends on the current
1331 AE mode and state; see the camera HAL device v3 header for
1332 details.<wbr>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001333 </td>
1334
1335 <td class="entry_tags">
1336 <ul class="entry_tags">
1337 <li><a href="#tag_BC">BC</a></li>
1338 </ul>
1339 </td>
1340
1341 </tr> <!-- end of entry -->
1342
1343
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001344 <tr class="entry" id="controls_android.control.afMode">
1345 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
1346 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001347 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001348
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001349 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001350
1351 <ul class="entry_type_enum">
1352 <li>
1353 <span class="entry_type_enum_name">OFF</span>
1354 <span class="entry_type_enum_notes">The 3A routines do not control the lens;
Zhijun He69fc0ea2013-07-17 09:42:58 -07001355 android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001356 application</span>
1357 </li>
1358 <li>
1359 <span class="entry_type_enum_name">AUTO</span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001360 <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
1361
1362 Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
1363 is fixed focus In this mode,<wbr> the lens does not move unless
1364 the autofocus trigger action is called.<wbr> When that trigger
1365 is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
1366 the outcome of the scan (FOCUSED or
1367 NOT_<wbr>FOCUSED).<wbr>
1368
1369 Triggering cancel AF resets the lens position to default,<wbr>
1370 and sets the AF state to INACTIVE.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001371 </li>
1372 <li>
1373 <span class="entry_type_enum_name">MACRO</span>
1374 <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001375 autofocus trigger action is called.<wbr>
1376
1377 When that trigger is activated,<wbr> AF must transition to
1378 ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
1379 NOT_<wbr>FOCUSED).<wbr> Triggering cancel AF resets the lens
1380 position to default,<wbr> and sets the AF state to
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001381 INACTIVE.<wbr></span>
1382 </li>
1383 <li>
1384 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
1385 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
1386 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001387 constantly-in-focus image stream.<wbr>
1388
1389 The focusing behavior should be suitable for good quality
1390 video recording; typically this means slower focus
1391 movement and no overshoots.<wbr> When the AF trigger is not
1392 involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
1393 and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
1394 states as appropriate.<wbr> When the AF trigger is activated,<wbr>
1395 the algorithm should immediately transition into
1396 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
1397 lens position until a cancel AF trigger is received.<wbr>
1398
1399 Once cancel is received,<wbr> the algorithm should transition
1400 back to INACTIVE and resume passive scan.<wbr> Note that this
1401 behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
1402 ongoing PASSIVE_<wbr>SCAN must immediately be
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001403 canceled.<wbr></span>
1404 </li>
1405 <li>
1406 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
1407 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
1408 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001409 constantly-in-focus image stream.<wbr>
1410
1411 The focusing behavior should be suitable for still image
1412 capture; typically this means focusing as fast as
1413 possible.<wbr> When the AF trigger is not involved,<wbr> the AF
1414 algorithm should start in INACTIVE state,<wbr> and then
1415 transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
1416 appropriate as it attempts to maintain focus.<wbr> When the AF
1417 trigger is activated,<wbr> the algorithm should finish its
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001418 PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001419 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
1420 lens position until a cancel AF trigger is received.<wbr>
1421
1422 When the AF cancel trigger is activated,<wbr> the algorithm
1423 should transition back to INACTIVE and then act as if it
1424 has just been started.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001425 </li>
1426 <li>
1427 <span class="entry_type_enum_name">EDOF</span>
1428 <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
1429 trigger is ignored,<wbr> AF state should always be
1430 INACTIVE.<wbr></span>
1431 </li>
1432 </ul>
1433
1434 </td> <!-- entry_type -->
1435
1436 <td class="entry_description">
1437 Whether AF is currently enabled,<wbr> and what
1438 mode it is set to
1439 </td>
1440
1441 <td class="entry_units">
1442 </td>
1443
1444 <td class="entry_range">
1445 </td>
1446
1447 <td class="entry_notes">
1448 </td>
1449
1450 <td class="entry_tags">
1451 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001452 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001453 </ul>
1454 </td>
1455
1456 </tr> <!-- end of entry -->
1457
1458
1459 <tr class="entry" id="controls_android.control.afRegions">
1460 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
1461 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001462 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001463 <span class="entry_type_container">x</span>
1464
1465 <span class="entry_type_array">
1466 5 x area_count
1467 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001468 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001469
1470
1471 </td> <!-- entry_type -->
1472
1473 <td class="entry_description">
1474 List of areas to use for focus
1475 estimation
1476 </td>
1477
1478 <td class="entry_units">
1479 </td>
1480
1481 <td class="entry_range">
1482 </td>
1483
1484 <td class="entry_notes">
1485 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001486 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1487 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001488<br>
1489<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001490 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1491 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1492 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1493 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001494 should be nonnegative.<wbr>
1495<br>
1496<br> If all regions have 0 weight,<wbr> then no specific focus area
1497 needs to be used by the HAL.<wbr> If the focusing region is
1498 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1499 should ignore the sections outside the region and output the
1500 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001501 </td>
1502
1503 <td class="entry_tags">
1504 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001505 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001506 </ul>
1507 </td>
1508
1509 </tr> <!-- end of entry -->
1510
1511
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001512 <tr class="entry" id="controls_android.control.afTrigger">
1513 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger</td>
1514 <td class="entry_type">
1515 <span class="entry_type_name entry_type_name_enum">byte</span>
1516
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001517 <span class="entry_type_visibility"> [public]</span>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001518
1519 <ul class="entry_type_enum">
1520 <li>
1521 <span class="entry_type_enum_name">IDLE</span>
1522 <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
1523 </li>
1524 <li>
1525 <span class="entry_type_enum_name">START</span>
1526 <span class="entry_type_enum_notes">Autofocus must trigger now.<wbr></span>
1527 </li>
1528 <li>
1529 <span class="entry_type_enum_name">CANCEL</span>
1530 <span class="entry_type_enum_notes">Autofocus must return to initial
1531 state,<wbr> and cancel any active trigger.<wbr></span>
1532 </li>
1533 </ul>
1534
1535 </td> <!-- entry_type -->
1536
1537 <td class="entry_description">
1538 Whether the HAL must trigger autofocus.<wbr>
1539 </td>
1540
1541 <td class="entry_units">
1542 </td>
1543
1544 <td class="entry_range">
1545 </td>
1546
1547 <td class="entry_notes">
1548 This entry is normally set to IDLE,<wbr> or is not
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001549 included at all in the request settings.<wbr>
1550<br>
1551<br> When included and set to START,<wbr> the HAL must trigger the
1552 autofocus algorithm.<wbr> The effect of AF trigger depends on the
1553 current AF mode and state; see the camera HAL device v3
1554 header for details.<wbr> When set to CANCEL,<wbr> the HAL must cancel
1555 any active trigger,<wbr> and return to initial AF state.<wbr>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -07001556 </td>
1557
1558 <td class="entry_tags">
1559 <ul class="entry_tags">
1560 <li><a href="#tag_BC">BC</a></li>
1561 </ul>
1562 </td>
1563
1564 </tr> <!-- end of entry -->
1565
1566
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001567 <tr class="entry" id="controls_android.control.awbLock">
1568 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Lock</td>
1569 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001570 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001571
Igor Murashkinb8dc8812013-07-17 16:29:34 -07001572 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001573
1574 <ul class="entry_type_enum">
1575 <li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001576 <span class="entry_type_enum_name">OFF</span>
1577 <span class="entry_type_enum_notes">Auto-whitebalance lock is disabled; the AWB
1578 algorithm is free to update its parameters if in AUTO
1579 mode.<wbr></span>
1580 </li>
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -08001581 <li>
1582 <span class="entry_type_enum_name">ON</span>
1583 <span class="entry_type_enum_notes">Auto-whitebalance lock is enabled; the AWB
1584 algorithm must not update the exposure and sensitivity
1585 parameters while the lock is active</span>
1586 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001587 </ul>
1588
1589 </td> <!-- entry_type -->
1590
1591 <td class="entry_description">
1592 Whether AWB is currently locked to its
1593 latest calculated values
1594 </td>
1595
1596 <td class="entry_units">
1597 </td>
1598
1599 <td class="entry_range">
1600 </td>
1601
1602 <td class="entry_notes">
1603 Note that AWB lock is only meaningful for AUTO
1604 mode; in other modes,<wbr> AWB is already fixed to a specific
1605 setting
1606 </td>
1607
1608 <td class="entry_tags">
1609 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001610 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001611 </ul>
1612 </td>
1613
1614 </tr> <!-- end of entry -->
1615
1616
1617 <tr class="entry" id="controls_android.control.awbMode">
1618 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
1619 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001620 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001621
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001622 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001623
1624 <ul class="entry_type_enum">
1625 <li>
1626 <span class="entry_type_enum_name">OFF</span>
1627 </li>
1628 <li>
1629 <span class="entry_type_enum_name">AUTO</span>
1630 </li>
1631 <li>
1632 <span class="entry_type_enum_name">INCANDESCENT</span>
1633 </li>
1634 <li>
1635 <span class="entry_type_enum_name">FLUORESCENT</span>
1636 </li>
1637 <li>
1638 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
1639 </li>
1640 <li>
1641 <span class="entry_type_enum_name">DAYLIGHT</span>
1642 </li>
1643 <li>
1644 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
1645 </li>
1646 <li>
1647 <span class="entry_type_enum_name">TWILIGHT</span>
1648 </li>
1649 <li>
1650 <span class="entry_type_enum_name">SHADE</span>
1651 </li>
1652 </ul>
1653
1654 </td> <!-- entry_type -->
1655
1656 <td class="entry_description">
1657 Whether AWB is currently setting the color
1658 transform fields,<wbr> and what its illumination target
1659 is
1660 </td>
1661
1662 <td class="entry_units">
1663 </td>
1664
1665 <td class="entry_range">
1666 </td>
1667
1668 <td class="entry_notes">
1669 [BC - AWB lock,<wbr>AWB modes]
1670 </td>
1671
1672 <td class="entry_tags">
1673 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001674 <li><a href="#tag_BC">BC</a></li>
1675 <li><a href="#tag_AWB">AWB</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001676 </ul>
1677 </td>
1678
1679 </tr> <!-- end of entry -->
1680
1681
1682 <tr class="entry" id="controls_android.control.awbRegions">
1683 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
1684 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001685 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001686 <span class="entry_type_container">x</span>
1687
1688 <span class="entry_type_array">
1689 5 x area_count
1690 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001691 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001692
1693
1694 </td> <!-- entry_type -->
1695
1696 <td class="entry_description">
1697 List of areas to use for illuminant
1698 estimation
1699 </td>
1700
1701 <td class="entry_units">
1702 </td>
1703
1704 <td class="entry_range">
1705 </td>
1706
1707 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001708 Only used in AUTO mode.<wbr>
1709<br>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07001710<br> Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
1711 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
1712 specified coordinates.<wbr>
1713<br>
1714<br> The coordinate system is based on the active pixel array,<wbr>
1715 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
1716 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
1717 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
1718 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001719 should be nonnegative.<wbr>
1720<br>
1721<br> If all regions have 0 weight,<wbr> then no specific metering area
1722 needs to be used by the HAL.<wbr> If the metering region is
1723 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
1724 should ignore the sections outside the region and output the
1725 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001726 </td>
1727
1728 <td class="entry_tags">
1729 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001730 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001731 </ul>
1732 </td>
1733
1734 </tr> <!-- end of entry -->
1735
1736
1737 <tr class="entry" id="controls_android.control.captureIntent">
1738 <td class="entry_name">android.<wbr>control.<wbr>capture<wbr>Intent</td>
1739 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001740 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001741
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001742 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001743
1744 <ul class="entry_type_enum">
1745 <li>
1746 <span class="entry_type_enum_name">CUSTOM</span>
1747 <span class="entry_type_enum_notes">This request doesn't fall into the other
1748 categories.<wbr> Default to preview-like
1749 behavior.<wbr></span>
1750 </li>
1751 <li>
1752 <span class="entry_type_enum_name">PREVIEW</span>
1753 <span class="entry_type_enum_notes">This request is for a preview-like usecase.<wbr> The
1754 precapture trigger may be used to start off a metering
1755 w/<wbr>flash sequence</span>
1756 </li>
1757 <li>
1758 <span class="entry_type_enum_name">STILL_CAPTURE</span>
1759 <span class="entry_type_enum_notes">This request is for a still capture-type
1760 usecase.<wbr></span>
1761 </li>
1762 <li>
1763 <span class="entry_type_enum_name">VIDEO_RECORD</span>
1764 <span class="entry_type_enum_notes">This request is for a video recording
1765 usecase.<wbr></span>
1766 </li>
1767 <li>
1768 <span class="entry_type_enum_name">VIDEO_SNAPSHOT</span>
1769 <span class="entry_type_enum_notes">This request is for a video snapshot (still
1770 image while recording video) usecase</span>
1771 </li>
1772 <li>
1773 <span class="entry_type_enum_name">ZERO_SHUTTER_LAG</span>
1774 <span class="entry_type_enum_notes">This request is for a ZSL usecase; the
1775 application will stream full-resolution images and
1776 reprocess one or several later for a final
1777 capture</span>
1778 </li>
1779 </ul>
1780
1781 </td> <!-- entry_type -->
1782
1783 <td class="entry_description">
1784 Information to 3A routines about the purpose
1785 of this capture,<wbr> to help decide optimal 3A
1786 strategy
1787 </td>
1788
1789 <td class="entry_units">
1790 </td>
1791
1792 <td class="entry_range">
1793 all must be supported
1794 </td>
1795
1796 <td class="entry_notes">
1797 Only used if android.<wbr>control.<wbr>mode != OFF.<wbr>
1798 </td>
1799
1800 <td class="entry_tags">
1801 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001802 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001803 </ul>
1804 </td>
1805
1806 </tr> <!-- end of entry -->
1807
1808
1809 <tr class="entry" id="controls_android.control.effectMode">
1810 <td class="entry_name">android.<wbr>control.<wbr>effect<wbr>Mode</td>
1811 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001812 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001813
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001814 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001815
1816 <ul class="entry_type_enum">
1817 <li>
1818 <span class="entry_type_enum_name">OFF</span>
1819 </li>
1820 <li>
1821 <span class="entry_type_enum_name">MONO</span>
1822 <span class="entry_type_enum_optional">optional</span>
1823 </li>
1824 <li>
1825 <span class="entry_type_enum_name">NEGATIVE</span>
1826 <span class="entry_type_enum_optional">optional</span>
1827 </li>
1828 <li>
1829 <span class="entry_type_enum_name">SOLARIZE</span>
1830 <span class="entry_type_enum_optional">optional</span>
1831 </li>
1832 <li>
1833 <span class="entry_type_enum_name">SEPIA</span>
1834 <span class="entry_type_enum_optional">optional</span>
1835 </li>
1836 <li>
1837 <span class="entry_type_enum_name">POSTERIZE</span>
1838 <span class="entry_type_enum_optional">optional</span>
1839 </li>
1840 <li>
1841 <span class="entry_type_enum_name">WHITEBOARD</span>
1842 <span class="entry_type_enum_optional">optional</span>
1843 </li>
1844 <li>
1845 <span class="entry_type_enum_name">BLACKBOARD</span>
1846 <span class="entry_type_enum_optional">optional</span>
1847 </li>
1848 <li>
1849 <span class="entry_type_enum_name">AQUA</span>
1850 <span class="entry_type_enum_optional">optional</span>
1851 </li>
1852 </ul>
1853
1854 </td> <!-- entry_type -->
1855
1856 <td class="entry_description">
1857 Whether any special color effect is in use.<wbr>
1858 Only used if android.<wbr>control.<wbr>mode != OFF
1859 </td>
1860
1861 <td class="entry_units">
1862 </td>
1863
1864 <td class="entry_range">
1865 android.<wbr>control.<wbr>available<wbr>Effects
1866 </td>
1867
1868 <td class="entry_notes">
1869 </td>
1870
1871 <td class="entry_tags">
1872 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001873 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001874 </ul>
1875 </td>
1876
1877 </tr> <!-- end of entry -->
1878
1879
1880 <tr class="entry" id="controls_android.control.mode">
1881 <td class="entry_name">android.<wbr>control.<wbr>mode</td>
1882 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001883 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001884
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001885 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001886
1887 <ul class="entry_type_enum">
1888 <li>
1889 <span class="entry_type_enum_name">OFF</span>
1890 <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
1891 routines are disabled,<wbr> no other settings in
1892 android.<wbr>control.<wbr>* have any effect</span>
1893 </li>
1894 <li>
1895 <span class="entry_type_enum_name">AUTO</span>
1896 <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
1897 Manual control of capture parameters is disabled.<wbr> All
1898 controls in android.<wbr>control.<wbr>* besides sceneMode take
1899 effect</span>
1900 </li>
1901 <li>
1902 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
1903 <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
1904 control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
1905 controls; the HAL must ignore those settings while
1906 USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
1907 scene mode).<wbr> Other control entries are still active.<wbr>
1908 This setting can only be used if availableSceneModes !=
1909 UNSUPPORTED</span>
1910 </li>
1911 </ul>
1912
1913 </td> <!-- entry_type -->
1914
1915 <td class="entry_description">
1916 Overall mode of 3A control
1917 routines
1918 </td>
1919
1920 <td class="entry_units">
1921 </td>
1922
1923 <td class="entry_range">
1924 all must be supported
1925 </td>
1926
1927 <td class="entry_notes">
1928 </td>
1929
1930 <td class="entry_tags">
1931 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08001932 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001933 </ul>
1934 </td>
1935
1936 </tr> <!-- end of entry -->
1937
1938
1939 <tr class="entry" id="controls_android.control.sceneMode">
1940 <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode</td>
1941 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08001942 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001943
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001944 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001945
1946 <ul class="entry_type_enum">
1947 <li>
1948 <span class="entry_type_enum_name">UNSUPPORTED</span>
1949 <span class="entry_type_enum_value">0</span>
1950 </li>
1951 <li>
1952 <span class="entry_type_enum_name">FACE_PRIORITY</span>
1953 <span class="entry_type_enum_notes">if face detection support exists Use face
1954 detection data to drive 3A routines.<wbr> If face detection
1955 statistics are disabled,<wbr> should still operate correctly
1956 (but not return face detection statistics to the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07001957 framework).<wbr>
1958
1959 Unlike the other scene modes,<wbr> aeMode,<wbr> awbMode,<wbr> and afMode
1960 remain active when FACE_<wbr>PRIORITY is set.<wbr> This is due to
1961 compatibility concerns with the old camera
1962 API</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08001963 </li>
1964 <li>
1965 <span class="entry_type_enum_name">ACTION</span>
1966 <span class="entry_type_enum_optional">optional</span>
1967 </li>
1968 <li>
1969 <span class="entry_type_enum_name">PORTRAIT</span>
1970 <span class="entry_type_enum_optional">optional</span>
1971 </li>
1972 <li>
1973 <span class="entry_type_enum_name">LANDSCAPE</span>
1974 <span class="entry_type_enum_optional">optional</span>
1975 </li>
1976 <li>
1977 <span class="entry_type_enum_name">NIGHT</span>
1978 <span class="entry_type_enum_optional">optional</span>
1979 </li>
1980 <li>
1981 <span class="entry_type_enum_name">NIGHT_PORTRAIT</span>
1982 <span class="entry_type_enum_optional">optional</span>
1983 </li>
1984 <li>
1985 <span class="entry_type_enum_name">THEATRE</span>
1986 <span class="entry_type_enum_optional">optional</span>
1987 </li>
1988 <li>
1989 <span class="entry_type_enum_name">BEACH</span>
1990 <span class="entry_type_enum_optional">optional</span>
1991 </li>
1992 <li>
1993 <span class="entry_type_enum_name">SNOW</span>
1994 <span class="entry_type_enum_optional">optional</span>
1995 </li>
1996 <li>
1997 <span class="entry_type_enum_name">SUNSET</span>
1998 <span class="entry_type_enum_optional">optional</span>
1999 </li>
2000 <li>
2001 <span class="entry_type_enum_name">STEADYPHOTO</span>
2002 <span class="entry_type_enum_optional">optional</span>
2003 </li>
2004 <li>
2005 <span class="entry_type_enum_name">FIREWORKS</span>
2006 <span class="entry_type_enum_optional">optional</span>
2007 </li>
2008 <li>
2009 <span class="entry_type_enum_name">SPORTS</span>
2010 <span class="entry_type_enum_optional">optional</span>
2011 </li>
2012 <li>
2013 <span class="entry_type_enum_name">PARTY</span>
2014 <span class="entry_type_enum_optional">optional</span>
2015 </li>
2016 <li>
2017 <span class="entry_type_enum_name">CANDLELIGHT</span>
2018 <span class="entry_type_enum_optional">optional</span>
2019 </li>
2020 <li>
2021 <span class="entry_type_enum_name">BARCODE</span>
2022 <span class="entry_type_enum_optional">optional</span>
2023 </li>
2024 </ul>
2025
2026 </td> <!-- entry_type -->
2027
2028 <td class="entry_description">
2029 Which scene mode is active when
2030 android.<wbr>control.<wbr>mode = SCENE_<wbr>MODE
2031 </td>
2032
2033 <td class="entry_units">
2034 </td>
2035
2036 <td class="entry_range">
2037 android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes
2038 </td>
2039
2040 <td class="entry_notes">
2041 </td>
2042
2043 <td class="entry_tags">
2044 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002045 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002046 </ul>
2047 </td>
2048
2049 </tr> <!-- end of entry -->
2050
2051
2052 <tr class="entry" id="controls_android.control.videoStabilizationMode">
2053 <td class="entry_name">android.<wbr>control.<wbr>video<wbr>Stabilization<wbr>Mode</td>
2054 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002055 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002056
Igor Murashkinb8dc8812013-07-17 16:29:34 -07002057 <span class="entry_type_visibility"> [public as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002058
2059 <ul class="entry_type_enum">
2060 <li>
2061 <span class="entry_type_enum_name">OFF</span>
2062 </li>
2063 <li>
2064 <span class="entry_type_enum_name">ON</span>
2065 </li>
2066 </ul>
2067
2068 </td> <!-- entry_type -->
2069
2070 <td class="entry_description">
2071 Whether video stabilization is
2072 active
2073 </td>
2074
2075 <td class="entry_units">
2076 </td>
2077
2078 <td class="entry_range">
2079 </td>
2080
2081 <td class="entry_notes">
2082 If enabled,<wbr> video stabilization can modify the
2083 android.<wbr>scaler.<wbr>crop<wbr>Region to keep the video stream
2084 stabilized
2085 </td>
2086
2087 <td class="entry_tags">
2088 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002089 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002090 </ul>
2091 </td>
2092
2093 </tr> <!-- end of entry -->
2094
2095
2096
2097 <!-- end of kind -->
2098 </tbody>
2099 <tr><td colspan="7" class="kind">static</td></tr>
2100
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002101 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002102 <tr>
2103 <th class="th_name">Property Name</th>
2104 <th class="th_type">Type</th>
2105 <th class="th_description">Description</th>
2106 <th class="th_units">Units</th>
2107 <th class="th_range">Range</th>
2108 <th class="th_notes">Notes</th>
2109 <th class="th_tags">Tags</th>
2110 </tr>
2111 </thead>
2112
2113 <tbody>
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124 <tr class="entry" id="static_android.control.aeAvailableAntibandingModes">
2125 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes</td>
2126 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002127 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002128 <span class="entry_type_container">x</span>
2129
2130 <span class="entry_type_array">
2131 n
2132 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002133 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002134 <div class="entry_type_notes">list of enums</div>
2135
2136
2137 </td> <!-- entry_type -->
2138
2139 <td class="entry_description">
2140 Which set of antibanding modes are
2141 supported
2142 </td>
2143
2144 <td class="entry_units">
2145 </td>
2146
2147 <td class="entry_range">
2148 </td>
2149
2150 <td class="entry_notes">
2151 </td>
2152
2153 <td class="entry_tags">
2154 </td>
2155
2156 </tr> <!-- end of entry -->
2157
2158
2159 <tr class="entry" id="static_android.control.aeAvailableModes">
2160 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes</td>
2161 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002162 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002163 <span class="entry_type_container">x</span>
2164
2165 <span class="entry_type_array">
2166 n
2167 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002168 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002169 <div class="entry_type_notes">list of enums</div>
2170
2171
2172 </td> <!-- entry_type -->
2173
2174 <td class="entry_description">
2175 Which subset of AE modes is
2176 supported
2177 </td>
2178
2179 <td class="entry_units">
2180 </td>
2181
2182 <td class="entry_range">
2183 OFF,<wbr> ON must be supported.<wbr>
2184 ON_<wbr>AUTO_<wbr>FLASH/<wbr>ON_<wbr>ALWAYS_<wbr>FLASH must be supported if flash
2185 unit is available
2186 </td>
2187
2188 <td class="entry_notes">
2189 </td>
2190
2191 <td class="entry_tags">
2192 </td>
2193
2194 </tr> <!-- end of entry -->
2195
2196
2197 <tr class="entry" id="static_android.control.aeAvailableTargetFpsRanges">
2198 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges</td>
2199 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002200 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002201 <span class="entry_type_container">x</span>
2202
2203 <span class="entry_type_array">
2204 2 x n
2205 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002207 <div class="entry_type_notes">list of pairs of frame rates</div>
2208
2209
2210 </td> <!-- entry_type -->
2211
2212 <td class="entry_description">
2213 List of frame rate ranges supported by the
2214 AE algorithm/<wbr>hardware
2215 </td>
2216
2217 <td class="entry_units">
2218 </td>
2219
2220 <td class="entry_range">
2221 </td>
2222
2223 <td class="entry_notes">
2224 </td>
2225
2226 <td class="entry_tags">
2227 </td>
2228
2229 </tr> <!-- end of entry -->
2230
2231
2232 <tr class="entry" id="static_android.control.aeCompensationRange">
2233 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Range</td>
2234 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002235 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002236 <span class="entry_type_container">x</span>
2237
2238 <span class="entry_type_array">
2239 2
2240 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002241 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002242
2243
2244 </td> <!-- entry_type -->
2245
2246 <td class="entry_description">
2247 Maximum and minimum exposure compensation
2248 setting,<wbr> in counts of
2249 android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step<wbr>Size
2250 </td>
2251
2252 <td class="entry_units">
2253 </td>
2254
2255 <td class="entry_range">
2256 At least (-2,<wbr>2)/<wbr>(exp compensation step
2257 size)
2258 </td>
2259
2260 <td class="entry_notes">
2261 </td>
2262
2263 <td class="entry_tags">
2264 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002265 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002266 </ul>
2267 </td>
2268
2269 </tr> <!-- end of entry -->
2270
2271
2272 <tr class="entry" id="static_android.control.aeCompensationStep">
2273 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step</td>
2274 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002275 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002276
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002277 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002278
2279
2280 </td> <!-- entry_type -->
2281
2282 <td class="entry_description">
2283 Smallest step by which exposure compensation
2284 can be changed
2285 </td>
2286
2287 <td class="entry_units">
2288 </td>
2289
2290 <td class="entry_range">
2291 <= 1/<wbr>2
2292 </td>
2293
2294 <td class="entry_notes">
2295 </td>
2296
2297 <td class="entry_tags">
2298 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002299 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002300 </ul>
2301 </td>
2302
2303 </tr> <!-- end of entry -->
2304
2305
2306 <tr class="entry" id="static_android.control.afAvailableModes">
2307 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Available<wbr>Modes</td>
2308 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002309 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002310 <span class="entry_type_container">x</span>
2311
2312 <span class="entry_type_array">
2313 n
2314 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002315 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002316 <div class="entry_type_notes">List of enums</div>
2317
2318
2319 </td> <!-- entry_type -->
2320
2321 <td class="entry_description">
2322 List of AF modes that can be
2323 selected
2324 </td>
2325
2326 <td class="entry_units">
2327 </td>
2328
2329 <td class="entry_range">
2330 OFF must be included.<wbr> AUTO must be supported if
2331 lens allows for changing focus
2332 </td>
2333
2334 <td class="entry_notes">
2335 </td>
2336
2337 <td class="entry_tags">
2338 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002339 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002340 </ul>
2341 </td>
2342
2343 </tr> <!-- end of entry -->
2344
2345
2346 <tr class="entry" id="static_android.control.availableEffects">
2347 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Effects</td>
2348 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002349 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002350 <span class="entry_type_container">x</span>
2351
2352 <span class="entry_type_array">
2353 n
2354 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002355 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002356 <div class="entry_type_notes">list of enums</div>
2357
2358
2359 </td> <!-- entry_type -->
2360
2361 <td class="entry_description">
2362 what subset of the full color effect enum
2363 list is supported
2364 </td>
2365
2366 <td class="entry_units">
2367 </td>
2368
2369 <td class="entry_range">
2370 OFF must be listed
2371 </td>
2372
2373 <td class="entry_notes">
2374 </td>
2375
2376 <td class="entry_tags">
2377 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002378 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002379 </ul>
2380 </td>
2381
2382 </tr> <!-- end of entry -->
2383
2384
2385 <tr class="entry" id="static_android.control.availableSceneModes">
2386 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes</td>
2387 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002388 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002389 <span class="entry_type_container">x</span>
2390
2391 <span class="entry_type_array">
2392 n
2393 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002394 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002395 <div class="entry_type_notes">list of enums from android.<wbr>control.<wbr>scene<wbr>Mode,<wbr> plus UNSUPPORTED to indicate no scene modes are supported</div>
2396
2397
2398 </td> <!-- entry_type -->
2399
2400 <td class="entry_description">
2401 what subset of the scene mode enum list is
2402 supported.<wbr>
2403 </td>
2404
2405 <td class="entry_units">
2406 </td>
2407
2408 <td class="entry_range">
2409 SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY must be supported if face
2410 detection is supported
2411 </td>
2412
2413 <td class="entry_notes">
2414 </td>
2415
2416 <td class="entry_tags">
2417 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002418 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002419 </ul>
2420 </td>
2421
2422 </tr> <!-- end of entry -->
2423
2424
2425 <tr class="entry" id="static_android.control.availableVideoStabilizationModes">
2426 <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Video<wbr>Stabilization<wbr>Modes</td>
2427 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002428 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002429 <span class="entry_type_container">x</span>
2430
2431 <span class="entry_type_array">
2432 n
2433 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002434 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002435 <div class="entry_type_notes">List of enums.<wbr></div>
2436
2437
2438 </td> <!-- entry_type -->
2439
2440 <td class="entry_description">
2441 List of video stabilization modes that can
2442 be supported
2443 </td>
2444
2445 <td class="entry_units">
2446 </td>
2447
2448 <td class="entry_range">
2449 OFF must be included
2450 </td>
2451
2452 <td class="entry_notes">
2453 </td>
2454
2455 <td class="entry_tags">
2456 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002457 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002458 </ul>
2459 </td>
2460
2461 </tr> <!-- end of entry -->
2462
2463
2464 <tr class="entry" id="static_android.control.awbAvailableModes">
2465 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Available<wbr>Modes</td>
2466 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002467 <span class="entry_type_name">byte</span>
Alex Raya4251d92013-04-30 16:43:44 -07002468 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002469
Alex Raya4251d92013-04-30 16:43:44 -07002470 <span class="entry_type_array">
2471 n
2472 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002473 <span class="entry_type_visibility"> [public]</span>
Alex Raya4251d92013-04-30 16:43:44 -07002474 <div class="entry_type_notes">List of enums (android.<wbr>control.<wbr>awb<wbr>Mode)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002475
2476
2477 </td> <!-- entry_type -->
2478
2479 <td class="entry_description">
2480 </td>
2481
2482 <td class="entry_units">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002483 </td>
2484
2485 <td class="entry_range">
2486 OFF,<wbr> AUTO must be included
2487 </td>
2488
2489 <td class="entry_notes">
2490 </td>
2491
2492 <td class="entry_tags">
2493 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002494 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002495 </ul>
2496 </td>
2497
2498 </tr> <!-- end of entry -->
2499
2500
2501 <tr class="entry" id="static_android.control.maxRegions">
2502 <td class="entry_name">android.<wbr>control.<wbr>max<wbr>Regions</td>
2503 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002504 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002505
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002506 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002507
2508
2509 </td> <!-- entry_type -->
2510
2511 <td class="entry_description">
2512 For AE,<wbr> AWB,<wbr> and AF,<wbr> how many individual
2513 regions can be listed for metering?
2514 </td>
2515
2516 <td class="entry_units">
2517 </td>
2518
2519 <td class="entry_range">
2520 >= 1
2521 </td>
2522
2523 <td class="entry_notes">
2524 </td>
2525
2526 <td class="entry_tags">
2527 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002528 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002529 </ul>
2530 </td>
2531
2532 </tr> <!-- end of entry -->
2533
2534
2535 <tr class="entry" id="static_android.control.sceneModeOverrides">
2536 <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode<wbr>Overrides</td>
2537 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002538 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002539 <span class="entry_type_container">x</span>
2540
2541 <span class="entry_type_array">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002542 3 x length(availableSceneModes)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002543 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002544 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002545
2546
2547 </td> <!-- entry_type -->
2548
2549 <td class="entry_description">
2550 List of AE,<wbr> AWB,<wbr> and AF modes to use for
2551 each available scene mode
2552 </td>
2553
2554 <td class="entry_units">
2555 </td>
2556
2557 <td class="entry_range">
2558 For each listed scene mode,<wbr> lists the aeMode,<wbr>
2559 awbMode,<wbr> and afMode that the HAL wants to use for that
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002560 scene mode.<wbr>
2561
2562 For each entry,<wbr> the order is {aeMode,<wbr> awbMode,<wbr> afMode} in
2563 order of increasing index
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002564 </td>
2565
2566 <td class="entry_notes">
2567 When a scene mode is enabled,<wbr> the HAL is expected
2568 to override aeMode,<wbr> awbMode,<wbr> and afMode with its
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002569 preferred settings for that scene mode.<wbr>
2570<br>
2571<br> To simplify communication with old camera API applications,<wbr>
2572 the service wants this override list in the static metadata.<wbr>
2573 The order of this list matches that of availableSceneModes,<wbr>
2574 with 3 entires for each scene mode.<wbr> The overrides listed
2575 for SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY are ignored,<wbr> since for that
2576 mode,<wbr> the application-set aeMode,<wbr> awbMode,<wbr> and afMode are
2577 used instead,<wbr> like they are when android.<wbr>control.<wbr>mode is
2578 AUTO.<wbr>
2579<br>
2580<br> It is recommended that for FACE_<wbr>PRIORITY,<wbr> the overrides
2581 should be set to 0.<wbr> As an example,<wbr> if availableSceneModes is
2582 { FACE_<wbr>PRIORITY,<wbr> ACTION,<wbr> NIGHT },<wbr> then the service expects
2583 this field to have 9 entries; for example { 0 ,<wbr> 0,<wbr> 0,<wbr>
2584 ON_<wbr>AUTO_<wbr>FLASH,<wbr> AUTO,<wbr> CONTINUOUS_<wbr>PICTURE,<wbr> ON_<wbr>AUTO_<wbr>FLASH,<wbr>
2585 INCANDESCENT,<wbr> AUTO }
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002586 </td>
2587
2588 <td class="entry_tags">
2589 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002590 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002591 </ul>
2592 </td>
2593
2594 </tr> <!-- end of entry -->
2595
2596
2597
2598 <!-- end of kind -->
2599 </tbody>
2600 <tr><td colspan="7" class="kind">dynamic</td></tr>
2601
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002602 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002603 <tr>
2604 <th class="th_name">Property Name</th>
2605 <th class="th_type">Type</th>
2606 <th class="th_description">Description</th>
2607 <th class="th_units">Units</th>
2608 <th class="th_range">Range</th>
2609 <th class="th_notes">Notes</th>
2610 <th class="th_tags">Tags</th>
2611 </tr>
2612 </thead>
2613
2614 <tbody>
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625 <tr class="entry" id="dynamic_android.control.aePrecaptureId">
2626 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Id</td>
2627 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002628 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002629
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002630 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002631
2632
2633 </td> <!-- entry_type -->
2634
2635 <td class="entry_description">
2636 The ID sent with the latest
2637 CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING call
2638 </td>
2639
2640 <td class="entry_units">
2641 </td>
2642
2643 <td class="entry_range">
2644 </td>
2645
2646 <td class="entry_notes">
2647 Must be 0 if no
2648 CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING trigger received yet
2649 by HAL.<wbr> Always updated even if AE algorithm ignores the
2650 trigger
2651 </td>
2652
2653 <td class="entry_tags">
2654 </td>
2655
2656 </tr> <!-- end of entry -->
2657
2658
2659 <tr class="entry" id="dynamic_android.control.aeRegions">
2660 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
2661 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002662 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002663 <span class="entry_type_container">x</span>
2664
2665 <span class="entry_type_array">
2666 5 x area_count
2667 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002668 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002669
2670
2671 </td> <!-- entry_type -->
2672
2673 <td class="entry_description">
2674 List of areas to use for
2675 metering
2676 </td>
2677
2678 <td class="entry_units">
2679 </td>
2680
2681 <td class="entry_range">
2682 </td>
2683
2684 <td class="entry_notes">
2685 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002686 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
2687 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002688<br>
2689<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002690 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
2691 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
2692 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
2693 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002694 should be nonnegative.<wbr>
2695<br>
2696<br> If all regions have 0 weight,<wbr> then no specific metering area
2697 needs to be used by the HAL.<wbr> If the metering region is
2698 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
2699 should ignore the sections outside the region and output the
2700 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002701 </td>
2702
2703 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002704 <ul class="entry_tags">
2705 <li><a href="#tag_BC">BC</a></li>
2706 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002707 </td>
2708
2709 </tr> <!-- end of entry -->
2710
2711
2712 <tr class="entry" id="dynamic_android.control.aeState">
2713 <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>State</td>
2714 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002715 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002716
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002717 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002718
2719 <ul class="entry_type_enum">
2720 <li>
2721 <span class="entry_type_enum_name">INACTIVE</span>
Alex Ray7aeb05e2013-03-27 16:26:41 -07002722 <span class="entry_type_enum_notes">AE is off.<wbr> When a camera device is opened,<wbr> it starts in
2723 this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002724 </li>
2725 <li>
2726 <span class="entry_type_enum_name">SEARCHING</span>
2727 <span class="entry_type_enum_notes">AE doesn't yet have a good set of control values
2728 for the current scene</span>
2729 </li>
2730 <li>
2731 <span class="entry_type_enum_name">CONVERGED</span>
2732 <span class="entry_type_enum_notes">AE has a good set of control values for the
2733 current scene</span>
2734 </li>
2735 <li>
2736 <span class="entry_type_enum_name">LOCKED</span>
2737 <span class="entry_type_enum_notes">AE has been locked (aeMode =
2738 LOCKED)</span>
2739 </li>
2740 <li>
2741 <span class="entry_type_enum_name">FLASH_REQUIRED</span>
2742 <span class="entry_type_enum_notes">AE has a good set of control values,<wbr> but flash
2743 needs to be fired for good quality still
2744 capture</span>
2745 </li>
2746 <li>
2747 <span class="entry_type_enum_name">PRECAPTURE</span>
2748 <span class="entry_type_enum_notes">AE has been asked to do a precapture sequence
2749 (through the
2750 trigger_<wbr>action(CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING)
2751 call),<wbr> and is currently executing it.<wbr> Once PRECAPTURE
2752 completes,<wbr> AE will transition to CONVERGED or
2753 FLASH_<wbr>REQUIRED as appropriate</span>
2754 </li>
2755 </ul>
2756
2757 </td> <!-- entry_type -->
2758
2759 <td class="entry_description">
2760 Current state of AE algorithm
2761 </td>
2762
2763 <td class="entry_units">
2764 </td>
2765
2766 <td class="entry_range">
2767 </td>
2768
2769 <td class="entry_notes">
2770 Whenever the AE algorithm state changes,<wbr> a
2771 MSG_<wbr>AUTOEXPOSURE notification must be send if a
2772 notification callback is registered.<wbr>
2773 </td>
2774
2775 <td class="entry_tags">
2776 </td>
2777
2778 </tr> <!-- end of entry -->
2779
2780
2781 <tr class="entry" id="dynamic_android.control.afMode">
2782 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
2783 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002784 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002785
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002786 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002787
2788 <ul class="entry_type_enum">
2789 <li>
2790 <span class="entry_type_enum_name">OFF</span>
2791 <span class="entry_type_enum_notes">The 3A routines do not control the lens;
Zhijun He69fc0ea2013-07-17 09:42:58 -07002792 android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002793 application</span>
2794 </li>
2795 <li>
2796 <span class="entry_type_enum_name">AUTO</span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002797 <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
2798
2799 Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
2800 is fixed focus In this mode,<wbr> the lens does not move unless
2801 the autofocus trigger action is called.<wbr> When that trigger
2802 is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
2803 the outcome of the scan (FOCUSED or
2804 NOT_<wbr>FOCUSED).<wbr>
2805
2806 Triggering cancel AF resets the lens position to default,<wbr>
2807 and sets the AF state to INACTIVE.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002808 </li>
2809 <li>
2810 <span class="entry_type_enum_name">MACRO</span>
2811 <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002812 autofocus trigger action is called.<wbr>
2813
2814 When that trigger is activated,<wbr> AF must transition to
2815 ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
2816 NOT_<wbr>FOCUSED).<wbr> Triggering cancel AF resets the lens
2817 position to default,<wbr> and sets the AF state to
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002818 INACTIVE.<wbr></span>
2819 </li>
2820 <li>
2821 <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
2822 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
2823 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002824 constantly-in-focus image stream.<wbr>
2825
2826 The focusing behavior should be suitable for good quality
2827 video recording; typically this means slower focus
2828 movement and no overshoots.<wbr> When the AF trigger is not
2829 involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
2830 and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
2831 states as appropriate.<wbr> When the AF trigger is activated,<wbr>
2832 the algorithm should immediately transition into
2833 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
2834 lens position until a cancel AF trigger is received.<wbr>
2835
2836 Once cancel is received,<wbr> the algorithm should transition
2837 back to INACTIVE and resume passive scan.<wbr> Note that this
2838 behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
2839 ongoing PASSIVE_<wbr>SCAN must immediately be
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002840 canceled.<wbr></span>
2841 </li>
2842 <li>
2843 <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
2844 <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
2845 position continually to attempt to provide a
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002846 constantly-in-focus image stream.<wbr>
2847
2848 The focusing behavior should be suitable for still image
2849 capture; typically this means focusing as fast as
2850 possible.<wbr> When the AF trigger is not involved,<wbr> the AF
2851 algorithm should start in INACTIVE state,<wbr> and then
2852 transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
2853 appropriate as it attempts to maintain focus.<wbr> When the AF
2854 trigger is activated,<wbr> the algorithm should finish its
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002855 PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002856 AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
2857 lens position until a cancel AF trigger is received.<wbr>
2858
2859 When the AF cancel trigger is activated,<wbr> the algorithm
2860 should transition back to INACTIVE and then act as if it
2861 has just been started.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002862 </li>
2863 <li>
2864 <span class="entry_type_enum_name">EDOF</span>
2865 <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
2866 trigger is ignored,<wbr> AF state should always be
2867 INACTIVE.<wbr></span>
2868 </li>
2869 </ul>
2870
2871 </td> <!-- entry_type -->
2872
2873 <td class="entry_description">
2874 Whether AF is currently enabled,<wbr> and what
2875 mode it is set to
2876 </td>
2877
2878 <td class="entry_units">
2879 </td>
2880
2881 <td class="entry_range">
2882 </td>
2883
2884 <td class="entry_notes">
2885 </td>
2886
2887 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002888 <ul class="entry_tags">
2889 <li><a href="#tag_BC">BC</a></li>
2890 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002891 </td>
2892
2893 </tr> <!-- end of entry -->
2894
2895
2896 <tr class="entry" id="dynamic_android.control.afRegions">
2897 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
2898 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002899 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002900 <span class="entry_type_container">x</span>
2901
2902 <span class="entry_type_array">
2903 5 x area_count
2904 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002905 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002906
2907
2908 </td> <!-- entry_type -->
2909
2910 <td class="entry_description">
2911 List of areas to use for focus
2912 estimation
2913 </td>
2914
2915 <td class="entry_units">
2916 </td>
2917
2918 <td class="entry_range">
2919 </td>
2920
2921 <td class="entry_notes">
2922 Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002923 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
2924 specified coordinates.<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002925<br>
2926<br> The coordinate system is based on the active pixel array,<wbr>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07002927 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
2928 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
2929 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
2930 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002931 should be nonnegative.<wbr>
2932<br>
2933<br> If all regions have 0 weight,<wbr> then no specific focus area
2934 needs to be used by the HAL.<wbr> If the focusing region is
2935 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
2936 should ignore the sections outside the region and output the
2937 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002938 </td>
2939
2940 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08002941 <ul class="entry_tags">
2942 <li><a href="#tag_BC">BC</a></li>
2943 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002944 </td>
2945
2946 </tr> <!-- end of entry -->
2947
2948
2949 <tr class="entry" id="dynamic_android.control.afState">
2950 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>State</td>
2951 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08002952 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002953
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07002954 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002955
2956 <ul class="entry_type_enum">
2957 <li>
2958 <span class="entry_type_enum_name">INACTIVE</span>
2959 <span class="entry_type_enum_notes">AF off or has not yet tried to scan/<wbr>been asked
Alex Ray7aeb05e2013-03-27 16:26:41 -07002960 to scan.<wbr> When a camera device is opened,<wbr> it starts in
2961 this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08002962 </li>
2963 <li>
2964 <span class="entry_type_enum_name">PASSIVE_SCAN</span>
2965 <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported AF is
2966 currently doing an AF scan initiated by a continuous
2967 autofocus mode</span>
2968 </li>
2969 <li>
2970 <span class="entry_type_enum_name">PASSIVE_FOCUSED</span>
2971 <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported AF currently
2972 believes it is in focus,<wbr> but may restart scanning at
2973 any time.<wbr></span>
2974 </li>
2975 <li>
2976 <span class="entry_type_enum_name">ACTIVE_SCAN</span>
2977 <span class="entry_type_enum_notes">if AUTO or MACRO modes are supported AF is doing
2978 an AF scan because it was triggered by AF
2979 trigger</span>
2980 </li>
2981 <li>
2982 <span class="entry_type_enum_name">FOCUSED_LOCKED</span>
2983 <span class="entry_type_enum_notes">if any AF mode besides OFF is supported AF
2984 believes it is focused correctly and is
2985 locked</span>
2986 </li>
2987 <li>
2988 <span class="entry_type_enum_name">NOT_FOCUSED_LOCKED</span>
2989 <span class="entry_type_enum_notes">if any AF mode besides OFF is supported AF has
2990 failed to focus successfully and is
2991 locked</span>
2992 </li>
2993 </ul>
2994
2995 </td> <!-- entry_type -->
2996
2997 <td class="entry_description">
2998 Current state of AF algorithm
2999 </td>
3000
3001 <td class="entry_units">
3002 </td>
3003
3004 <td class="entry_range">
3005 </td>
3006
3007 <td class="entry_notes">
3008 Whenever the AF algorithm state changes,<wbr> a
3009 MSG_<wbr>AUTOFOCUS notification must be send if a notification
3010 callback is registered.<wbr>
3011 </td>
3012
3013 <td class="entry_tags">
3014 </td>
3015
3016 </tr> <!-- end of entry -->
3017
3018
3019 <tr class="entry" id="dynamic_android.control.afTriggerId">
3020 <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger<wbr>Id</td>
3021 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003022 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003023
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003024 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003025
3026
3027 </td> <!-- entry_type -->
3028
3029 <td class="entry_description">
3030 The ID sent with the latest
3031 CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS call
3032 </td>
3033
3034 <td class="entry_units">
3035 </td>
3036
3037 <td class="entry_range">
3038 </td>
3039
3040 <td class="entry_notes">
3041 Must be 0 if no CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS trigger
3042 received yet by HAL.<wbr> Always updated even if AF algorithm
3043 ignores the trigger
3044 </td>
3045
3046 <td class="entry_tags">
3047 </td>
3048
3049 </tr> <!-- end of entry -->
3050
3051
3052 <tr class="entry" id="dynamic_android.control.awbMode">
3053 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
3054 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003055 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003056
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003057 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003058
3059 <ul class="entry_type_enum">
3060 <li>
3061 <span class="entry_type_enum_name">OFF</span>
3062 </li>
3063 <li>
3064 <span class="entry_type_enum_name">AUTO</span>
3065 </li>
3066 <li>
3067 <span class="entry_type_enum_name">INCANDESCENT</span>
3068 </li>
3069 <li>
3070 <span class="entry_type_enum_name">FLUORESCENT</span>
3071 </li>
3072 <li>
3073 <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
3074 </li>
3075 <li>
3076 <span class="entry_type_enum_name">DAYLIGHT</span>
3077 </li>
3078 <li>
3079 <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
3080 </li>
3081 <li>
3082 <span class="entry_type_enum_name">TWILIGHT</span>
3083 </li>
3084 <li>
3085 <span class="entry_type_enum_name">SHADE</span>
3086 </li>
3087 </ul>
3088
3089 </td> <!-- entry_type -->
3090
3091 <td class="entry_description">
3092 Whether AWB is currently setting the color
3093 transform fields,<wbr> and what its illumination target
3094 is
3095 </td>
3096
3097 <td class="entry_units">
3098 </td>
3099
3100 <td class="entry_range">
3101 </td>
3102
3103 <td class="entry_notes">
3104 [BC - AWB lock,<wbr>AWB modes]
3105 </td>
3106
3107 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003108 <ul class="entry_tags">
3109 <li><a href="#tag_BC">BC</a></li>
3110 <li><a href="#tag_AWB">AWB</a></li>
3111 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003112 </td>
3113
3114 </tr> <!-- end of entry -->
3115
3116
3117 <tr class="entry" id="dynamic_android.control.awbRegions">
3118 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
3119 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003120 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003121 <span class="entry_type_container">x</span>
3122
3123 <span class="entry_type_array">
3124 5 x area_count
3125 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003126 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003127
3128
3129 </td> <!-- entry_type -->
3130
3131 <td class="entry_description">
3132 List of areas to use for illuminant
3133 estimation
3134 </td>
3135
3136 <td class="entry_units">
3137 </td>
3138
3139 <td class="entry_range">
3140 </td>
3141
3142 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003143 Only used in AUTO mode.<wbr>
3144<br>
Timothy Knightfd4cc6d2013-09-03 17:21:45 -07003145<br> Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
3146 xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
3147 specified coordinates.<wbr>
3148<br>
3149<br> The coordinate system is based on the active pixel array,<wbr>
3150 with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
3151 (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
3152 android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
3153 bottom-right pixel in the active pixel array.<wbr> The weight
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003154 should be nonnegative.<wbr>
3155<br>
3156<br> If all regions have 0 weight,<wbr> then no specific metering area
3157 needs to be used by the HAL.<wbr> If the metering region is
3158 outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
3159 should ignore the sections outside the region and output the
3160 used sections in the frame metadata
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003161 </td>
3162
3163 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003164 <ul class="entry_tags">
3165 <li><a href="#tag_BC">BC</a></li>
3166 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003167 </td>
3168
3169 </tr> <!-- end of entry -->
3170
3171
3172 <tr class="entry" id="dynamic_android.control.awbState">
3173 <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>State</td>
3174 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003175 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003176
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003177 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003178
3179 <ul class="entry_type_enum">
3180 <li>
3181 <span class="entry_type_enum_name">INACTIVE</span>
Alex Ray7aeb05e2013-03-27 16:26:41 -07003182 <span class="entry_type_enum_notes">AWB is not in auto mode.<wbr> When a camera device is opened,<wbr> it
3183 starts in this state.<wbr></span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003184 </li>
3185 <li>
3186 <span class="entry_type_enum_name">SEARCHING</span>
3187 <span class="entry_type_enum_notes">AWB doesn't yet have a good set of control
3188 values for the current scene</span>
3189 </li>
3190 <li>
3191 <span class="entry_type_enum_name">CONVERGED</span>
3192 <span class="entry_type_enum_notes">AWB has a good set of control values for the
3193 current scene</span>
3194 </li>
3195 <li>
3196 <span class="entry_type_enum_name">LOCKED</span>
3197 <span class="entry_type_enum_notes">AE has been locked (aeMode =
3198 LOCKED)</span>
3199 </li>
3200 </ul>
3201
3202 </td> <!-- entry_type -->
3203
3204 <td class="entry_description">
3205 Current state of AWB algorithm
3206 </td>
3207
3208 <td class="entry_units">
3209 </td>
3210
3211 <td class="entry_range">
3212 </td>
3213
3214 <td class="entry_notes">
3215 Whenever the AWB algorithm state changes,<wbr> a
3216 MSG_<wbr>AUTOWHITEBALANCE notification must be send if a
3217 notification callback is registered.<wbr>
3218 </td>
3219
3220 <td class="entry_tags">
3221 </td>
3222
3223 </tr> <!-- end of entry -->
3224
3225
3226 <tr class="entry" id="dynamic_android.control.mode">
3227 <td class="entry_name">android.<wbr>control.<wbr>mode</td>
3228 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003229 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003230
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003231 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003232
3233 <ul class="entry_type_enum">
3234 <li>
3235 <span class="entry_type_enum_name">OFF</span>
3236 <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
3237 routines are disabled,<wbr> no other settings in
3238 android.<wbr>control.<wbr>* have any effect</span>
3239 </li>
3240 <li>
3241 <span class="entry_type_enum_name">AUTO</span>
3242 <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
3243 Manual control of capture parameters is disabled.<wbr> All
3244 controls in android.<wbr>control.<wbr>* besides sceneMode take
3245 effect</span>
3246 </li>
3247 <li>
3248 <span class="entry_type_enum_name">USE_SCENE_MODE</span>
3249 <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
3250 control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
3251 controls; the HAL must ignore those settings while
3252 USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
3253 scene mode).<wbr> Other control entries are still active.<wbr>
3254 This setting can only be used if availableSceneModes !=
3255 UNSUPPORTED</span>
3256 </li>
3257 </ul>
3258
3259 </td> <!-- entry_type -->
3260
3261 <td class="entry_description">
3262 Overall mode of 3A control
3263 routines
3264 </td>
3265
3266 <td class="entry_units">
3267 </td>
3268
3269 <td class="entry_range">
3270 all must be supported
3271 </td>
3272
3273 <td class="entry_notes">
3274 </td>
3275
3276 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003277 <ul class="entry_tags">
3278 <li><a href="#tag_BC">BC</a></li>
3279 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003280 </td>
3281
3282 </tr> <!-- end of entry -->
3283
3284
3285
3286 <!-- end of kind -->
3287 </tbody>
3288
3289 <!-- end of section -->
3290 <tr><td colspan="7" id="section_demosaic" class="section">demosaic</td></tr>
3291
3292
3293 <tr><td colspan="7" class="kind">controls</td></tr>
3294
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003295 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003296 <tr>
3297 <th class="th_name">Property Name</th>
3298 <th class="th_type">Type</th>
3299 <th class="th_description">Description</th>
3300 <th class="th_units">Units</th>
3301 <th class="th_range">Range</th>
3302 <th class="th_notes">Notes</th>
3303 <th class="th_tags">Tags</th>
3304 </tr>
3305 </thead>
3306
3307 <tbody>
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318 <tr class="entry" id="controls_android.demosaic.mode">
3319 <td class="entry_name">android.<wbr>demosaic.<wbr>mode</td>
3320 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003321 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003322
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003323 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003324
3325 <ul class="entry_type_enum">
3326 <li>
3327 <span class="entry_type_enum_name">FAST</span>
3328 <span class="entry_type_enum_notes">Minimal or no slowdown of frame rate compared to
3329 Bayer RAW output</span>
3330 </li>
3331 <li>
3332 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3333 <span class="entry_type_enum_notes">High-quality may reduce output frame
3334 rate</span>
3335 </li>
3336 </ul>
3337
3338 </td> <!-- entry_type -->
3339
3340 <td class="entry_description">
3341 Controls the quality of the demosaicing
3342 processing
3343 </td>
3344
3345 <td class="entry_units">
3346 </td>
3347
3348 <td class="entry_range">
3349 </td>
3350
3351 <td class="entry_notes">
3352 </td>
3353
3354 <td class="entry_tags">
3355 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003356 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003357 </ul>
3358 </td>
3359
3360 </tr> <!-- end of entry -->
3361
3362
3363
3364 <!-- end of kind -->
3365 </tbody>
3366
3367 <!-- end of section -->
3368 <tr><td colspan="7" id="section_edge" class="section">edge</td></tr>
3369
3370
3371 <tr><td colspan="7" class="kind">controls</td></tr>
3372
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003373 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003374 <tr>
3375 <th class="th_name">Property Name</th>
3376 <th class="th_type">Type</th>
3377 <th class="th_description">Description</th>
3378 <th class="th_units">Units</th>
3379 <th class="th_range">Range</th>
3380 <th class="th_notes">Notes</th>
3381 <th class="th_tags">Tags</th>
3382 </tr>
3383 </thead>
3384
3385 <tbody>
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396 <tr class="entry" id="controls_android.edge.mode">
3397 <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
3398 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003399 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003400
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003401 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003402
3403 <ul class="entry_type_enum">
3404 <li>
3405 <span class="entry_type_enum_name">OFF</span>
3406 <span class="entry_type_enum_notes">No edge enhancement is applied</span>
3407 </li>
3408 <li>
3409 <span class="entry_type_enum_name">FAST</span>
3410 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
3411 bayer output</span>
3412 </li>
3413 <li>
3414 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3415 <span class="entry_type_enum_notes">Frame rate may be reduced by high
3416 quality</span>
3417 </li>
3418 </ul>
3419
3420 </td> <!-- entry_type -->
3421
3422 <td class="entry_description">
3423 Operation mode for edge
3424 enhancement
3425 </td>
3426
3427 <td class="entry_units">
3428 </td>
3429
3430 <td class="entry_range">
3431 </td>
3432
3433 <td class="entry_notes">
3434 </td>
3435
3436 <td class="entry_tags">
3437 </td>
3438
3439 </tr> <!-- end of entry -->
3440
3441
3442 <tr class="entry" id="controls_android.edge.strength">
3443 <td class="entry_name">android.<wbr>edge.<wbr>strength</td>
3444 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003445 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003446
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003447 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003448
3449
3450 </td> <!-- entry_type -->
3451
3452 <td class="entry_description">
3453 Control the amount of edge enhancement
3454 applied to the images
3455 </td>
3456
3457 <td class="entry_units">
3458 1-10; 10 is maximum sharpening
3459 </td>
3460
3461 <td class="entry_range">
3462 </td>
3463
3464 <td class="entry_notes">
3465 </td>
3466
3467 <td class="entry_tags">
3468 </td>
3469
3470 </tr> <!-- end of entry -->
3471
3472
3473
3474 <!-- end of kind -->
3475 </tbody>
3476 <tr><td colspan="7" class="kind">dynamic</td></tr>
3477
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003478 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003479 <tr>
3480 <th class="th_name">Property Name</th>
3481 <th class="th_type">Type</th>
3482 <th class="th_description">Description</th>
3483 <th class="th_units">Units</th>
3484 <th class="th_range">Range</th>
3485 <th class="th_notes">Notes</th>
3486 <th class="th_tags">Tags</th>
3487 </tr>
3488 </thead>
3489
3490 <tbody>
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501 <tr class="entry" id="dynamic_android.edge.mode">
3502 <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
3503 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003504 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003505
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003506 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003507
3508 <ul class="entry_type_enum">
3509 <li>
3510 <span class="entry_type_enum_name">OFF</span>
3511 <span class="entry_type_enum_notes">No edge enhancement is applied</span>
3512 </li>
3513 <li>
3514 <span class="entry_type_enum_name">FAST</span>
3515 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
3516 bayer output</span>
3517 </li>
3518 <li>
3519 <span class="entry_type_enum_name">HIGH_QUALITY</span>
3520 <span class="entry_type_enum_notes">Frame rate may be reduced by high
3521 quality</span>
3522 </li>
3523 </ul>
3524
3525 </td> <!-- entry_type -->
3526
3527 <td class="entry_description">
3528 Operation mode for edge
3529 enhancement
3530 </td>
3531
3532 <td class="entry_units">
3533 </td>
3534
3535 <td class="entry_range">
3536 </td>
3537
3538 <td class="entry_notes">
3539 </td>
3540
3541 <td class="entry_tags">
3542 </td>
3543
3544 </tr> <!-- end of entry -->
3545
3546
3547
3548 <!-- end of kind -->
3549 </tbody>
3550
3551 <!-- end of section -->
3552 <tr><td colspan="7" id="section_flash" class="section">flash</td></tr>
3553
3554
3555 <tr><td colspan="7" class="kind">controls</td></tr>
3556
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003557 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003558 <tr>
3559 <th class="th_name">Property Name</th>
3560 <th class="th_type">Type</th>
3561 <th class="th_description">Description</th>
3562 <th class="th_units">Units</th>
3563 <th class="th_range">Range</th>
3564 <th class="th_notes">Notes</th>
3565 <th class="th_tags">Tags</th>
3566 </tr>
3567 </thead>
3568
3569 <tbody>
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580 <tr class="entry" id="controls_android.flash.firingPower">
3581 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
3582 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003583 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003584
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003585 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003586
3587
3588 </td> <!-- entry_type -->
3589
3590 <td class="entry_description">
3591 Power for flash firing/<wbr>torch
3592 </td>
3593
3594 <td class="entry_units">
3595 10 is max power; 0 is no flash.<wbr> Linear
3596 </td>
3597
3598 <td class="entry_range">
3599 0 - 10
3600 </td>
3601
3602 <td class="entry_notes">
3603 Power for snapshot may use a different scale than
3604 for torch mode.<wbr> Only one entry for torch mode will be
3605 used
3606 </td>
3607
3608 <td class="entry_tags">
3609 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003610 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003611 </ul>
3612 </td>
3613
3614 </tr> <!-- end of entry -->
3615
3616
3617 <tr class="entry" id="controls_android.flash.firingTime">
3618 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
3619 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003620 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003621
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003622 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003623
3624
3625 </td> <!-- entry_type -->
3626
3627 <td class="entry_description">
3628 Firing time of flash relative to start of
3629 exposure
3630 </td>
3631
3632 <td class="entry_units">
3633 nanoseconds
3634 </td>
3635
3636 <td class="entry_range">
3637 0-(exposure time-flash duration)
3638 </td>
3639
3640 <td class="entry_notes">
3641 Clamped to (0,<wbr> exposure time - flash
3642 duration).<wbr>
3643 </td>
3644
3645 <td class="entry_tags">
3646 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003647 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003648 </ul>
3649 </td>
3650
3651 </tr> <!-- end of entry -->
3652
3653
3654 <tr class="entry" id="controls_android.flash.mode">
3655 <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
3656 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003657 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003658
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003659 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003660
3661 <ul class="entry_type_enum">
3662 <li>
3663 <span class="entry_type_enum_name">OFF</span>
3664 <span class="entry_type_enum_notes">Do not fire the flash for this
3665 capture</span>
3666 </li>
3667 <li>
3668 <span class="entry_type_enum_name">SINGLE</span>
3669 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
3670 for this capture based on firingPower,<wbr>
3671 firingTime.<wbr></span>
3672 </li>
3673 <li>
3674 <span class="entry_type_enum_name">TORCH</span>
3675 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
3676 continuously on,<wbr> power set by
3677 firingPower</span>
3678 </li>
3679 </ul>
3680
3681 </td> <!-- entry_type -->
3682
3683 <td class="entry_description">
3684 Select flash operation mode
3685 </td>
3686
3687 <td class="entry_units">
3688 </td>
3689
3690 <td class="entry_range">
3691 </td>
3692
3693 <td class="entry_notes">
3694 </td>
3695
3696 <td class="entry_tags">
3697 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003698 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003699 </ul>
3700 </td>
3701
3702 </tr> <!-- end of entry -->
3703
3704
3705
3706 <!-- end of kind -->
3707 </tbody>
3708 <tr><td colspan="7" class="kind">static</td></tr>
3709
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003710 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003711 <tr>
3712 <th class="th_name">Property Name</th>
3713 <th class="th_type">Type</th>
3714 <th class="th_description">Description</th>
3715 <th class="th_units">Units</th>
3716 <th class="th_range">Range</th>
3717 <th class="th_notes">Notes</th>
3718 <th class="th_tags">Tags</th>
3719 </tr>
3720 </thead>
3721
3722 <tbody>
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735 <tr class="entry" id="static_android.flash.info.available">
3736 <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>available</td>
3737 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003738 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003739
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003740 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003741
3742
3743 </td> <!-- entry_type -->
3744
3745 <td class="entry_description">
3746 Whether this camera has a
3747 flash
3748 </td>
3749
3750 <td class="entry_units">
3751 boolean (0 = false,<wbr> otherwise true)
3752 </td>
3753
3754 <td class="entry_range">
3755 </td>
3756
3757 <td class="entry_notes">
3758 If no flash,<wbr> none of the flash controls do
3759 anything.<wbr> All other metadata should return 0
3760 </td>
3761
3762 <td class="entry_tags">
3763 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003764 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003765 </ul>
3766 </td>
3767
3768 </tr> <!-- end of entry -->
3769
3770
3771 <tr class="entry" id="static_android.flash.info.chargeDuration">
3772 <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>charge<wbr>Duration</td>
3773 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003774 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003775
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003776 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003777
3778
3779 </td> <!-- entry_type -->
3780
3781 <td class="entry_description">
3782 Time taken before flash can fire
3783 again
3784 </td>
3785
3786 <td class="entry_units">
3787 nanoseconds
3788 </td>
3789
3790 <td class="entry_range">
3791 0-1e9
3792 </td>
3793
3794 <td class="entry_notes">
3795 1 second too long/<wbr>too short for recharge? Should
3796 this be power-dependent?
3797 </td>
3798
3799 <td class="entry_tags">
3800 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003801 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003802 </ul>
3803 </td>
3804
3805 </tr> <!-- end of entry -->
3806
3807
3808
3809
3810
3811 <tr class="entry" id="static_android.flash.colorTemperature">
3812 <td class="entry_name">android.<wbr>flash.<wbr>color<wbr>Temperature</td>
3813 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003814 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003815
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003816 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003817
3818
3819 </td> <!-- entry_type -->
3820
3821 <td class="entry_description">
3822 The x,<wbr>y whitepoint of the
3823 flash
3824 </td>
3825
3826 <td class="entry_units">
3827 pair of floats
3828 </td>
3829
3830 <td class="entry_range">
3831 0-1 for both
3832 </td>
3833
3834 <td class="entry_notes">
3835 </td>
3836
3837 <td class="entry_tags">
3838 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003839 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003840 </ul>
3841 </td>
3842
3843 </tr> <!-- end of entry -->
3844
3845
3846 <tr class="entry" id="static_android.flash.maxEnergy">
3847 <td class="entry_name">android.<wbr>flash.<wbr>max<wbr>Energy</td>
3848 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003849 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003850
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003851 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003852
3853
3854 </td> <!-- entry_type -->
3855
3856 <td class="entry_description">
3857 Max energy output of the flash for a full
3858 power single flash
3859 </td>
3860
3861 <td class="entry_units">
3862 lumen-seconds
3863 </td>
3864
3865 <td class="entry_range">
3866 >= 0
3867 </td>
3868
3869 <td class="entry_notes">
3870 </td>
3871
3872 <td class="entry_tags">
3873 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003874 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003875 </ul>
3876 </td>
3877
3878 </tr> <!-- end of entry -->
3879
3880
3881
3882 <!-- end of kind -->
3883 </tbody>
3884 <tr><td colspan="7" class="kind">dynamic</td></tr>
3885
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003886 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003887 <tr>
3888 <th class="th_name">Property Name</th>
3889 <th class="th_type">Type</th>
3890 <th class="th_description">Description</th>
3891 <th class="th_units">Units</th>
3892 <th class="th_range">Range</th>
3893 <th class="th_notes">Notes</th>
3894 <th class="th_tags">Tags</th>
3895 </tr>
3896 </thead>
3897
3898 <tbody>
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909 <tr class="entry" id="dynamic_android.flash.firingPower">
3910 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
3911 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003912 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003913
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003914 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003915
3916
3917 </td> <!-- entry_type -->
3918
3919 <td class="entry_description">
3920 Power for flash firing/<wbr>torch
3921 </td>
3922
3923 <td class="entry_units">
3924 10 is max power; 0 is no flash.<wbr> Linear
3925 </td>
3926
3927 <td class="entry_range">
3928 0 - 10
3929 </td>
3930
3931 <td class="entry_notes">
3932 Power for snapshot may use a different scale than
3933 for torch mode.<wbr> Only one entry for torch mode will be
3934 used
3935 </td>
3936
3937 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003938 <ul class="entry_tags">
3939 <li><a href="#tag_V1">V1</a></li>
3940 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003941 </td>
3942
3943 </tr> <!-- end of entry -->
3944
3945
3946 <tr class="entry" id="dynamic_android.flash.firingTime">
3947 <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
3948 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003949 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003950
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003951 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003952
3953
3954 </td> <!-- entry_type -->
3955
3956 <td class="entry_description">
3957 Firing time of flash relative to start of
3958 exposure
3959 </td>
3960
3961 <td class="entry_units">
3962 nanoseconds
3963 </td>
3964
3965 <td class="entry_range">
3966 0-(exposure time-flash duration)
3967 </td>
3968
3969 <td class="entry_notes">
3970 Clamped to (0,<wbr> exposure time - flash
3971 duration).<wbr>
3972 </td>
3973
3974 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08003975 <ul class="entry_tags">
3976 <li><a href="#tag_V1">V1</a></li>
3977 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003978 </td>
3979
3980 </tr> <!-- end of entry -->
3981
3982
3983 <tr class="entry" id="dynamic_android.flash.mode">
3984 <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
3985 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08003986 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003987
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07003988 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08003989
3990 <ul class="entry_type_enum">
3991 <li>
3992 <span class="entry_type_enum_name">OFF</span>
3993 <span class="entry_type_enum_notes">Do not fire the flash for this
3994 capture</span>
3995 </li>
3996 <li>
3997 <span class="entry_type_enum_name">SINGLE</span>
3998 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
3999 for this capture based on firingPower,<wbr>
4000 firingTime.<wbr></span>
4001 </li>
4002 <li>
4003 <span class="entry_type_enum_name">TORCH</span>
4004 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
4005 continuously on,<wbr> power set by
4006 firingPower</span>
4007 </li>
4008 </ul>
4009
4010 </td> <!-- entry_type -->
4011
4012 <td class="entry_description">
4013 Select flash operation mode
4014 </td>
4015
4016 <td class="entry_units">
4017 </td>
4018
4019 <td class="entry_range">
4020 </td>
4021
4022 <td class="entry_notes">
4023 </td>
4024
4025 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004026 <ul class="entry_tags">
4027 <li><a href="#tag_BC">BC</a></li>
4028 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004029 </td>
4030
4031 </tr> <!-- end of entry -->
4032
4033
4034 <tr class="entry" id="dynamic_android.flash.state">
4035 <td class="entry_name">android.<wbr>flash.<wbr>state</td>
4036 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004037 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004038
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004039 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004040
4041 <ul class="entry_type_enum">
4042 <li>
4043 <span class="entry_type_enum_name">UNAVAILABLE</span>
4044 <span class="entry_type_enum_notes">No flash on camera</span>
4045 </li>
4046 <li>
4047 <span class="entry_type_enum_name">CHARGING</span>
4048 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
4049 charging and cannot be fired</span>
4050 </li>
4051 <li>
4052 <span class="entry_type_enum_name">READY</span>
4053 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
4054 ready to fire</span>
4055 </li>
4056 <li>
4057 <span class="entry_type_enum_name">FIRED</span>
4058 <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash fired
4059 for this capture</span>
4060 </li>
4061 </ul>
4062
4063 </td> <!-- entry_type -->
4064
4065 <td class="entry_description">
4066 Current state of the flash
4067 unit
4068 </td>
4069
4070 <td class="entry_units">
4071 </td>
4072
4073 <td class="entry_range">
4074 </td>
4075
4076 <td class="entry_notes">
4077 </td>
4078
4079 <td class="entry_tags">
4080 </td>
4081
4082 </tr> <!-- end of entry -->
4083
4084
4085
4086 <!-- end of kind -->
4087 </tbody>
4088
4089 <!-- end of section -->
4090 <tr><td colspan="7" id="section_geometric" class="section">geometric</td></tr>
4091
4092
4093 <tr><td colspan="7" class="kind">controls</td></tr>
4094
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004095 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004096 <tr>
4097 <th class="th_name">Property Name</th>
4098 <th class="th_type">Type</th>
4099 <th class="th_description">Description</th>
4100 <th class="th_units">Units</th>
4101 <th class="th_range">Range</th>
4102 <th class="th_notes">Notes</th>
4103 <th class="th_tags">Tags</th>
4104 </tr>
4105 </thead>
4106
4107 <tbody>
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118 <tr class="entry" id="controls_android.geometric.mode">
4119 <td class="entry_name">android.<wbr>geometric.<wbr>mode</td>
4120 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004121 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004122
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004123 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004124
4125 <ul class="entry_type_enum">
4126 <li>
4127 <span class="entry_type_enum_name">OFF</span>
4128 <span class="entry_type_enum_notes">No geometric correction is
4129 applied</span>
4130 </li>
4131 <li>
4132 <span class="entry_type_enum_name">FAST</span>
4133 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
4134 bayer output</span>
4135 </li>
4136 <li>
4137 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4138 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4139 quality</span>
4140 </li>
4141 </ul>
4142
4143 </td> <!-- entry_type -->
4144
4145 <td class="entry_description">
4146 Operating mode of geometric
4147 correction
4148 </td>
4149
4150 <td class="entry_units">
4151 </td>
4152
4153 <td class="entry_range">
4154 </td>
4155
4156 <td class="entry_notes">
4157 </td>
4158
4159 <td class="entry_tags">
4160 </td>
4161
4162 </tr> <!-- end of entry -->
4163
4164
4165 <tr class="entry" id="controls_android.geometric.strength">
4166 <td class="entry_name">android.<wbr>geometric.<wbr>strength</td>
4167 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004168 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004169
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004170 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004171
4172
4173 </td> <!-- entry_type -->
4174
4175 <td class="entry_description">
4176 Control the amount of shading correction
4177 applied to the images
4178 </td>
4179
4180 <td class="entry_units">
4181 unitless: 1-10; 10 is full shading
4182 compensation
4183 </td>
4184
4185 <td class="entry_range">
4186 </td>
4187
4188 <td class="entry_notes">
4189 </td>
4190
4191 <td class="entry_tags">
4192 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004193 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004194 </ul>
4195 </td>
4196
4197 </tr> <!-- end of entry -->
4198
4199
4200
4201 <!-- end of kind -->
4202 </tbody>
4203
4204 <!-- end of section -->
4205 <tr><td colspan="7" id="section_hotPixel" class="section">hotPixel</td></tr>
4206
4207
4208 <tr><td colspan="7" class="kind">controls</td></tr>
4209
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004210 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004211 <tr>
4212 <th class="th_name">Property Name</th>
4213 <th class="th_type">Type</th>
4214 <th class="th_description">Description</th>
4215 <th class="th_units">Units</th>
4216 <th class="th_range">Range</th>
4217 <th class="th_notes">Notes</th>
4218 <th class="th_tags">Tags</th>
4219 </tr>
4220 </thead>
4221
4222 <tbody>
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233 <tr class="entry" id="controls_android.hotPixel.mode">
4234 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
4235 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004236 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004237
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004238 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004239
4240 <ul class="entry_type_enum">
4241 <li>
4242 <span class="entry_type_enum_name">OFF</span>
4243 <span class="entry_type_enum_notes">No hot pixel correction can be
4244 applied</span>
4245 </li>
4246 <li>
4247 <span class="entry_type_enum_name">FAST</span>
4248 <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
4249 Bayer output</span>
4250 </li>
4251 <li>
4252 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4253 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4254 quality</span>
4255 </li>
4256 </ul>
4257
4258 </td> <!-- entry_type -->
4259
4260 <td class="entry_description">
4261 Set operational mode for hot pixel
4262 correction
4263 </td>
4264
4265 <td class="entry_units">
4266 </td>
4267
4268 <td class="entry_range">
4269 </td>
4270
4271 <td class="entry_notes">
4272 </td>
4273
4274 <td class="entry_tags">
4275 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004276 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004277 </ul>
4278 </td>
4279
4280 </tr> <!-- end of entry -->
4281
4282
4283
4284 <!-- end of kind -->
4285 </tbody>
4286 <tr><td colspan="7" class="kind">static</td></tr>
4287
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004288 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004289 <tr>
4290 <th class="th_name">Property Name</th>
4291 <th class="th_type">Type</th>
4292 <th class="th_description">Description</th>
4293 <th class="th_units">Units</th>
4294 <th class="th_range">Range</th>
4295 <th class="th_notes">Notes</th>
4296 <th class="th_tags">Tags</th>
4297 </tr>
4298 </thead>
4299
4300 <tbody>
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313 <tr class="entry" id="static_android.hotPixel.info.map">
4314 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>info.<wbr>map</td>
4315 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004316 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004317 <span class="entry_type_container">x</span>
4318
4319 <span class="entry_type_array">
4320 2 x n
4321 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004322 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004323 <div class="entry_type_notes">list of coordinates based on android.<wbr>sensor.<wbr>pixel<wbr>Array<wbr>Size</div>
4324
4325
4326 </td> <!-- entry_type -->
4327
4328 <td class="entry_description">
4329 Location of hot/<wbr>defective pixels on
4330 sensor
4331 </td>
4332
4333 <td class="entry_units">
4334 </td>
4335
4336 <td class="entry_range">
4337 </td>
4338
4339 <td class="entry_notes">
4340 </td>
4341
4342 <td class="entry_tags">
4343 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004344 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004345 </ul>
4346 </td>
4347
4348 </tr> <!-- end of entry -->
4349
4350
4351
4352
4353
4354
4355 <!-- end of kind -->
4356 </tbody>
4357 <tr><td colspan="7" class="kind">dynamic</td></tr>
4358
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004359 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004360 <tr>
4361 <th class="th_name">Property Name</th>
4362 <th class="th_type">Type</th>
4363 <th class="th_description">Description</th>
4364 <th class="th_units">Units</th>
4365 <th class="th_range">Range</th>
4366 <th class="th_notes">Notes</th>
4367 <th class="th_tags">Tags</th>
4368 </tr>
4369 </thead>
4370
4371 <tbody>
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382 <tr class="entry" id="dynamic_android.hotPixel.mode">
4383 <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
4384 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004385 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004386
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004387 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004388
4389 <ul class="entry_type_enum">
4390 <li>
4391 <span class="entry_type_enum_name">OFF</span>
4392 <span class="entry_type_enum_notes">No hot pixel correction can be
4393 applied</span>
4394 </li>
4395 <li>
4396 <span class="entry_type_enum_name">FAST</span>
4397 <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
4398 Bayer output</span>
4399 </li>
4400 <li>
4401 <span class="entry_type_enum_name">HIGH_QUALITY</span>
4402 <span class="entry_type_enum_notes">Frame rate may be reduced by high
4403 quality</span>
4404 </li>
4405 </ul>
4406
4407 </td> <!-- entry_type -->
4408
4409 <td class="entry_description">
4410 Set operational mode for hot pixel
4411 correction
4412 </td>
4413
4414 <td class="entry_units">
4415 </td>
4416
4417 <td class="entry_range">
4418 </td>
4419
4420 <td class="entry_notes">
4421 </td>
4422
4423 <td class="entry_tags">
4424 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004425 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004426 </ul>
4427 </td>
4428
4429 </tr> <!-- end of entry -->
4430
4431
4432
4433 <!-- end of kind -->
4434 </tbody>
4435
4436 <!-- end of section -->
4437 <tr><td colspan="7" id="section_jpeg" class="section">jpeg</td></tr>
4438
4439
4440 <tr><td colspan="7" class="kind">controls</td></tr>
4441
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004442 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004443 <tr>
4444 <th class="th_name">Property Name</th>
4445 <th class="th_type">Type</th>
4446 <th class="th_description">Description</th>
4447 <th class="th_units">Units</th>
4448 <th class="th_range">Range</th>
4449 <th class="th_notes">Notes</th>
4450 <th class="th_tags">Tags</th>
4451 </tr>
4452 </thead>
4453
4454 <tbody>
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465 <tr class="entry" id="controls_android.jpeg.gpsCoordinates">
4466 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
4467 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004468 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004469 <span class="entry_type_container">x</span>
4470
4471 <span class="entry_type_array">
4472 3
4473 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004474 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004475 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
4476
4477
4478 </td> <!-- entry_type -->
4479
4480 <td class="entry_description">
4481 GPS coordinates to include in output JPEG
4482 EXIF
4483 </td>
4484
4485 <td class="entry_units">
4486 </td>
4487
4488 <td class="entry_range">
4489 (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
4490 </td>
4491
4492 <td class="entry_notes">
4493 </td>
4494
4495 <td class="entry_tags">
4496 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004497 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004498 </ul>
4499 </td>
4500
4501 </tr> <!-- end of entry -->
4502
4503
4504 <tr class="entry" id="controls_android.jpeg.gpsProcessingMethod">
4505 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
4506 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004507 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004508
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004509 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004510
4511
4512 </td> <!-- entry_type -->
4513
4514 <td class="entry_description">
4515 32 characters describing GPS algorithm to
4516 include in EXIF
4517 </td>
4518
4519 <td class="entry_units">
4520 UTF-8 null-terminated string
4521 </td>
4522
4523 <td class="entry_range">
4524 </td>
4525
4526 <td class="entry_notes">
4527 </td>
4528
4529 <td class="entry_tags">
4530 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004531 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004532 </ul>
4533 </td>
4534
4535 </tr> <!-- end of entry -->
4536
4537
4538 <tr class="entry" id="controls_android.jpeg.gpsTimestamp">
4539 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
4540 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004541 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004542
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004543 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004544
4545
4546 </td> <!-- entry_type -->
4547
4548 <td class="entry_description">
4549 Time GPS fix was made to include in
4550 EXIF
4551 </td>
4552
4553 <td class="entry_units">
4554 UTC in seconds since January 1,<wbr> 1970
4555 </td>
4556
4557 <td class="entry_range">
4558 </td>
4559
4560 <td class="entry_notes">
4561 </td>
4562
4563 <td class="entry_tags">
4564 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004565 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004566 </ul>
4567 </td>
4568
4569 </tr> <!-- end of entry -->
4570
4571
4572 <tr class="entry" id="controls_android.jpeg.orientation">
4573 <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
4574 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004575 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004576
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004577 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004578
4579
4580 </td> <!-- entry_type -->
4581
4582 <td class="entry_description">
4583 Orientation of JPEG image to
4584 write
4585 </td>
4586
4587 <td class="entry_units">
4588 Degrees in multiples of 90
4589 </td>
4590
4591 <td class="entry_range">
4592 0,<wbr> 90,<wbr> 180,<wbr> 270
4593 </td>
4594
4595 <td class="entry_notes">
4596 </td>
4597
4598 <td class="entry_tags">
4599 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004600 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004601 </ul>
4602 </td>
4603
4604 </tr> <!-- end of entry -->
4605
4606
4607 <tr class="entry" id="controls_android.jpeg.quality">
4608 <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
4609 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004610 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004611
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004612 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004613
4614
4615 </td> <!-- entry_type -->
4616
4617 <td class="entry_description">
4618 Compression quality of the final JPEG
4619 image
4620 </td>
4621
4622 <td class="entry_units">
4623 </td>
4624
4625 <td class="entry_range">
4626 1-100; larger is higher quality
4627 </td>
4628
4629 <td class="entry_notes">
4630 85-95 is typical usage range
4631 </td>
4632
4633 <td class="entry_tags">
4634 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004635 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004636 </ul>
4637 </td>
4638
4639 </tr> <!-- end of entry -->
4640
4641
4642 <tr class="entry" id="controls_android.jpeg.thumbnailQuality">
4643 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
4644 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004645 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004646
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004647 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004648
4649
4650 </td> <!-- entry_type -->
4651
4652 <td class="entry_description">
4653 Compression quality of JPEG
4654 thumbnail
4655 </td>
4656
4657 <td class="entry_units">
4658 </td>
4659
4660 <td class="entry_range">
4661 1-100; larger is higher quality
4662 </td>
4663
4664 <td class="entry_notes">
4665 </td>
4666
4667 <td class="entry_tags">
4668 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004669 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004670 </ul>
4671 </td>
4672
4673 </tr> <!-- end of entry -->
4674
4675
4676 <tr class="entry" id="controls_android.jpeg.thumbnailSize">
4677 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
4678 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004679 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004680 <span class="entry_type_container">x</span>
4681
4682 <span class="entry_type_array">
4683 2
4684 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004685 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004686
4687
4688 </td> <!-- entry_type -->
4689
4690 <td class="entry_description">
4691 Resolution of embedded JPEG
4692 thumbnail
4693 </td>
4694
4695 <td class="entry_units">
4696 </td>
4697
4698 <td class="entry_range">
4699 from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
4700 </td>
4701
4702 <td class="entry_notes">
4703 </td>
4704
4705 <td class="entry_tags">
4706 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004707 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004708 </ul>
4709 </td>
4710
4711 </tr> <!-- end of entry -->
4712
4713
4714
4715 <!-- end of kind -->
4716 </tbody>
4717 <tr><td colspan="7" class="kind">static</td></tr>
4718
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004719 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004720 <tr>
4721 <th class="th_name">Property Name</th>
4722 <th class="th_type">Type</th>
4723 <th class="th_description">Description</th>
4724 <th class="th_units">Units</th>
4725 <th class="th_range">Range</th>
4726 <th class="th_notes">Notes</th>
4727 <th class="th_tags">Tags</th>
4728 </tr>
4729 </thead>
4730
4731 <tbody>
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742 <tr class="entry" id="static_android.jpeg.availableThumbnailSizes">
4743 <td class="entry_name">android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes</td>
4744 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004745 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004746 <span class="entry_type_container">x</span>
4747
4748 <span class="entry_type_array">
4749 2 x n
4750 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004751 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004752 <div class="entry_type_notes">list of resolution pairs</div>
4753
4754
4755 </td> <!-- entry_type -->
4756
4757 <td class="entry_description">
4758 Supported resolutions for the JPEG
4759 thumbnail
4760 </td>
4761
4762 <td class="entry_units">
4763 </td>
4764
4765 <td class="entry_range">
4766 Must include at least one valid resolution,<wbr> plus
4767 (0,<wbr>0) for no thumbnail generation
4768 </td>
4769
4770 <td class="entry_notes">
4771 </td>
4772
4773 <td class="entry_tags">
4774 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004775 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004776 </ul>
4777 </td>
4778
4779 </tr> <!-- end of entry -->
4780
4781
4782 <tr class="entry" id="static_android.jpeg.maxSize">
4783 <td class="entry_name">android.<wbr>jpeg.<wbr>max<wbr>Size</td>
4784 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004785 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004786
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004787 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004788
4789
4790 </td> <!-- entry_type -->
4791
4792 <td class="entry_description">
4793 Maximum size in bytes for the compressed
4794 JPEG buffer
4795 </td>
4796
4797 <td class="entry_units">
4798 </td>
4799
4800 <td class="entry_range">
4801 Must be large enough to fit any JPEG produced by
4802 the camera
4803 </td>
4804
4805 <td class="entry_notes">
4806 This is used for sizing the gralloc buffers for
4807 JPEG
4808 </td>
4809
4810 <td class="entry_tags">
4811 </td>
4812
4813 </tr> <!-- end of entry -->
4814
4815
4816
4817 <!-- end of kind -->
4818 </tbody>
4819 <tr><td colspan="7" class="kind">dynamic</td></tr>
4820
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004821 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004822 <tr>
4823 <th class="th_name">Property Name</th>
4824 <th class="th_type">Type</th>
4825 <th class="th_description">Description</th>
4826 <th class="th_units">Units</th>
4827 <th class="th_range">Range</th>
4828 <th class="th_notes">Notes</th>
4829 <th class="th_tags">Tags</th>
4830 </tr>
4831 </thead>
4832
4833 <tbody>
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844 <tr class="entry" id="dynamic_android.jpeg.gpsCoordinates">
4845 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
4846 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004847 <span class="entry_type_name">double</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004848 <span class="entry_type_container">x</span>
4849
4850 <span class="entry_type_array">
4851 3
4852 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004853 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004854 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
4855
4856
4857 </td> <!-- entry_type -->
4858
4859 <td class="entry_description">
4860 GPS coordinates to include in output JPEG
4861 EXIF
4862 </td>
4863
4864 <td class="entry_units">
4865 </td>
4866
4867 <td class="entry_range">
4868 (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
4869 </td>
4870
4871 <td class="entry_notes">
4872 </td>
4873
4874 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004875 <ul class="entry_tags">
4876 <li><a href="#tag_BC">BC</a></li>
4877 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004878 </td>
4879
4880 </tr> <!-- end of entry -->
4881
4882
4883 <tr class="entry" id="dynamic_android.jpeg.gpsProcessingMethod">
4884 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
4885 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004886 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004887
Igor Murashkinb8dc8812013-07-17 16:29:34 -07004888 <span class="entry_type_visibility"> [public as string]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004889
4890
4891 </td> <!-- entry_type -->
4892
4893 <td class="entry_description">
4894 32 characters describing GPS algorithm to
4895 include in EXIF
4896 </td>
4897
4898 <td class="entry_units">
4899 UTF-8 null-terminated string
4900 </td>
4901
4902 <td class="entry_range">
4903 </td>
4904
4905 <td class="entry_notes">
4906 </td>
4907
4908 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004909 <ul class="entry_tags">
4910 <li><a href="#tag_BC">BC</a></li>
4911 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004912 </td>
4913
4914 </tr> <!-- end of entry -->
4915
4916
4917 <tr class="entry" id="dynamic_android.jpeg.gpsTimestamp">
4918 <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
4919 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004920 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004921
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004922 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004923
4924
4925 </td> <!-- entry_type -->
4926
4927 <td class="entry_description">
4928 Time GPS fix was made to include in
4929 EXIF
4930 </td>
4931
4932 <td class="entry_units">
4933 UTC in seconds since January 1,<wbr> 1970
4934 </td>
4935
4936 <td class="entry_range">
4937 </td>
4938
4939 <td class="entry_notes">
4940 </td>
4941
4942 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004943 <ul class="entry_tags">
4944 <li><a href="#tag_BC">BC</a></li>
4945 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004946 </td>
4947
4948 </tr> <!-- end of entry -->
4949
4950
4951 <tr class="entry" id="dynamic_android.jpeg.orientation">
4952 <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
4953 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004954 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004955
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004956 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004957
4958
4959 </td> <!-- entry_type -->
4960
4961 <td class="entry_description">
4962 Orientation of JPEG image to
4963 write
4964 </td>
4965
4966 <td class="entry_units">
4967 Degrees in multiples of 90
4968 </td>
4969
4970 <td class="entry_range">
4971 0,<wbr> 90,<wbr> 180,<wbr> 270
4972 </td>
4973
4974 <td class="entry_notes">
4975 </td>
4976
4977 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08004978 <ul class="entry_tags">
4979 <li><a href="#tag_BC">BC</a></li>
4980 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004981 </td>
4982
4983 </tr> <!-- end of entry -->
4984
4985
4986 <tr class="entry" id="dynamic_android.jpeg.quality">
4987 <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
4988 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08004989 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004990
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07004991 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08004992
4993
4994 </td> <!-- entry_type -->
4995
4996 <td class="entry_description">
4997 Compression quality of the final JPEG
4998 image
4999 </td>
5000
5001 <td class="entry_units">
5002 </td>
5003
5004 <td class="entry_range">
5005 1-100; larger is higher quality
5006 </td>
5007
5008 <td class="entry_notes">
5009 85-95 is typical usage range
5010 </td>
5011
5012 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005013 <ul class="entry_tags">
5014 <li><a href="#tag_BC">BC</a></li>
5015 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005016 </td>
5017
5018 </tr> <!-- end of entry -->
5019
5020
5021 <tr class="entry" id="dynamic_android.jpeg.size">
5022 <td class="entry_name">android.<wbr>jpeg.<wbr>size</td>
5023 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005024 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005025
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005026 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005027
5028
5029 </td> <!-- entry_type -->
5030
5031 <td class="entry_description">
5032 The size of the compressed JPEG image,<wbr> in
5033 bytes
5034 </td>
5035
5036 <td class="entry_units">
5037 </td>
5038
5039 <td class="entry_range">
5040 >= 0
5041 </td>
5042
5043 <td class="entry_notes">
5044 If no JPEG output is produced for the request,<wbr>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005045 this must be 0.<wbr>
5046<br>
5047<br> Otherwise,<wbr> this describes the real size of the compressed
5048 JPEG image placed in the output stream.<wbr> More specifically,<wbr>
5049 if android.<wbr>jpeg.<wbr>max<wbr>Size = 1000000,<wbr> and a specific capture
5050 has android.<wbr>jpeg.<wbr>size = 500000,<wbr> then the output buffer from
5051 the JPEG stream will be 1000000 bytes,<wbr> of which the first
5052 500000 make up the real data.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005053 </td>
5054
5055 <td class="entry_tags">
5056 </td>
5057
5058 </tr> <!-- end of entry -->
5059
5060
5061 <tr class="entry" id="dynamic_android.jpeg.thumbnailQuality">
5062 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
5063 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005064 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005065
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005066 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005067
5068
5069 </td> <!-- entry_type -->
5070
5071 <td class="entry_description">
5072 Compression quality of JPEG
5073 thumbnail
5074 </td>
5075
5076 <td class="entry_units">
5077 </td>
5078
5079 <td class="entry_range">
5080 1-100; larger is higher quality
5081 </td>
5082
5083 <td class="entry_notes">
5084 </td>
5085
5086 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005087 <ul class="entry_tags">
5088 <li><a href="#tag_BC">BC</a></li>
5089 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005090 </td>
5091
5092 </tr> <!-- end of entry -->
5093
5094
5095 <tr class="entry" id="dynamic_android.jpeg.thumbnailSize">
5096 <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
5097 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005098 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005099 <span class="entry_type_container">x</span>
5100
5101 <span class="entry_type_array">
5102 2
5103 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005104 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005105
5106
5107 </td> <!-- entry_type -->
5108
5109 <td class="entry_description">
5110 Resolution of embedded JPEG
5111 thumbnail
5112 </td>
5113
5114 <td class="entry_units">
5115 </td>
5116
5117 <td class="entry_range">
5118 from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
5119 </td>
5120
5121 <td class="entry_notes">
5122 </td>
5123
5124 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005125 <ul class="entry_tags">
5126 <li><a href="#tag_BC">BC</a></li>
5127 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005128 </td>
5129
5130 </tr> <!-- end of entry -->
5131
5132
5133
5134 <!-- end of kind -->
5135 </tbody>
5136
5137 <!-- end of section -->
5138 <tr><td colspan="7" id="section_lens" class="section">lens</td></tr>
5139
5140
5141 <tr><td colspan="7" class="kind">controls</td></tr>
5142
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005143 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005144 <tr>
5145 <th class="th_name">Property Name</th>
5146 <th class="th_type">Type</th>
5147 <th class="th_description">Description</th>
5148 <th class="th_units">Units</th>
5149 <th class="th_range">Range</th>
5150 <th class="th_notes">Notes</th>
5151 <th class="th_tags">Tags</th>
5152 </tr>
5153 </thead>
5154
5155 <tbody>
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166 <tr class="entry" id="controls_android.lens.aperture">
5167 <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
5168 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005169 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005170
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005171 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005172
5173
5174 </td> <!-- entry_type -->
5175
5176 <td class="entry_description">
5177 Size of the lens aperture
5178 </td>
5179
5180 <td class="entry_units">
5181 f-number (f/<wbr>NNN)
5182 </td>
5183
5184 <td class="entry_range">
5185 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
5186 </td>
5187
5188 <td class="entry_notes">
5189 Will not be supported on most devices.<wbr> Can only
5190 pick from supported list
5191 </td>
5192
5193 <td class="entry_tags">
5194 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005195 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005196 </ul>
5197 </td>
5198
5199 </tr> <!-- end of entry -->
5200
5201
5202 <tr class="entry" id="controls_android.lens.filterDensity">
5203 <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
5204 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005205 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005206
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005207 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005208
5209
5210 </td> <!-- entry_type -->
5211
5212 <td class="entry_description">
5213 State of lens neutral density
5214 filter(s)
5215 </td>
5216
5217 <td class="entry_units">
5218 number of stops of filtering
5219 </td>
5220
5221 <td class="entry_range">
5222 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
5223 </td>
5224
5225 <td class="entry_notes">
5226 Will not be supported on most devices.<wbr> Can only
5227 pick from supported list
5228 </td>
5229
5230 <td class="entry_tags">
5231 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005232 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005233 </ul>
5234 </td>
5235
5236 </tr> <!-- end of entry -->
5237
5238
5239 <tr class="entry" id="controls_android.lens.focalLength">
5240 <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
5241 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005242 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005243
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005244 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005245
5246
5247 </td> <!-- entry_type -->
5248
5249 <td class="entry_description">
5250 Lens optical zoom setting
5251 </td>
5252
5253 <td class="entry_units">
5254 focal length in mm
5255 </td>
5256
5257 <td class="entry_range">
5258 > 0
5259 </td>
5260
5261 <td class="entry_notes">
5262 Will not be supported on most devices.<wbr>
5263 </td>
5264
5265 <td class="entry_tags">
5266 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005267 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005268 </ul>
5269 </td>
5270
5271 </tr> <!-- end of entry -->
5272
5273
5274 <tr class="entry" id="controls_android.lens.focusDistance">
5275 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
5276 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005277 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005278
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005279 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005280
5281
5282 </td> <!-- entry_type -->
5283
5284 <td class="entry_description">
5285 Distance to plane of sharpest focus,<wbr>
5286 measured from frontmost surface of the lens
5287 </td>
5288
5289 <td class="entry_units">
5290 diopters (1/<wbr>m)
5291 </td>
5292
5293 <td class="entry_range">
5294 >= 0
5295 </td>
5296
5297 <td class="entry_notes">
5298 0 = infinity focus.<wbr> Used value should be clamped
5299 to (0,<wbr>minimum focus distance)
5300 </td>
5301
5302 <td class="entry_tags">
5303 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005304 <li><a href="#tag_BC">BC</a></li>
5305 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005306 </ul>
5307 </td>
5308
5309 </tr> <!-- end of entry -->
5310
5311
5312 <tr class="entry" id="controls_android.lens.opticalStabilizationMode">
5313 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
5314 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005315 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005316
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005317 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005318
5319 <ul class="entry_type_enum">
5320 <li>
5321 <span class="entry_type_enum_name">OFF</span>
5322 </li>
5323 <li>
5324 <span class="entry_type_enum_name">ON</span>
5325 <span class="entry_type_enum_optional">optional</span>
5326 </li>
5327 </ul>
5328
5329 </td> <!-- entry_type -->
5330
5331 <td class="entry_description">
5332 Whether optical image stabilization is
5333 enabled.<wbr>
5334 </td>
5335
5336 <td class="entry_units">
5337 </td>
5338
5339 <td class="entry_range">
5340 android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
5341 </td>
5342
5343 <td class="entry_notes">
5344 Will not be supported on most devices.<wbr>
5345 </td>
5346
5347 <td class="entry_tags">
5348 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005349 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005350 </ul>
5351 </td>
5352
5353 </tr> <!-- end of entry -->
5354
5355
5356
5357 <!-- end of kind -->
5358 </tbody>
5359 <tr><td colspan="7" class="kind">static</td></tr>
5360
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005361 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005362 <tr>
5363 <th class="th_name">Property Name</th>
5364 <th class="th_type">Type</th>
5365 <th class="th_description">Description</th>
5366 <th class="th_units">Units</th>
5367 <th class="th_range">Range</th>
5368 <th class="th_notes">Notes</th>
5369 <th class="th_tags">Tags</th>
5370 </tr>
5371 </thead>
5372
5373 <tbody>
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386 <tr class="entry" id="static_android.lens.info.availableApertures">
5387 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures</td>
5388 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005389 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005390 <span class="entry_type_container">x</span>
5391
5392 <span class="entry_type_array">
5393 n
5394 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005395 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005396
5397
5398 </td> <!-- entry_type -->
5399
5400 <td class="entry_description">
5401 List of supported aperture
5402 values
5403 </td>
5404
5405 <td class="entry_units">
5406 </td>
5407
5408 <td class="entry_range">
5409 one entry required,<wbr> > 0
5410 </td>
5411
5412 <td class="entry_notes">
5413 If variable aperture not available,<wbr> only setting
5414 should be for the fixed aperture
5415 </td>
5416
5417 <td class="entry_tags">
5418 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005419 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005420 </ul>
5421 </td>
5422
5423 </tr> <!-- end of entry -->
5424
5425
5426 <tr class="entry" id="static_android.lens.info.availableFilterDensities">
5427 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities</td>
5428 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005429 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005430 <span class="entry_type_container">x</span>
5431
5432 <span class="entry_type_array">
5433 n
5434 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005435 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005436
5437
5438 </td> <!-- entry_type -->
5439
5440 <td class="entry_description">
5441 List of supported ND filter
5442 values
5443 </td>
5444
5445 <td class="entry_units">
5446 </td>
5447
5448 <td class="entry_range">
5449 one entry required,<wbr> >= 0
5450 </td>
5451
5452 <td class="entry_notes">
5453 If not available,<wbr> only setting is 0.<wbr> Otherwise,<wbr>
5454 lists the available exposure index values for dimming
5455 (2 would mean the filter is set to reduce incoming
5456 light by two stops)
5457 </td>
5458
5459 <td class="entry_tags">
5460 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005461 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005462 </ul>
5463 </td>
5464
5465 </tr> <!-- end of entry -->
5466
5467
5468 <tr class="entry" id="static_android.lens.info.availableFocalLengths">
5469 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Focal<wbr>Lengths</td>
5470 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005471 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005472 <span class="entry_type_container">x</span>
5473
5474 <span class="entry_type_array">
5475 n
5476 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005477 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005478 <div class="entry_type_notes">the list of available focal lengths</div>
5479
5480
5481 </td> <!-- entry_type -->
5482
5483 <td class="entry_description">
5484 If fitted with optical zoom,<wbr> what focal
5485 lengths are available.<wbr> If not,<wbr> the static focal
5486 length
5487 </td>
5488
5489 <td class="entry_units">
5490 </td>
5491
5492 <td class="entry_range">
5493 > 0
5494 </td>
5495
5496 <td class="entry_notes">
5497 If optical zoom not supported,<wbr> only one value
5498 should be reported
5499 </td>
5500
5501 <td class="entry_tags">
5502 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005503 <li><a href="#tag_BC">BC</a></li>
5504 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005505 </ul>
5506 </td>
5507
5508 </tr> <!-- end of entry -->
5509
5510
5511 <tr class="entry" id="static_android.lens.info.availableOpticalStabilization">
5512 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Optical<wbr>Stabilization</td>
5513 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005514 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005515 <span class="entry_type_container">x</span>
5516
5517 <span class="entry_type_array">
5518 n
5519 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005520 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005521 <div class="entry_type_notes">list of enums</div>
5522
5523
5524 </td> <!-- entry_type -->
5525
5526 <td class="entry_description">
5527 List of supported optical image
5528 stabilization modes
5529 </td>
5530
5531 <td class="entry_units">
5532 </td>
5533
5534 <td class="entry_range">
5535 </td>
5536
5537 <td class="entry_notes">
5538 </td>
5539
5540 <td class="entry_tags">
5541 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005542 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005543 </ul>
5544 </td>
5545
5546 </tr> <!-- end of entry -->
5547
5548
5549 <tr class="entry" id="static_android.lens.info.geometricCorrectionMap">
5550 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map</td>
5551 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005552 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005553 <span class="entry_type_container">x</span>
5554
5555 <span class="entry_type_array">
5556 2 x 3 x n x m
5557 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005558 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005559 <div class="entry_type_notes">2D array of destination coordinate pairs for uniform grid points in source image,<wbr> per color channel.<wbr> Size in the range of 2x3x40x30</div>
5560
5561
5562 </td> <!-- entry_type -->
5563
5564 <td class="entry_description">
5565 A low-resolution map for correction of
5566 geometric distortions and chromatic aberrations,<wbr> per
5567 color channel
5568 </td>
5569
5570 <td class="entry_units">
5571 </td>
5572
5573 <td class="entry_range">
5574 N,<wbr> M >= 2
5575 </td>
5576
5577 <td class="entry_notes">
5578 [DNG wants a function instead].<wbr> What's easiest
5579 for implementers? With an array size (M,<wbr> N),<wbr> entry (i,<wbr>
5580 j) provides the destination for pixel (i/<wbr>(M-1) * width,<wbr>
5581 j/<wbr>(N-1) * height).<wbr> Data is row-major,<wbr> with each array
5582 entry being ( (X,<wbr> Y)_<wbr>r,<wbr> (X,<wbr> Y)_<wbr>g,<wbr> (X,<wbr> Y)_<wbr>b ) )
5583 </td>
5584
5585 <td class="entry_tags">
5586 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005587 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005588 </ul>
5589 </td>
5590
5591 </tr> <!-- end of entry -->
5592
5593
5594 <tr class="entry" id="static_android.lens.info.geometricCorrectionMapSize">
5595 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map<wbr>Size</td>
5596 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005597 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005598 <span class="entry_type_container">x</span>
5599
5600 <span class="entry_type_array">
5601 2
5602 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005603 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005604 <div class="entry_type_notes">width and height of geometric correction map</div>
5605
5606
5607 </td> <!-- entry_type -->
5608
5609 <td class="entry_description">
5610 Dimensions of geometric correction
5611 map
5612 </td>
5613
5614 <td class="entry_units">
5615 </td>
5616
5617 <td class="entry_range">
5618 Both values >= 2
5619 </td>
5620
5621 <td class="entry_notes">
5622 </td>
5623
5624 <td class="entry_tags">
5625 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005626 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005627 </ul>
5628 </td>
5629
5630 </tr> <!-- end of entry -->
5631
5632
5633 <tr class="entry" id="static_android.lens.info.hyperfocalDistance">
5634 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>hyperfocal<wbr>Distance</td>
5635 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005636 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005637
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005638 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005639
5640
5641 </td> <!-- entry_type -->
5642
5643 <td class="entry_description">
5644 Hyperfocal distance for this lens; set to
5645 0 if fixed focus
5646 </td>
5647
5648 <td class="entry_units">
5649 diopters
5650 </td>
5651
5652 <td class="entry_range">
5653 >= 0
5654 </td>
5655
5656 <td class="entry_notes">
5657 The hyperfocal distance is used for the old
5658 API's 'fixed' setting
5659 </td>
5660
5661 <td class="entry_tags">
5662 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005663 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005664 </ul>
5665 </td>
5666
5667 </tr> <!-- end of entry -->
5668
5669
5670 <tr class="entry" id="static_android.lens.info.minimumFocusDistance">
5671 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>minimum<wbr>Focus<wbr>Distance</td>
5672 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005673 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005674
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005675 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005676
5677
5678 </td> <!-- entry_type -->
5679
5680 <td class="entry_description">
5681 Shortest distance from frontmost surface
5682 of the lens that can be focused correctly
5683 </td>
5684
5685 <td class="entry_units">
5686 diopters
5687 </td>
5688
5689 <td class="entry_range">
5690 >= 0
5691 </td>
5692
5693 <td class="entry_notes">
5694 If the lens is fixed-focus,<wbr> this should be
5695 0
5696 </td>
5697
5698 <td class="entry_tags">
5699 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005700 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005701 </ul>
5702 </td>
5703
5704 </tr> <!-- end of entry -->
5705
5706
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005707 <tr class="entry" id="static_android.lens.info.shadingMapSize">
5708 <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>shading<wbr>Map<wbr>Size</td>
5709 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005710 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005711 <span class="entry_type_container">x</span>
5712
5713 <span class="entry_type_array">
5714 2
5715 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07005716 <span class="entry_type_visibility"> [public as size]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07005717 <div class="entry_type_notes">width and height of lens shading map provided by the HAL.<wbr> (N,<wbr> M)</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005718
5719
5720 </td> <!-- entry_type -->
5721
5722 <td class="entry_description">
5723 Dimensions of lens shading
5724 map
5725 </td>
5726
5727 <td class="entry_units">
5728 </td>
5729
5730 <td class="entry_range">
5731 Both values >= 1
5732 </td>
5733
5734 <td class="entry_notes">
5735 </td>
5736
5737 <td class="entry_tags">
5738 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005739 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005740 </ul>
5741 </td>
5742
5743 </tr> <!-- end of entry -->
5744
5745
5746
5747
5748
5749 <tr class="entry" id="static_android.lens.facing">
5750 <td class="entry_name">android.<wbr>lens.<wbr>facing</td>
5751 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005752 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005753
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005754 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005755
5756 <ul class="entry_type_enum">
5757 <li>
5758 <span class="entry_type_enum_name">FRONT</span>
5759 </li>
5760 <li>
5761 <span class="entry_type_enum_name">BACK</span>
5762 </li>
5763 </ul>
5764
5765 </td> <!-- entry_type -->
5766
5767 <td class="entry_description">
5768 Direction the camera faces relative to
5769 device screen
5770 </td>
5771
5772 <td class="entry_units">
5773 </td>
5774
5775 <td class="entry_range">
5776 </td>
5777
5778 <td class="entry_notes">
5779 </td>
5780
5781 <td class="entry_tags">
5782 </td>
5783
5784 </tr> <!-- end of entry -->
5785
5786
5787 <tr class="entry" id="static_android.lens.opticalAxisAngle">
5788 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Axis<wbr>Angle</td>
5789 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005790 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005791 <span class="entry_type_container">x</span>
5792
5793 <span class="entry_type_array">
5794 2
5795 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005796 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005797 <div class="entry_type_notes">degrees.<wbr> First defines the angle of separation between the perpendicular to the screen and the camera optical axis.<wbr> The second then defines the clockwise rotation of the optical axis from native device up.<wbr></div>
5798
5799
5800 </td> <!-- entry_type -->
5801
5802 <td class="entry_description">
5803 Relative angle of camera optical axis to the
5804 perpendicular axis from the display
5805 </td>
5806
5807 <td class="entry_units">
5808 </td>
5809
5810 <td class="entry_range">
5811 [0-90) for first angle,<wbr> [0-360) for second
5812 </td>
5813
5814 <td class="entry_notes">
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005815 Examples:
5816<br>
5817<br> (0,<wbr>0) means that the camera optical axis
5818 is perpendicular to the display surface;
5819<br>
5820<br> (45,<wbr>0) means that the camera points 45 degrees up when
5821 device is held upright;
5822<br>
5823<br> (45,<wbr>90) means the camera points 45 degrees to the right when
5824 the device is held upright.<wbr>
5825<br>
5826<br> Use FACING field to determine perpendicular outgoing
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005827 direction
5828 </td>
5829
5830 <td class="entry_tags">
5831 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005832 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005833 </ul>
5834 </td>
5835
5836 </tr> <!-- end of entry -->
5837
5838
5839 <tr class="entry" id="static_android.lens.position">
5840 <td class="entry_name">android.<wbr>lens.<wbr>position</td>
5841 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005842 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005843 <span class="entry_type_container">x</span>
5844
5845 <span class="entry_type_array">
5846 3, location in mm, in the sensor coordinate
5847 system
5848 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005849 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005850
5851
5852 </td> <!-- entry_type -->
5853
5854 <td class="entry_description">
5855 Coordinates of camera optical axis on
5856 device
5857 </td>
5858
5859 <td class="entry_units">
5860 </td>
5861
5862 <td class="entry_range">
5863 </td>
5864
5865 <td class="entry_notes">
5866 </td>
5867
5868 <td class="entry_tags">
5869 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005870 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005871 </ul>
5872 </td>
5873
5874 </tr> <!-- end of entry -->
5875
5876
5877
5878 <!-- end of kind -->
5879 </tbody>
5880 <tr><td colspan="7" class="kind">dynamic</td></tr>
5881
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005882 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005883 <tr>
5884 <th class="th_name">Property Name</th>
5885 <th class="th_type">Type</th>
5886 <th class="th_description">Description</th>
5887 <th class="th_units">Units</th>
5888 <th class="th_range">Range</th>
5889 <th class="th_notes">Notes</th>
5890 <th class="th_tags">Tags</th>
5891 </tr>
5892 </thead>
5893
5894 <tbody>
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905 <tr class="entry" id="dynamic_android.lens.aperture">
5906 <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
5907 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005908 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005909
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005910 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005911
5912
5913 </td> <!-- entry_type -->
5914
5915 <td class="entry_description">
5916 Size of the lens aperture
5917 </td>
5918
5919 <td class="entry_units">
5920 f-number (f/<wbr>NNN)
5921 </td>
5922
5923 <td class="entry_range">
5924 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
5925 </td>
5926
5927 <td class="entry_notes">
5928 Will not be supported on most devices.<wbr> Can only
5929 pick from supported list
5930 </td>
5931
5932 <td class="entry_tags">
5933 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005934 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005935 </ul>
5936 </td>
5937
5938 </tr> <!-- end of entry -->
5939
5940
5941 <tr class="entry" id="dynamic_android.lens.filterDensity">
5942 <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
5943 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005944 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005945
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005946 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005947
5948
5949 </td> <!-- entry_type -->
5950
5951 <td class="entry_description">
5952 State of lens neutral density
5953 filter(s)
5954 </td>
5955
5956 <td class="entry_units">
5957 number of stops of filtering
5958 </td>
5959
5960 <td class="entry_range">
5961 android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
5962 </td>
5963
5964 <td class="entry_notes">
5965 Will not be supported on most devices.<wbr> Can only
5966 pick from supported list
5967 </td>
5968
5969 <td class="entry_tags">
5970 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08005971 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005972 </ul>
5973 </td>
5974
5975 </tr> <!-- end of entry -->
5976
5977
5978 <tr class="entry" id="dynamic_android.lens.focalLength">
5979 <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
5980 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08005981 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005982
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07005983 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08005984
5985
5986 </td> <!-- entry_type -->
5987
5988 <td class="entry_description">
5989 Lens optical zoom setting
5990 </td>
5991
5992 <td class="entry_units">
5993 focal length in mm
5994 </td>
5995
5996 <td class="entry_range">
5997 > 0
5998 </td>
5999
6000 <td class="entry_notes">
6001 Will not be supported on most devices.<wbr>
6002 </td>
6003
6004 <td class="entry_tags">
6005 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006006 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006007 </ul>
6008 </td>
6009
6010 </tr> <!-- end of entry -->
6011
6012
6013 <tr class="entry" id="dynamic_android.lens.focusDistance">
6014 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
6015 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006016 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006017
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006018 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006019
6020
6021 </td> <!-- entry_type -->
6022
6023 <td class="entry_description">
6024 Distance to plane of sharpest focus,<wbr>
6025 measured from frontmost surface of the lens
6026 </td>
6027
6028 <td class="entry_units">
6029 diopters (1/<wbr>m)
6030 </td>
6031
6032 <td class="entry_range">
6033 >= 0
6034 </td>
6035
6036 <td class="entry_notes">
6037 Should be zero for fixed-focus cameras
6038 </td>
6039
6040 <td class="entry_tags">
6041 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006042 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006043 </ul>
6044 </td>
6045
6046 </tr> <!-- end of entry -->
6047
6048
6049 <tr class="entry" id="dynamic_android.lens.focusRange">
6050 <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Range</td>
6051 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006052 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006053
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006054 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006055
6056
6057 </td> <!-- entry_type -->
6058
6059 <td class="entry_description">
6060 The range of scene distances that are in
6061 sharp focus (depth of field)
6062 </td>
6063
6064 <td class="entry_units">
6065 pair of focus distances in diopters: (near,<wbr>
6066 far)
6067 </td>
6068
6069 <td class="entry_range">
6070 >=0
6071 </td>
6072
6073 <td class="entry_notes">
6074 If variable focus not supported,<wbr> can still report
6075 fixed depth of field range
6076 </td>
6077
6078 <td class="entry_tags">
6079 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006080 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006081 </ul>
6082 </td>
6083
6084 </tr> <!-- end of entry -->
6085
6086
6087 <tr class="entry" id="dynamic_android.lens.opticalStabilizationMode">
6088 <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
6089 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006090 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006091
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006092 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006093
6094 <ul class="entry_type_enum">
6095 <li>
6096 <span class="entry_type_enum_name">OFF</span>
6097 </li>
6098 <li>
6099 <span class="entry_type_enum_name">ON</span>
6100 <span class="entry_type_enum_optional">optional</span>
6101 </li>
6102 </ul>
6103
6104 </td> <!-- entry_type -->
6105
6106 <td class="entry_description">
6107 Whether optical image stabilization is
6108 enabled.<wbr>
6109 </td>
6110
6111 <td class="entry_units">
6112 </td>
6113
6114 <td class="entry_range">
6115 android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
6116 </td>
6117
6118 <td class="entry_notes">
6119 Will not be supported on most devices.<wbr>
6120 </td>
6121
6122 <td class="entry_tags">
6123 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006124 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006125 </ul>
6126 </td>
6127
6128 </tr> <!-- end of entry -->
6129
6130
6131 <tr class="entry" id="dynamic_android.lens.state">
6132 <td class="entry_name">android.<wbr>lens.<wbr>state</td>
6133 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006134 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006135
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006136 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006137
6138 <ul class="entry_type_enum">
6139 <li>
6140 <span class="entry_type_enum_name">STATIONARY</span>
6141 </li>
Igor Murashkin0e323a12013-09-06 11:50:48 -07006142 <li>
6143 <span class="entry_type_enum_name">MOVING</span>
6144 </li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006145 </ul>
6146
6147 </td> <!-- entry_type -->
6148
6149 <td class="entry_description">
6150 Current lens status
6151 </td>
6152
6153 <td class="entry_units">
6154 </td>
6155
6156 <td class="entry_range">
6157 </td>
6158
6159 <td class="entry_notes">
6160 </td>
6161
6162 <td class="entry_tags">
6163 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006164 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006165 </ul>
6166 </td>
6167
6168 </tr> <!-- end of entry -->
6169
6170
6171
6172 <!-- end of kind -->
6173 </tbody>
6174
6175 <!-- end of section -->
6176 <tr><td colspan="7" id="section_noiseReduction" class="section">noiseReduction</td></tr>
6177
6178
6179 <tr><td colspan="7" class="kind">controls</td></tr>
6180
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006181 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006182 <tr>
6183 <th class="th_name">Property Name</th>
6184 <th class="th_type">Type</th>
6185 <th class="th_description">Description</th>
6186 <th class="th_units">Units</th>
6187 <th class="th_range">Range</th>
6188 <th class="th_notes">Notes</th>
6189 <th class="th_tags">Tags</th>
6190 </tr>
6191 </thead>
6192
6193 <tbody>
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204 <tr class="entry" id="controls_android.noiseReduction.mode">
6205 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
6206 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006207 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006208
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006209 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006210
6211 <ul class="entry_type_enum">
6212 <li>
6213 <span class="entry_type_enum_name">OFF</span>
6214 <span class="entry_type_enum_notes">No noise reduction is applied</span>
6215 </li>
6216 <li>
6217 <span class="entry_type_enum_name">FAST</span>
6218 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
6219 bayer output</span>
6220 </li>
6221 <li>
6222 <span class="entry_type_enum_name">HIGH_QUALITY</span>
6223 <span class="entry_type_enum_notes">May slow down frame rate to provide highest
6224 quality</span>
6225 </li>
6226 </ul>
6227
6228 </td> <!-- entry_type -->
6229
6230 <td class="entry_description">
6231 Mode of operation for the noise reduction
6232 algorithm
6233 </td>
6234
6235 <td class="entry_units">
6236 </td>
6237
6238 <td class="entry_range">
6239 android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
6240 </td>
6241
6242 <td class="entry_notes">
6243 </td>
6244
6245 <td class="entry_tags">
6246 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006247 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006248 </ul>
6249 </td>
6250
6251 </tr> <!-- end of entry -->
6252
6253
6254 <tr class="entry" id="controls_android.noiseReduction.strength">
6255 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>strength</td>
6256 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006257 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006258
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006259 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006260
6261
6262 </td> <!-- entry_type -->
6263
6264 <td class="entry_description">
6265 Control the amount of noise reduction
6266 applied to the images
6267 </td>
6268
6269 <td class="entry_units">
6270 1-10; 10 is max noise reduction
6271 </td>
6272
6273 <td class="entry_range">
6274 1 - 10
6275 </td>
6276
6277 <td class="entry_notes">
6278 </td>
6279
6280 <td class="entry_tags">
6281 </td>
6282
6283 </tr> <!-- end of entry -->
6284
6285
6286
6287 <!-- end of kind -->
6288 </tbody>
6289 <tr><td colspan="7" class="kind">dynamic</td></tr>
6290
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006291 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006292 <tr>
6293 <th class="th_name">Property Name</th>
6294 <th class="th_type">Type</th>
6295 <th class="th_description">Description</th>
6296 <th class="th_units">Units</th>
6297 <th class="th_range">Range</th>
6298 <th class="th_notes">Notes</th>
6299 <th class="th_tags">Tags</th>
6300 </tr>
6301 </thead>
6302
6303 <tbody>
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314 <tr class="entry" id="dynamic_android.noiseReduction.mode">
6315 <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
6316 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006317 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006318
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006319 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006320
6321 <ul class="entry_type_enum">
6322 <li>
6323 <span class="entry_type_enum_name">OFF</span>
6324 <span class="entry_type_enum_notes">No noise reduction is applied</span>
6325 </li>
6326 <li>
6327 <span class="entry_type_enum_name">FAST</span>
6328 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
6329 bayer output</span>
6330 </li>
6331 <li>
6332 <span class="entry_type_enum_name">HIGH_QUALITY</span>
6333 <span class="entry_type_enum_notes">May slow down frame rate to provide highest
6334 quality</span>
6335 </li>
6336 </ul>
6337
6338 </td> <!-- entry_type -->
6339
6340 <td class="entry_description">
6341 Mode of operation for the noise reduction
6342 algorithm
6343 </td>
6344
6345 <td class="entry_units">
6346 </td>
6347
6348 <td class="entry_range">
6349 android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
6350 </td>
6351
6352 <td class="entry_notes">
6353 </td>
6354
6355 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006356 <ul class="entry_tags">
6357 <li><a href="#tag_V1">V1</a></li>
6358 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006359 </td>
6360
6361 </tr> <!-- end of entry -->
6362
6363
6364
6365 <!-- end of kind -->
6366 </tbody>
6367
6368 <!-- end of section -->
6369 <tr><td colspan="7" id="section_quirks" class="section">quirks</td></tr>
6370
6371
6372 <tr><td colspan="7" class="kind">static</td></tr>
6373
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006374 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006375 <tr>
6376 <th class="th_name">Property Name</th>
6377 <th class="th_type">Type</th>
6378 <th class="th_description">Description</th>
6379 <th class="th_units">Units</th>
6380 <th class="th_range">Range</th>
6381 <th class="th_notes">Notes</th>
6382 <th class="th_tags">Tags</th>
6383 </tr>
6384 </thead>
6385
6386 <tbody>
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397 <tr class="entry" id="static_android.quirks.meteringCropRegion">
6398 <td class="entry_name">android.<wbr>quirks.<wbr>metering<wbr>Crop<wbr>Region</td>
6399 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006400 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006401
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006402 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006403
6404
6405 </td> <!-- entry_type -->
6406
6407 <td class="entry_description">
6408 If set to 1,<wbr> the camera service does not
6409 scale 'normalized' coordinates with respect to the crop
6410 region.<wbr> This applies to metering input (a{e,<wbr>f,<wbr>wb}Region
6411 and output (face rectangles).<wbr>
6412 </td>
6413
6414 <td class="entry_units">
6415 </td>
6416
6417 <td class="entry_range">
6418 </td>
6419
6420 <td class="entry_notes">
6421 Normalized coordinates refer to those in the
6422 (-1000,<wbr>1000) range mentioned in the
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006423 android.<wbr>hardware.<wbr><wbr>Camera API.<wbr>
6424<br>
6425<br> HAL implementations should instead always use and emit
6426 sensor array-relative coordinates for all region data.<wbr> Does
6427 not need to be listed in static metadata.<wbr> Support will be
6428 removed in future versions of camera service.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006429 </td>
6430
6431 <td class="entry_tags">
6432 </td>
6433
6434 </tr> <!-- end of entry -->
6435
6436
6437 <tr class="entry" id="static_android.quirks.triggerAfWithAuto">
6438 <td class="entry_name">android.<wbr>quirks.<wbr>trigger<wbr>Af<wbr>With<wbr>Auto</td>
6439 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006440 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006441
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006442 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006443
6444
6445 </td> <!-- entry_type -->
6446
6447 <td class="entry_description">
6448 If set to 1,<wbr> then the camera service always
6449 switches to FOCUS_<wbr>MODE_<wbr>AUTO before issuing a AF
6450 trigger.<wbr>
6451 </td>
6452
6453 <td class="entry_units">
6454 </td>
6455
6456 <td class="entry_range">
6457 </td>
6458
6459 <td class="entry_notes">
6460 HAL implementations should implement AF trigger
6461 modes for AUTO,<wbr> MACRO,<wbr> CONTINUOUS_<wbr>FOCUS,<wbr> and
6462 CONTINUOUS_<wbr>PICTURE modes instead of using this flag.<wbr> Does
6463 not need to be listed in static metadata.<wbr> Support will be
6464 removed in future versions of camera service
6465 </td>
6466
6467 <td class="entry_tags">
6468 </td>
6469
6470 </tr> <!-- end of entry -->
6471
6472
6473 <tr class="entry" id="static_android.quirks.useZslFormat">
6474 <td class="entry_name">android.<wbr>quirks.<wbr>use<wbr>Zsl<wbr>Format</td>
6475 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006476 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006477
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006478 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006479
6480
6481 </td> <!-- entry_type -->
6482
6483 <td class="entry_description">
6484 If set to 1,<wbr> the camera service uses
6485 CAMERA2_<wbr>PIXEL_<wbr>FORMAT_<wbr>ZSL instead of
6486 HAL_<wbr>PIXEL_<wbr>FORMAT_<wbr>IMPLEMENTATION_<wbr>DEFINED for the zero
6487 shutter lag stream
6488 </td>
6489
6490 <td class="entry_units">
6491 </td>
6492
6493 <td class="entry_range">
6494 </td>
6495
6496 <td class="entry_notes">
6497 HAL implementations should use gralloc usage flags
6498 to determine that a stream will be used for
6499 zero-shutter-lag,<wbr> instead of relying on an explicit
6500 format setting.<wbr> Does not need to be listed in static
6501 metadata.<wbr> Support will be removed in future versions of
6502 camera service.<wbr>
6503 </td>
6504
6505 <td class="entry_tags">
6506 </td>
6507
6508 </tr> <!-- end of entry -->
6509
6510
6511
6512 <!-- end of kind -->
6513 </tbody>
6514
6515 <!-- end of section -->
6516 <tr><td colspan="7" id="section_request" class="section">request</td></tr>
6517
6518
6519 <tr><td colspan="7" class="kind">controls</td></tr>
6520
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006521 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006522 <tr>
6523 <th class="th_name">Property Name</th>
6524 <th class="th_type">Type</th>
6525 <th class="th_description">Description</th>
6526 <th class="th_units">Units</th>
6527 <th class="th_range">Range</th>
6528 <th class="th_notes">Notes</th>
6529 <th class="th_tags">Tags</th>
6530 </tr>
6531 </thead>
6532
6533 <tbody>
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544 <tr class="entry" id="controls_android.request.frameCount">
6545 <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
6546 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006547 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006548
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006549 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006550
6551
6552 </td> <!-- entry_type -->
6553
6554 <td class="entry_description">
6555 A frame counter set by the framework.<wbr> Must
6556 be maintained unchanged in output frame
6557 </td>
6558
6559 <td class="entry_units">
6560 incrementing integer
6561 </td>
6562
6563 <td class="entry_range">
6564 Any int
6565 </td>
6566
6567 <td class="entry_notes">
6568 </td>
6569
6570 <td class="entry_tags">
6571 </td>
6572
6573 </tr> <!-- end of entry -->
6574
6575
6576 <tr class="entry" id="controls_android.request.id">
6577 <td class="entry_name">android.<wbr>request.<wbr>id</td>
6578 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006579 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006580
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006581 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006582
6583
6584 </td> <!-- entry_type -->
6585
6586 <td class="entry_description">
6587 An application-specified ID for the current
6588 request.<wbr> Must be maintained unchanged in output
6589 frame
6590 </td>
6591
6592 <td class="entry_units">
6593 arbitrary integer assigned by application
6594 </td>
6595
6596 <td class="entry_range">
6597 Any int
6598 </td>
6599
6600 <td class="entry_notes">
6601 </td>
6602
6603 <td class="entry_tags">
6604 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006605 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006606 </ul>
6607 </td>
6608
6609 </tr> <!-- end of entry -->
6610
6611
6612 <tr class="entry" id="controls_android.request.inputStreams">
6613 <td class="entry_name">android.<wbr>request.<wbr>input<wbr>Streams</td>
6614 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006615 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006616 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006617
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006618 <span class="entry_type_array">
6619 n
6620 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006621 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006622
6623
6624 </td> <!-- entry_type -->
6625
6626 <td class="entry_description">
6627 List which camera reprocess stream is used
6628 for the source of reprocessing data.<wbr>
6629 </td>
6630
6631 <td class="entry_units">
6632 List of camera reprocess stream IDs
6633 </td>
6634
6635 <td class="entry_range">
6636 Typically,<wbr> only one entry allowed,<wbr> must be a valid
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006637 reprocess stream ID.<wbr>
6638
6639 If android.<wbr>jpeg.<wbr>needs<wbr>Thumbnail is set,<wbr> then multiple
6640 reprocess streams may be included in a single request; they
6641 must be different scaled versions of the same image.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006642 </td>
6643
6644 <td class="entry_notes">
6645 Only meaningful when android.<wbr>request.<wbr>type ==
6646 REPROCESS.<wbr> Ignored otherwise
6647 </td>
6648
6649 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006650 <ul class="entry_tags">
6651 <li><a href="#tag_HAL2">HAL2</a></li>
6652 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006653 </td>
6654
6655 </tr> <!-- end of entry -->
6656
6657
6658 <tr class="entry" id="controls_android.request.metadataMode">
6659 <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
6660 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006661 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006662
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006663 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006664
6665 <ul class="entry_type_enum">
6666 <li>
6667 <span class="entry_type_enum_name">NONE</span>
6668 <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
6669 for application-bound buffer data.<wbr> If no
6670 application-bound streams exist,<wbr> no frame should be
6671 placed in the output frame queue.<wbr> If such streams
6672 exist,<wbr> a frame should be placed on the output queue
6673 with null metadata but with the necessary output buffer
6674 information.<wbr> Timestamp information should still be
6675 included with any output stream buffers</span>
6676 </li>
6677 <li>
6678 <span class="entry_type_enum_name">FULL</span>
6679 <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
6680 only be produced if they are separately
6681 enabled</span>
6682 </li>
6683 </ul>
6684
6685 </td> <!-- entry_type -->
6686
6687 <td class="entry_description">
6688 How much metadata to produce on
6689 output
6690 </td>
6691
6692 <td class="entry_units">
6693 </td>
6694
6695 <td class="entry_range">
6696 </td>
6697
6698 <td class="entry_notes">
6699 </td>
6700
6701 <td class="entry_tags">
6702 </td>
6703
6704 </tr> <!-- end of entry -->
6705
6706
6707 <tr class="entry" id="controls_android.request.outputStreams">
6708 <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
6709 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07006710 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006711 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006712
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006713 <span class="entry_type_array">
6714 n
6715 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006716 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006717
6718
6719 </td> <!-- entry_type -->
6720
6721 <td class="entry_description">
6722 Lists which camera output streams image data
6723 from this capture must be sent to
6724 </td>
6725
6726 <td class="entry_units">
6727 List of camera stream IDs
6728 </td>
6729
6730 <td class="entry_range">
6731 List must only include streams that have been
6732 created
6733 </td>
6734
6735 <td class="entry_notes">
6736 If no output streams are listed,<wbr> then the image
6737 data should simply be discarded.<wbr> The image data must
6738 still be captured for metadata and statistics production,<wbr>
6739 and the lens and flash must operate as requested.<wbr>
6740 </td>
6741
6742 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006743 <ul class="entry_tags">
6744 <li><a href="#tag_HAL2">HAL2</a></li>
6745 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006746 </td>
6747
6748 </tr> <!-- end of entry -->
6749
6750
6751 <tr class="entry" id="controls_android.request.type">
6752 <td class="entry_name">android.<wbr>request.<wbr>type</td>
6753 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006754 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006755
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006756 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006757
6758 <ul class="entry_type_enum">
6759 <li>
6760 <span class="entry_type_enum_name">CAPTURE</span>
6761 <span class="entry_type_enum_notes">Capture a new image from the imaging hardware,<wbr>
6762 and process it according to the
6763 settings</span>
6764 </li>
6765 <li>
6766 <span class="entry_type_enum_name">REPROCESS</span>
6767 <span class="entry_type_enum_notes">Process previously captured data; the
6768 android.<wbr>request.<wbr>input<wbr>Stream parameter determines the
6769 source reprocessing stream.<wbr> TODO: Mark dynamic metadata
6770 needed for reprocessing with [RP]</span>
6771 </li>
6772 </ul>
6773
6774 </td> <!-- entry_type -->
6775
6776 <td class="entry_description">
6777 The type of the request; either CAPTURE or
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006778 REPROCESS.<wbr> For HAL3,<wbr> this tag is redundant.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006779 </td>
6780
6781 <td class="entry_units">
6782 </td>
6783
6784 <td class="entry_range">
6785 </td>
6786
6787 <td class="entry_notes">
6788 </td>
6789
6790 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07006791 <ul class="entry_tags">
6792 <li><a href="#tag_HAL2">HAL2</a></li>
6793 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006794 </td>
6795
6796 </tr> <!-- end of entry -->
6797
6798
6799
6800 <!-- end of kind -->
6801 </tbody>
6802 <tr><td colspan="7" class="kind">static</td></tr>
6803
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006804 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006805 <tr>
6806 <th class="th_name">Property Name</th>
6807 <th class="th_type">Type</th>
6808 <th class="th_description">Description</th>
6809 <th class="th_units">Units</th>
6810 <th class="th_range">Range</th>
6811 <th class="th_notes">Notes</th>
6812 <th class="th_tags">Tags</th>
6813 </tr>
6814 </thead>
6815
6816 <tbody>
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827 <tr class="entry" id="static_android.request.maxNumOutputStreams">
6828 <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Output<wbr>Streams</td>
6829 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006830 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006831 <span class="entry_type_container">x</span>
6832
6833 <span class="entry_type_array">
6834 3
6835 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006836 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006837
6838
6839 </td> <!-- entry_type -->
6840
6841 <td class="entry_description">
6842 How many output streams can be allocated at
6843 the same time for each type of stream
6844 </td>
6845
6846 <td class="entry_units">
6847 The number of raw sensor streams; the number of
6848 processed,<wbr> uncompressed streams; and the number of
6849 JPEG-compressed streams
6850 </td>
6851
6852 <td class="entry_range">
6853 >=1 for Raw and JPEG-compressed stream.<wbr> >= 3
6854 for processed,<wbr> uncompressed streams
6855 </td>
6856
6857 <td class="entry_notes">
6858 Video snapshot with preview callbacks requires 3
6859 processed streams (preview,<wbr> record,<wbr> app callbacks) and
6860 one JPEG stream (snapshot)
6861 </td>
6862
6863 <td class="entry_tags">
6864 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006865 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006866 </ul>
6867 </td>
6868
6869 </tr> <!-- end of entry -->
6870
6871
6872 <tr class="entry" id="static_android.request.maxNumReprocessStreams">
6873 <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Reprocess<wbr>Streams</td>
6874 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006875 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006876 <span class="entry_type_container">x</span>
6877
6878 <span class="entry_type_array">
6879 1
6880 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006881 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006882
6883
6884 </td> <!-- entry_type -->
6885
6886 <td class="entry_description">
6887 How many reprocessing streams of any type
6888 can be allocated at the same time
6889 </td>
6890
6891 <td class="entry_units">
6892 </td>
6893
6894 <td class="entry_range">
6895 >= 1
6896 </td>
6897
6898 <td class="entry_notes">
6899 </td>
6900
6901 <td class="entry_tags">
6902 </td>
6903
6904 </tr> <!-- end of entry -->
6905
6906
6907
6908 <!-- end of kind -->
6909 </tbody>
6910 <tr><td colspan="7" class="kind">dynamic</td></tr>
6911
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006912 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006913 <tr>
6914 <th class="th_name">Property Name</th>
6915 <th class="th_type">Type</th>
6916 <th class="th_description">Description</th>
6917 <th class="th_units">Units</th>
6918 <th class="th_range">Range</th>
6919 <th class="th_notes">Notes</th>
6920 <th class="th_tags">Tags</th>
6921 </tr>
6922 </thead>
6923
6924 <tbody>
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935 <tr class="entry" id="dynamic_android.request.frameCount">
6936 <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
6937 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006938 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006939
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006940 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006941
6942
6943 </td> <!-- entry_type -->
6944
6945 <td class="entry_description">
6946 Number of frames captured since
6947 open()
6948 </td>
6949
6950 <td class="entry_units">
6951 count of frames
6952 </td>
6953
6954 <td class="entry_range">
6955 > 0
6956 </td>
6957
6958 <td class="entry_notes">
6959 Reset on release()
6960 </td>
6961
6962 <td class="entry_tags">
6963 </td>
6964
6965 </tr> <!-- end of entry -->
6966
6967
6968 <tr class="entry" id="dynamic_android.request.id">
6969 <td class="entry_name">android.<wbr>request.<wbr>id</td>
6970 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08006971 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006972
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07006973 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006974
6975
6976 </td> <!-- entry_type -->
6977
6978 <td class="entry_description">
6979 An application-specified ID for the current
6980 request.<wbr> Must be maintained unchanged in output
6981 frame
6982 </td>
6983
6984 <td class="entry_units">
6985 arbitrary integer assigned by application
6986 </td>
6987
6988 <td class="entry_range">
6989 Any int
6990 </td>
6991
6992 <td class="entry_notes">
6993 </td>
6994
6995 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08006996 <ul class="entry_tags">
6997 <li><a href="#tag_V1">V1</a></li>
6998 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08006999 </td>
7000
7001 </tr> <!-- end of entry -->
7002
7003
7004 <tr class="entry" id="dynamic_android.request.metadataMode">
7005 <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
7006 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007007 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007008
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007009 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007010
7011 <ul class="entry_type_enum">
7012 <li>
7013 <span class="entry_type_enum_name">NONE</span>
7014 <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
7015 for application-bound buffer data.<wbr> If no
7016 application-bound streams exist,<wbr> no frame should be
7017 placed in the output frame queue.<wbr> If such streams
7018 exist,<wbr> a frame should be placed on the output queue
7019 with null metadata but with the necessary output buffer
7020 information.<wbr> Timestamp information should still be
7021 included with any output stream buffers</span>
7022 </li>
7023 <li>
7024 <span class="entry_type_enum_name">FULL</span>
7025 <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
7026 only be produced if they are separately
7027 enabled</span>
7028 </li>
7029 </ul>
7030
7031 </td> <!-- entry_type -->
7032
7033 <td class="entry_description">
7034 How much metadata to produce on
7035 output
7036 </td>
7037
7038 <td class="entry_units">
7039 </td>
7040
7041 <td class="entry_range">
7042 </td>
7043
7044 <td class="entry_notes">
7045 </td>
7046
7047 <td class="entry_tags">
7048 </td>
7049
7050 </tr> <!-- end of entry -->
7051
7052
7053 <tr class="entry" id="dynamic_android.request.outputStreams">
7054 <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
7055 <td class="entry_type">
Zhijun Hee36cdbe2013-09-06 14:28:37 -07007056 <span class="entry_type_name">int32</span>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007057 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007058
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007059 <span class="entry_type_array">
7060 n
7061 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007062 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007063
7064
7065 </td> <!-- entry_type -->
7066
7067 <td class="entry_description">
7068 Lists which camera output streams image data
7069 from this capture must be sent to
7070 </td>
7071
7072 <td class="entry_units">
7073 List of camera stream IDs
7074 </td>
7075
7076 <td class="entry_range">
7077 List must only include streams that have been
7078 created
7079 </td>
7080
7081 <td class="entry_notes">
7082 If no output streams are listed,<wbr> then the image
7083 data should simply be discarded.<wbr> The image data must
7084 still be captured for metadata and statistics production,<wbr>
7085 and the lens and flash must operate as requested.<wbr>
7086 </td>
7087
7088 <td class="entry_tags">
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -07007089 <ul class="entry_tags">
7090 <li><a href="#tag_HAL2">HAL2</a></li>
7091 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007092 </td>
7093
7094 </tr> <!-- end of entry -->
7095
7096
7097
7098 <!-- end of kind -->
7099 </tbody>
7100
7101 <!-- end of section -->
7102 <tr><td colspan="7" id="section_scaler" class="section">scaler</td></tr>
7103
7104
7105 <tr><td colspan="7" class="kind">controls</td></tr>
7106
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007107 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007108 <tr>
7109 <th class="th_name">Property Name</th>
7110 <th class="th_type">Type</th>
7111 <th class="th_description">Description</th>
7112 <th class="th_units">Units</th>
7113 <th class="th_range">Range</th>
7114 <th class="th_notes">Notes</th>
7115 <th class="th_tags">Tags</th>
7116 </tr>
7117 </thead>
7118
7119 <tbody>
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130 <tr class="entry" id="controls_android.scaler.cropRegion">
7131 <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
7132 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007133 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007134 <span class="entry_type_container">x</span>
7135
7136 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007137 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007138 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007139 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007140
7141
7142 </td> <!-- entry_type -->
7143
7144 <td class="entry_description">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007145 (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
7146<br>
7147<br> A rectangle with the top-level corner of (x,<wbr>y) and size
7148 (width,<wbr> height).<wbr> The region of the sensor that is used for
7149 output.<wbr> Each stream must use this rectangle to produce its
7150 output,<wbr> cropping to a smaller region if necessary to
7151 maintain the stream's aspect ratio.<wbr>
7152<br>
7153<br> HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007154 </td>
7155
7156 <td class="entry_units">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007157 (x,<wbr>y) of top-left corner,<wbr> width and height of region
7158 in pixels; (0,<wbr>0) is top-left corner of
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007159 android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007160 </td>
7161
7162 <td class="entry_range">
7163 </td>
7164
7165 <td class="entry_notes">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007166
7167 Any additional per-stream cropping must be done to
7168 maximize the final pixel area of the stream.<wbr>
7169<br>
7170<br> For example,<wbr> if the crop region is set to a 4:3 aspect
7171 ratio,<wbr> then 4:3 streams should use the exact crop
7172 region.<wbr> 16:9 streams should further crop vertically
7173 (letterbox).<wbr>
7174<br>
7175<br> Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
7176 outputs should crop horizontally (pillarbox),<wbr> and 16:9
7177 streams should match exactly.<wbr> These additional crops must
7178 be centered within the crop region.<wbr>
7179<br>
7180<br> The output streams must maintain square pixels at all
7181 times,<wbr> no matter what the relative aspect ratios of the
7182 crop region and the stream are.<wbr> Negative values for
7183 corner are allowed for raw output if full pixel array is
7184 larger than active pixel array.<wbr> Width and height may be
7185 rounded to nearest larger supportable width,<wbr> especially
7186 for raw output,<wbr> where only a few fixed scales may be
7187 possible.<wbr> The width and height of the crop region cannot
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007188 be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007189 android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007190 activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007191 respectively.<wbr>
7192
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007193 </td>
7194
7195 <td class="entry_tags">
7196 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007197 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007198 </ul>
7199 </td>
7200
7201 </tr> <!-- end of entry -->
7202
7203
7204
7205 <!-- end of kind -->
7206 </tbody>
7207 <tr><td colspan="7" class="kind">static</td></tr>
7208
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007209 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007210 <tr>
7211 <th class="th_name">Property Name</th>
7212 <th class="th_type">Type</th>
7213 <th class="th_description">Description</th>
7214 <th class="th_units">Units</th>
7215 <th class="th_range">Range</th>
7216 <th class="th_notes">Notes</th>
7217 <th class="th_tags">Tags</th>
7218 </tr>
7219 </thead>
7220
7221 <tbody>
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232 <tr class="entry" id="static_android.scaler.availableFormats">
7233 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Formats</td>
7234 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007235 <span class="entry_type_name entry_type_name_enum">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007236 <span class="entry_type_container">x</span>
7237
7238 <span class="entry_type_array">
7239 n
7240 </span>
Eino-Ville Talvalad4e240a2013-08-08 12:56:37 -07007241 <span class="entry_type_visibility"> [public as imageFormat]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007242 <div class="entry_type_notes">values from HAL_<wbr>PIXEL_<wbr>FORMAT_<wbr>* in /<wbr>system/<wbr>core/<wbr>include/<wbr>system/<wbr>graphics.<wbr>h</div>
7243
7244 <ul class="entry_type_enum">
7245 <li>
7246 <span class="entry_type_enum_name">RAW_SENSOR</span>
7247 <span class="entry_type_enum_value">0x20</span>
7248 </li>
7249 <li>
7250 <span class="entry_type_enum_name">YV12</span>
7251 <span class="entry_type_enum_value">0x32315659</span>
7252 <span class="entry_type_enum_notes">YCrCb 4:2:0 Planar</span>
7253 </li>
7254 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007255 <span class="entry_type_enum_name">YCrCb_420_SP</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007256 <span class="entry_type_enum_value">0x11</span>
7257 <span class="entry_type_enum_notes">NV21</span>
7258 </li>
7259 <li>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007260 <span class="entry_type_enum_name">IMPLEMENTATION_DEFINED</span>
7261 <span class="entry_type_enum_value">0x22</span>
7262 <span class="entry_type_enum_notes">Hal Implementation Defined</span>
7263 </li>
7264 <li>
7265 <span class="entry_type_enum_name">YCbCr_420_888</span>
7266 <span class="entry_type_enum_value">0x23</span>
7267 <span class="entry_type_enum_notes">Flexible YUV420 Format</span>
7268 </li>
7269 <li>
7270 <span class="entry_type_enum_name">BLOB</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007271 <span class="entry_type_enum_value">0x21</span>
Zhijun Hec2eebff2013-05-16 17:49:35 -07007272 <span class="entry_type_enum_notes">JPEG</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007273 </li>
7274 </ul>
7275
7276 </td> <!-- entry_type -->
7277
7278 <td class="entry_description">
7279 List of app-visible formats
7280 </td>
7281
7282 <td class="entry_units">
7283 </td>
7284
7285 <td class="entry_range">
7286 </td>
7287
7288 <td class="entry_notes">
7289 </td>
7290
7291 <td class="entry_tags">
7292 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007293 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007294 </ul>
7295 </td>
7296
7297 </tr> <!-- end of entry -->
7298
7299
7300 <tr class="entry" id="static_android.scaler.availableJpegMinDurations">
7301 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations</td>
7302 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007303 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007304 <span class="entry_type_container">x</span>
7305
7306 <span class="entry_type_array">
7307 n
7308 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007309 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007310
7311
7312 </td> <!-- entry_type -->
7313
7314 <td class="entry_description">
7315 The minimum frame duration that is supported
7316 for each resolution in availableJpegSizes.<wbr> Should
7317 correspond to the frame duration when only that JPEG
Zhijun He69fc0ea2013-07-17 09:42:58 -07007318 stream is active and captured in a burst,<wbr> with all
7319 processing set to FAST
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007320 </td>
7321
7322 <td class="entry_units">
7323 </td>
7324
7325 <td class="entry_range">
7326 </td>
7327
7328 <td class="entry_notes">
7329 When multiple streams are configured,<wbr> the minimum
7330 frame duration will be >= max(individual stream min
7331 durations)
7332 </td>
7333
7334 <td class="entry_tags">
7335 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007336 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007337 </ul>
7338 </td>
7339
7340 </tr> <!-- end of entry -->
7341
7342
7343 <tr class="entry" id="static_android.scaler.availableJpegSizes">
7344 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Sizes</td>
7345 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007346 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007347 <span class="entry_type_container">x</span>
7348
7349 <span class="entry_type_array">
7350 n x 2
7351 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007352 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007353
7354
7355 </td> <!-- entry_type -->
7356
7357 <td class="entry_description">
7358 The resolutions available for output from
7359 the JPEG block.<wbr> Listed as width x height
7360 </td>
7361
7362 <td class="entry_units">
7363 </td>
7364
7365 <td class="entry_range">
7366 Must include: - sensor maximum resolution Should
7367 include: - half/<wbr>quarter max resolution
7368 </td>
7369
7370 <td class="entry_notes">
7371 </td>
7372
7373 <td class="entry_tags">
7374 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007375 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007376 </ul>
7377 </td>
7378
7379 </tr> <!-- end of entry -->
7380
7381
7382 <tr class="entry" id="static_android.scaler.availableMaxDigitalZoom">
7383 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Max<wbr>Digital<wbr>Zoom</td>
7384 <td class="entry_type">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007385 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007386
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007387 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007388
7389
7390 </td> <!-- entry_type -->
7391
7392 <td class="entry_description">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007393 The maximum ratio between active area width
7394 and crop region width,<wbr> or between active area height and
7395 crop region height,<wbr> if the crop region height is larger
7396 than width
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007397 </td>
7398
7399 <td class="entry_units">
7400 </td>
7401
7402 <td class="entry_range">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007403 >=1
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007404 </td>
7405
7406 <td class="entry_notes">
7407 </td>
7408
7409 <td class="entry_tags">
Igor Murashkinf11a4df2013-05-07 10:00:46 -07007410 <ul class="entry_tags">
7411 <li><a href="#tag_BC">BC</a></li>
7412 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007413 </td>
7414
7415 </tr> <!-- end of entry -->
7416
7417
7418 <tr class="entry" id="static_android.scaler.availableProcessedMinDurations">
7419 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations</td>
7420 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007421 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007422 <span class="entry_type_container">x</span>
7423
7424 <span class="entry_type_array">
7425 n
7426 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007427 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007428
7429
7430 </td> <!-- entry_type -->
7431
7432 <td class="entry_description">
7433 The minimum frame duration that is supported
7434 for each resolution in availableProcessedSizes.<wbr> Should
7435 correspond to the frame duration when only that processed
7436 stream is active,<wbr> with all processing set to
7437 FAST
7438 </td>
7439
7440 <td class="entry_units">
7441 </td>
7442
7443 <td class="entry_range">
7444 </td>
7445
7446 <td class="entry_notes">
7447 When multiple streams are configured,<wbr> the minimum
7448 frame duration will be >= max(individual stream min
7449 durations)
7450 </td>
7451
7452 <td class="entry_tags">
7453 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007454 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007455 </ul>
7456 </td>
7457
7458 </tr> <!-- end of entry -->
7459
7460
7461 <tr class="entry" id="static_android.scaler.availableProcessedSizes">
7462 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Sizes</td>
7463 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007464 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007465 <span class="entry_type_container">x</span>
7466
7467 <span class="entry_type_array">
7468 n x 2
7469 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007470 <span class="entry_type_visibility"> [public as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007471
7472
7473 </td> <!-- entry_type -->
7474
7475 <td class="entry_description">
7476 The resolutions available for use with
7477 processed output streams,<wbr> such as YV12,<wbr> NV12,<wbr> and
7478 platform opaque YUV/<wbr>RGB streams to the GPU or video
7479 encoders.<wbr> Listed as width,<wbr> height
7480 </td>
7481
7482 <td class="entry_units">
7483 </td>
7484
7485 <td class="entry_range">
7486 Must include: - sensor maximum resolution -
7487 standard QCIF,<wbr> 240p,<wbr> 480p,<wbr> 720p,<wbr> and 1080p
7488 resolutions
7489 </td>
7490
7491 <td class="entry_notes">
7492 </td>
7493
7494 <td class="entry_tags">
7495 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007496 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007497 </ul>
7498 </td>
7499
7500 </tr> <!-- end of entry -->
7501
7502
7503 <tr class="entry" id="static_android.scaler.availableRawMinDurations">
7504 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations</td>
7505 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007506 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007507 <span class="entry_type_container">x</span>
7508
7509 <span class="entry_type_array">
7510 n
7511 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007512 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007513
7514
7515 </td> <!-- entry_type -->
7516
7517 <td class="entry_description">
7518 The minimum frame duration that is supported
7519 for each raw resolution in availableRawSizes.<wbr> Should
7520 correspond to the frame duration when only the raw stream
7521 is active.<wbr>
7522 </td>
7523
7524 <td class="entry_units">
7525 </td>
7526
7527 <td class="entry_range">
7528 </td>
7529
7530 <td class="entry_notes">
7531 When multiple streams are configured,<wbr> the minimum
7532 frame duration will be >= max(individual stream min
7533 durations)
7534 </td>
7535
7536 <td class="entry_tags">
7537 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007538 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007539 </ul>
7540 </td>
7541
7542 </tr> <!-- end of entry -->
7543
7544
7545 <tr class="entry" id="static_android.scaler.availableRawSizes">
7546 <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Sizes</td>
7547 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007548 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007549 <span class="entry_type_container">x</span>
7550
7551 <span class="entry_type_array">
7552 n x 2
7553 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007554 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007555
7556
7557 </td> <!-- entry_type -->
7558
7559 <td class="entry_description">
7560 The resolutions available for use with raw
7561 sensor output streams,<wbr> listed as width,<wbr>
7562 height
7563 </td>
7564
7565 <td class="entry_units">
7566 </td>
7567
7568 <td class="entry_range">
7569 Must include: - sensor maximum resolution
7570 </td>
7571
7572 <td class="entry_notes">
7573 </td>
7574
7575 <td class="entry_tags">
7576 </td>
7577
7578 </tr> <!-- end of entry -->
7579
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007580
7581
7582 <!-- end of kind -->
7583 </tbody>
7584 <tr><td colspan="7" class="kind">dynamic</td></tr>
7585
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007586 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007587 <tr>
7588 <th class="th_name">Property Name</th>
7589 <th class="th_type">Type</th>
7590 <th class="th_description">Description</th>
7591 <th class="th_units">Units</th>
7592 <th class="th_range">Range</th>
7593 <th class="th_notes">Notes</th>
7594 <th class="th_tags">Tags</th>
7595 </tr>
7596 </thead>
7597
7598 <tbody>
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609 <tr class="entry" id="dynamic_android.scaler.cropRegion">
7610 <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
7611 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007612 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007613 <span class="entry_type_container">x</span>
7614
7615 <span class="entry_type_array">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007616 4
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007617 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007618 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007619
7620
7621 </td> <!-- entry_type -->
7622
7623 <td class="entry_description">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007624 (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
7625<br>
7626<br> A rectangle with the top-level corner of (x,<wbr>y) and size
7627 (width,<wbr> height).<wbr> The region of the sensor that is used for
7628 output.<wbr> Each stream must use this rectangle to produce its
7629 output,<wbr> cropping to a smaller region if necessary to
7630 maintain the stream's aspect ratio.<wbr>
7631<br>
7632<br> HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007633 </td>
7634
7635 <td class="entry_units">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007636 (x,<wbr>y) of top-left corner,<wbr> width and height of region
7637 in pixels; (0,<wbr>0) is top-left corner of
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007638 android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007639 </td>
7640
7641 <td class="entry_range">
7642 </td>
7643
7644 <td class="entry_notes">
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007645
7646 Any additional per-stream cropping must be done to
7647 maximize the final pixel area of the stream.<wbr>
7648<br>
7649<br> For example,<wbr> if the crop region is set to a 4:3 aspect
7650 ratio,<wbr> then 4:3 streams should use the exact crop
7651 region.<wbr> 16:9 streams should further crop vertically
7652 (letterbox).<wbr>
7653<br>
7654<br> Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
7655 outputs should crop horizontally (pillarbox),<wbr> and 16:9
7656 streams should match exactly.<wbr> These additional crops must
7657 be centered within the crop region.<wbr>
7658<br>
7659<br> The output streams must maintain square pixels at all
7660 times,<wbr> no matter what the relative aspect ratios of the
7661 crop region and the stream are.<wbr> Negative values for
7662 corner are allowed for raw output if full pixel array is
7663 larger than active pixel array.<wbr> Width and height may be
7664 rounded to nearest larger supportable width,<wbr> especially
7665 for raw output,<wbr> where only a few fixed scales may be
7666 possible.<wbr> The width and height of the crop region cannot
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007667 be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007668 android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
Zhijun Hebd7f15b2013-05-13 16:59:51 -07007669 activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
Eino-Ville Talvalae04ec6e2013-04-16 15:35:18 -07007670 respectively.<wbr>
7671
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007672 </td>
7673
7674 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007675 <ul class="entry_tags">
7676 <li><a href="#tag_BC">BC</a></li>
7677 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007678 </td>
7679
7680 </tr> <!-- end of entry -->
7681
7682
7683
7684 <!-- end of kind -->
7685 </tbody>
7686
7687 <!-- end of section -->
7688 <tr><td colspan="7" id="section_sensor" class="section">sensor</td></tr>
7689
7690
7691 <tr><td colspan="7" class="kind">controls</td></tr>
7692
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007693 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007694 <tr>
7695 <th class="th_name">Property Name</th>
7696 <th class="th_type">Type</th>
7697 <th class="th_description">Description</th>
7698 <th class="th_units">Units</th>
7699 <th class="th_range">Range</th>
7700 <th class="th_notes">Notes</th>
7701 <th class="th_tags">Tags</th>
7702 </tr>
7703 </thead>
7704
7705 <tbody>
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716 <tr class="entry" id="controls_android.sensor.exposureTime">
7717 <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
7718 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007719 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007720
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007721 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007722
7723
7724 </td> <!-- entry_type -->
7725
7726 <td class="entry_description">
7727 Duration each pixel is exposed to
Igor Murashkin656aa5a2013-08-13 14:23:39 -07007728 light.<wbr>
7729<br>
7730<br> If the sensor can't expose this exact duration,<wbr> it should shorten the
7731 duration exposed to the nearest possible value (rather than expose longer).<wbr>
7732
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007733 </td>
7734
7735 <td class="entry_units">
7736 nanoseconds
7737 </td>
7738
7739 <td class="entry_range">
7740 android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
7741 </td>
7742
7743 <td class="entry_notes">
7744 1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
7745 </td>
7746
7747 <td class="entry_tags">
7748 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007749 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007750 </ul>
7751 </td>
7752
7753 </tr> <!-- end of entry -->
7754
7755
7756 <tr class="entry" id="controls_android.sensor.frameDuration">
7757 <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
7758 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007759 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007760
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007761 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007762
7763
7764 </td> <!-- entry_type -->
7765
7766 <td class="entry_description">
7767 Duration from start of frame exposure to
7768 start of next frame exposure
7769 </td>
7770
7771 <td class="entry_units">
7772 nanoseconds
7773 </td>
7774
7775 <td class="entry_range">
7776 see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
7777 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
7778 </td>
7779
7780 <td class="entry_notes">
7781 Exposure time has priority,<wbr> so duration is set to
7782 max(duration,<wbr> exposure time + overhead)
7783 </td>
7784
7785 <td class="entry_tags">
7786 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007787 <li><a href="#tag_V1">V1</a></li>
7788 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007789 </ul>
7790 </td>
7791
7792 </tr> <!-- end of entry -->
7793
7794
7795 <tr class="entry" id="controls_android.sensor.sensitivity">
7796 <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
7797 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007798 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007799
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007800 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007801
7802
7803 </td> <!-- entry_type -->
7804
7805 <td class="entry_description">
7806 Gain applied to image data.<wbr> Must be
7807 implemented through analog gain only if set to values
7808 below 'maximum analog sensitivity'.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07007809<br>
7810<br> If the sensor can't apply this exact gain,<wbr> it should lessen the
7811 gain to the nearest possible value (rather than gain more).<wbr>
7812
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007813 </td>
7814
7815 <td class="entry_units">
7816 ISO arithmetic units
7817 </td>
7818
7819 <td class="entry_range">
7820 android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
7821 </td>
7822
7823 <td class="entry_notes">
7824 ISO 12232:2006 REI method
7825 </td>
7826
7827 <td class="entry_tags">
7828 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007829 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007830 </ul>
7831 </td>
7832
7833 </tr> <!-- end of entry -->
7834
7835
7836
7837 <!-- end of kind -->
7838 </tbody>
7839 <tr><td colspan="7" class="kind">static</td></tr>
7840
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007841 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007842 <tr>
7843 <th class="th_name">Property Name</th>
7844 <th class="th_type">Type</th>
7845 <th class="th_description">Description</th>
7846 <th class="th_units">Units</th>
7847 <th class="th_range">Range</th>
7848 <th class="th_notes">Notes</th>
7849 <th class="th_tags">Tags</th>
7850 </tr>
7851 </thead>
7852
7853 <tbody>
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866 <tr class="entry" id="static_android.sensor.info.activeArraySize">
7867 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size</td>
7868 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007869 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007870 <span class="entry_type_container">x</span>
7871
7872 <span class="entry_type_array">
7873 4
7874 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07007875 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007876 <div class="entry_type_notes">Four ints defining the active pixel rectangle</div>
7877
7878
7879 </td> <!-- entry_type -->
7880
7881 <td class="entry_description">
7882 Area of raw data which corresponds to only
7883 active pixels; smaller or equal to
7884 pixelArraySize.<wbr>
7885 </td>
7886
7887 <td class="entry_units">
7888 xmin,<wbr> ymin,<wbr> width,<wbr> height.<wbr> Top left of full
7889 pixel array is (0,<wbr>0)
7890 </td>
7891
7892 <td class="entry_range">
7893 </td>
7894
7895 <td class="entry_notes">
7896 </td>
7897
7898 <td class="entry_tags">
7899 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007900 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007901 </ul>
7902 </td>
7903
7904 </tr> <!-- end of entry -->
7905
7906
Zhijun He69fc0ea2013-07-17 09:42:58 -07007907 <tr class="entry" id="static_android.sensor.info.sensitivityRange">
7908 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range</td>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007909 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007910 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007911 <span class="entry_type_container">x</span>
7912
7913 <span class="entry_type_array">
Zhijun He69fc0ea2013-07-17 09:42:58 -07007914 2
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007915 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007916 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07007917 <div class="entry_type_notes">Range of supported sensitivities</div>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007918
7919
7920 </td> <!-- entry_type -->
7921
7922 <td class="entry_description">
7923 Range of valid sensitivities
7924 </td>
7925
7926 <td class="entry_units">
7927 </td>
7928
7929 <td class="entry_range">
Zhijun He69fc0ea2013-07-17 09:42:58 -07007930 Min <= 100,<wbr> Max >= 1600
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007931 </td>
7932
7933 <td class="entry_notes">
7934 </td>
7935
7936 <td class="entry_tags">
7937 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007938 <li><a href="#tag_BC">BC</a></li>
7939 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007940 </ul>
7941 </td>
7942
7943 </tr> <!-- end of entry -->
7944
7945
7946 <tr class="entry" id="static_android.sensor.info.colorFilterArrangement">
7947 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>color<wbr>Filter<wbr>Arrangement</td>
7948 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08007949 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007950
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07007951 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007952
7953 <ul class="entry_type_enum">
7954 <li>
7955 <span class="entry_type_enum_name">RGGB</span>
7956 </li>
7957 <li>
7958 <span class="entry_type_enum_name">GRBG</span>
7959 </li>
7960 <li>
7961 <span class="entry_type_enum_name">GBRG</span>
7962 </li>
7963 <li>
7964 <span class="entry_type_enum_name">BGGR</span>
7965 </li>
7966 <li>
7967 <span class="entry_type_enum_name">RGB</span>
7968 <span class="entry_type_enum_notes">Sensor is not Bayer; output has 3 16-bit
7969 values for each pixel,<wbr> instead of just 1 16-bit value
7970 per pixel.<wbr></span>
7971 </li>
7972 </ul>
7973
7974 </td> <!-- entry_type -->
7975
7976 <td class="entry_description">
7977 Arrangement of color filters on sensor;
7978 represents the colors in the top-left 2x2 section of
7979 the sensor,<wbr> in reading order
7980 </td>
7981
7982 <td class="entry_units">
7983 </td>
7984
7985 <td class="entry_range">
7986 </td>
7987
7988 <td class="entry_notes">
7989 </td>
7990
7991 <td class="entry_tags">
7992 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08007993 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08007994 </ul>
7995 </td>
7996
7997 </tr> <!-- end of entry -->
7998
7999
8000 <tr class="entry" id="static_android.sensor.info.exposureTimeRange">
8001 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range</td>
8002 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008003 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008004 <span class="entry_type_container">x</span>
8005
8006 <span class="entry_type_array">
8007 2
8008 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008009 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008010 <div class="entry_type_notes">nanoseconds</div>
8011
8012
8013 </td> <!-- entry_type -->
8014
8015 <td class="entry_description">
8016 Range of valid exposure
8017 times
8018 </td>
8019
8020 <td class="entry_units">
8021 </td>
8022
8023 <td class="entry_range">
8024 Min <= 100e3 (100 us),<wbr> Max >= 30e9 (30
8025 sec)
8026 </td>
8027
8028 <td class="entry_notes">
8029 </td>
8030
8031 <td class="entry_tags">
8032 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008033 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008034 </ul>
8035 </td>
8036
8037 </tr> <!-- end of entry -->
8038
8039
8040 <tr class="entry" id="static_android.sensor.info.maxFrameDuration">
8041 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration</td>
8042 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008043 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008044
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008045 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008046
8047
8048 </td> <!-- entry_type -->
8049
8050 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -07008051 Maximum possible frame duration (minimum frame
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008052 rate)
8053 </td>
8054
8055 <td class="entry_units">
8056 nanoseconds
8057 </td>
8058
8059 <td class="entry_range">
8060 >= 30e9
8061 </td>
8062
8063 <td class="entry_notes">
8064 Minimum duration is a function of resolution,<wbr>
8065 processing settings.<wbr> See
Zhijun He69fc0ea2013-07-17 09:42:58 -07008066 android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations
8067 android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations
8068 android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008069 </td>
8070
8071 <td class="entry_tags">
8072 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008073 <li><a href="#tag_BC">BC</a></li>
8074 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008075 </ul>
8076 </td>
8077
8078 </tr> <!-- end of entry -->
8079
8080
8081 <tr class="entry" id="static_android.sensor.info.physicalSize">
8082 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>physical<wbr>Size</td>
8083 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008084 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008085 <span class="entry_type_container">x</span>
8086
8087 <span class="entry_type_array">
8088 2
8089 </span>
Timothy Knightec817d52013-08-16 16:15:29 -07008090 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008091 <div class="entry_type_notes">width x height in millimeters</div>
8092
8093
8094 </td> <!-- entry_type -->
8095
8096 <td class="entry_description">
8097 The physical dimensions of the full pixel
8098 array
8099 </td>
8100
8101 <td class="entry_units">
8102 </td>
8103
8104 <td class="entry_range">
8105 </td>
8106
8107 <td class="entry_notes">
8108 Needed for FOV calculation for old API
8109 </td>
8110
8111 <td class="entry_tags">
8112 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008113 <li><a href="#tag_V1">V1</a></li>
8114 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008115 </ul>
8116 </td>
8117
8118 </tr> <!-- end of entry -->
8119
8120
8121 <tr class="entry" id="static_android.sensor.info.pixelArraySize">
8122 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>pixel<wbr>Array<wbr>Size</td>
8123 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008124 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008125 <span class="entry_type_container">x</span>
8126
8127 <span class="entry_type_array">
8128 2
8129 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07008130 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008131
8132
8133 </td> <!-- entry_type -->
8134
8135 <td class="entry_description">
8136 Dimensions of full pixel array,<wbr> possibly
8137 including black calibration pixels
8138 </td>
8139
8140 <td class="entry_units">
8141 </td>
8142
8143 <td class="entry_range">
8144 </td>
8145
8146 <td class="entry_notes">
8147 Maximum output resolution for raw format must
8148 match this in
8149 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Sizes<wbr>Per<wbr>Format
8150 </td>
8151
8152 <td class="entry_tags">
8153 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008154 <li><a href="#tag_DNG">DNG</a></li>
8155 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008156 </ul>
8157 </td>
8158
8159 </tr> <!-- end of entry -->
8160
8161
8162 <tr class="entry" id="static_android.sensor.info.whiteLevel">
8163 <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level</td>
8164 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008165 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008166
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008167 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008168
8169
8170 </td> <!-- entry_type -->
8171
8172 <td class="entry_description">
8173 Maximum raw value output by
8174 sensor
8175 </td>
8176
8177 <td class="entry_units">
8178 </td>
8179
8180 <td class="entry_range">
8181 > 1024 (10-bit output)
8182 </td>
8183
8184 <td class="entry_notes">
8185 Defines sensor bit depth (10-14 bits is
8186 expected)
8187 </td>
8188
8189 <td class="entry_tags">
8190 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008191 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008192 </ul>
8193 </td>
8194
8195 </tr> <!-- end of entry -->
8196
8197
8198
8199
8200
8201 <tr class="entry" id="static_android.sensor.baseGainFactor">
8202 <td class="entry_name">android.<wbr>sensor.<wbr>base<wbr>Gain<wbr>Factor</td>
8203 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008204 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008205
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008206 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008207
8208
8209 </td> <!-- entry_type -->
8210
8211 <td class="entry_description">
8212 Gain factor from electrons to raw units when
8213 ISO=100
8214 </td>
8215
8216 <td class="entry_units">
8217 </td>
8218
8219 <td class="entry_range">
8220 </td>
8221
8222 <td class="entry_notes">
8223 </td>
8224
8225 <td class="entry_tags">
8226 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008227 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008228 </ul>
8229 </td>
8230
8231 </tr> <!-- end of entry -->
8232
8233
8234 <tr class="entry" id="static_android.sensor.blackLevelPattern">
8235 <td class="entry_name">android.<wbr>sensor.<wbr>black<wbr>Level<wbr>Pattern</td>
8236 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008237 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008238 <span class="entry_type_container">x</span>
8239
8240 <span class="entry_type_array">
8241 4
8242 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008243 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008244 <div class="entry_type_notes">2x2 raw count block</div>
8245
8246
8247 </td> <!-- entry_type -->
8248
8249 <td class="entry_description">
8250 A fixed black level offset for each of the
8251 Bayer mosaic channels
8252 </td>
8253
8254 <td class="entry_units">
8255 </td>
8256
8257 <td class="entry_range">
8258 >= 0 each
8259 </td>
8260
8261 <td class="entry_notes">
8262 As per DNG BlackLevelRepeatDim /<wbr> BlackLevel
8263 tags
8264 </td>
8265
8266 <td class="entry_tags">
8267 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008268 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008269 </ul>
8270 </td>
8271
8272 </tr> <!-- end of entry -->
8273
8274
8275 <tr class="entry" id="static_android.sensor.calibrationTransform1">
8276 <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform1</td>
8277 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008278 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008279 <span class="entry_type_container">x</span>
8280
8281 <span class="entry_type_array">
8282 9
8283 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008284 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008285 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8286
8287
8288 </td> <!-- entry_type -->
8289
8290 <td class="entry_description">
8291 Per-device calibration on top of color space
8292 transform 1
8293 </td>
8294
8295 <td class="entry_units">
8296 </td>
8297
8298 <td class="entry_range">
8299 </td>
8300
8301 <td class="entry_notes">
8302 </td>
8303
8304 <td class="entry_tags">
8305 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008306 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008307 </ul>
8308 </td>
8309
8310 </tr> <!-- end of entry -->
8311
8312
8313 <tr class="entry" id="static_android.sensor.calibrationTransform2">
8314 <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform2</td>
8315 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008316 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008317 <span class="entry_type_container">x</span>
8318
8319 <span class="entry_type_array">
8320 9
8321 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008322 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008323 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8324
8325
8326 </td> <!-- entry_type -->
8327
8328 <td class="entry_description">
8329 Per-device calibration on top of color space
8330 transform 2
8331 </td>
8332
8333 <td class="entry_units">
8334 </td>
8335
8336 <td class="entry_range">
8337 </td>
8338
8339 <td class="entry_notes">
8340 </td>
8341
8342 <td class="entry_tags">
8343 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008344 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008345 </ul>
8346 </td>
8347
8348 </tr> <!-- end of entry -->
8349
8350
8351 <tr class="entry" id="static_android.sensor.colorTransform1">
8352 <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform1</td>
8353 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008354 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008355 <span class="entry_type_container">x</span>
8356
8357 <span class="entry_type_array">
8358 9
8359 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008360 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008361 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8362
8363
8364 </td> <!-- entry_type -->
8365
8366 <td class="entry_description">
8367 Linear mapping from XYZ (D50) color space to
8368 reference linear sensor color,<wbr> for first reference
8369 illuminant
8370 </td>
8371
8372 <td class="entry_units">
8373 </td>
8374
8375 <td class="entry_range">
8376 </td>
8377
8378 <td class="entry_notes">
8379 Use as follows XYZ = inv(transform) * clip( (raw -
8380 black level(raw) ) /<wbr> ( white level - max black level) ).<wbr>
8381 At least in the simple case
8382 </td>
8383
8384 <td class="entry_tags">
8385 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008386 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008387 </ul>
8388 </td>
8389
8390 </tr> <!-- end of entry -->
8391
8392
8393 <tr class="entry" id="static_android.sensor.colorTransform2">
8394 <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform2</td>
8395 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008396 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008397 <span class="entry_type_container">x</span>
8398
8399 <span class="entry_type_array">
8400 9
8401 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008402 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008403 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8404
8405
8406 </td> <!-- entry_type -->
8407
8408 <td class="entry_description">
8409 Linear mapping from XYZ (D50) color space to
8410 reference linear sensor color,<wbr> for second reference
8411 illuminant
8412 </td>
8413
8414 <td class="entry_units">
8415 </td>
8416
8417 <td class="entry_range">
8418 </td>
8419
8420 <td class="entry_notes">
8421 </td>
8422
8423 <td class="entry_tags">
8424 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008425 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008426 </ul>
8427 </td>
8428
8429 </tr> <!-- end of entry -->
8430
8431
8432 <tr class="entry" id="static_android.sensor.forwardMatrix1">
8433 <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix1</td>
8434 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008435 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008436 <span class="entry_type_container">x</span>
8437
8438 <span class="entry_type_array">
8439 9
8440 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008441 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008442 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8443
8444
8445 </td> <!-- entry_type -->
8446
8447 <td class="entry_description">
8448 Used by DNG for better WB
8449 adaptation
8450 </td>
8451
8452 <td class="entry_units">
8453 </td>
8454
8455 <td class="entry_range">
8456 </td>
8457
8458 <td class="entry_notes">
8459 </td>
8460
8461 <td class="entry_tags">
8462 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008463 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008464 </ul>
8465 </td>
8466
8467 </tr> <!-- end of entry -->
8468
8469
8470 <tr class="entry" id="static_android.sensor.forwardMatrix2">
8471 <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix2</td>
8472 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008473 <span class="entry_type_name">rational</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008474 <span class="entry_type_container">x</span>
8475
8476 <span class="entry_type_array">
8477 9
8478 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008479 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008480 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
8481
8482
8483 </td> <!-- entry_type -->
8484
8485 <td class="entry_description">
8486 Used by DNG for better WB
8487 adaptation
8488 </td>
8489
8490 <td class="entry_units">
8491 </td>
8492
8493 <td class="entry_range">
8494 </td>
8495
8496 <td class="entry_notes">
8497 </td>
8498
8499 <td class="entry_tags">
8500 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008501 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008502 </ul>
8503 </td>
8504
8505 </tr> <!-- end of entry -->
8506
8507
8508 <tr class="entry" id="static_android.sensor.maxAnalogSensitivity">
8509 <td class="entry_name">android.<wbr>sensor.<wbr>max<wbr>Analog<wbr>Sensitivity</td>
8510 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008511 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008512
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008513 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008514
8515
8516 </td> <!-- entry_type -->
8517
8518 <td class="entry_description">
8519 Maximum sensitivity that is implemented
8520 purely through analog gain
8521 </td>
8522
8523 <td class="entry_units">
8524 </td>
8525
8526 <td class="entry_range">
8527 </td>
8528
8529 <td class="entry_notes">
8530 For android.<wbr>sensor.<wbr>sensitivity values less than or
8531 equal to this,<wbr> all applied gain must be analog.<wbr> For
8532 values above this,<wbr> it can be a mix of analog and
8533 digital
8534 </td>
8535
8536 <td class="entry_tags">
8537 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008538 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008539 </ul>
8540 </td>
8541
8542 </tr> <!-- end of entry -->
8543
8544
8545 <tr class="entry" id="static_android.sensor.noiseModelCoefficients">
8546 <td class="entry_name">android.<wbr>sensor.<wbr>noise<wbr>Model<wbr>Coefficients</td>
8547 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008548 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008549 <span class="entry_type_container">x</span>
8550
8551 <span class="entry_type_array">
8552 2
8553 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008554 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008555 <div class="entry_type_notes">float constants A,<wbr> B for the noise variance model</div>
8556
8557
8558 </td> <!-- entry_type -->
8559
8560 <td class="entry_description">
8561 Estimation of sensor noise
8562 characteristics
8563 </td>
8564
8565 <td class="entry_units">
8566 var(raw pixel value) = electrons * (baseGainFactor
8567 * iso/<wbr>100)^2 + A * (baseGainFactor * iso/<wbr>100)^2 +
8568 B
8569 </td>
8570
8571 <td class="entry_range">
8572 </td>
8573
8574 <td class="entry_notes">
8575 A represents sensor read noise before analog
8576 amplification; B represents noise from A/<wbr>D conversion and
8577 other circuits after amplification.<wbr> Both noise sources
8578 are assumed to be gaussian,<wbr> independent,<wbr> and not to vary
8579 across the sensor
8580 </td>
8581
8582 <td class="entry_tags">
8583 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008584 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008585 </ul>
8586 </td>
8587
8588 </tr> <!-- end of entry -->
8589
8590
8591 <tr class="entry" id="static_android.sensor.orientation">
8592 <td class="entry_name">android.<wbr>sensor.<wbr>orientation</td>
8593 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008594 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008595
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008596 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008597
8598
8599 </td> <!-- entry_type -->
8600
8601 <td class="entry_description">
8602 Clockwise angle through which the output
8603 image needs to be rotated to be upright on the device
8604 screen in its native orientation.<wbr> Also defines the
8605 direction of rolling shutter readout,<wbr> which is from top
8606 to bottom in the sensor's coordinate system
8607 </td>
8608
8609 <td class="entry_units">
8610 degrees clockwise rotation,<wbr> only multiples of
8611 90
8612 </td>
8613
8614 <td class="entry_range">
8615 0,<wbr>90,<wbr>180,<wbr>270
8616 </td>
8617
8618 <td class="entry_notes">
8619 </td>
8620
8621 <td class="entry_tags">
8622 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008623 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008624 </ul>
8625 </td>
8626
8627 </tr> <!-- end of entry -->
8628
8629
8630 <tr class="entry" id="static_android.sensor.referenceIlluminant1">
8631 <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant1</td>
8632 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008633 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008634
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008635 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008636
8637 <ul class="entry_type_enum">
8638 <li>
8639 <span class="entry_type_enum_name">DAYLIGHT</span>
8640 <span class="entry_type_enum_value">1</span>
8641 </li>
8642 <li>
8643 <span class="entry_type_enum_name">FLUORESCENT</span>
8644 <span class="entry_type_enum_value">2</span>
8645 </li>
8646 <li>
8647 <span class="entry_type_enum_name">TUNGSTEN</span>
8648 <span class="entry_type_enum_value">3</span>
8649 <span class="entry_type_enum_notes">Incandescent light</span>
8650 </li>
8651 <li>
8652 <span class="entry_type_enum_name">FLASH</span>
8653 <span class="entry_type_enum_value">4</span>
8654 </li>
8655 <li>
8656 <span class="entry_type_enum_name">FINE_WEATHER</span>
8657 <span class="entry_type_enum_value">9</span>
8658 </li>
8659 <li>
8660 <span class="entry_type_enum_name">CLOUDY_WEATHER</span>
8661 <span class="entry_type_enum_value">10</span>
8662 </li>
8663 <li>
8664 <span class="entry_type_enum_name">SHADE</span>
8665 <span class="entry_type_enum_value">11</span>
8666 </li>
8667 <li>
8668 <span class="entry_type_enum_name">DAYLIGHT_FLUORESCENT</span>
8669 <span class="entry_type_enum_value">12</span>
8670 <span class="entry_type_enum_notes">D 5700 - 7100K</span>
8671 </li>
8672 <li>
8673 <span class="entry_type_enum_name">DAY_WHITE_FLUORESCENT</span>
8674 <span class="entry_type_enum_value">13</span>
8675 <span class="entry_type_enum_notes">N 4600 - 5400K</span>
8676 </li>
8677 <li>
8678 <span class="entry_type_enum_name">COOL_WHITE_FLUORESCENT</span>
8679 <span class="entry_type_enum_value">14</span>
8680 <span class="entry_type_enum_notes">W 3900 - 4500K</span>
8681 </li>
8682 <li>
8683 <span class="entry_type_enum_name">WHITE_FLUORESCENT</span>
8684 <span class="entry_type_enum_value">15</span>
8685 <span class="entry_type_enum_notes">WW 3200 - 3700K</span>
8686 </li>
8687 <li>
8688 <span class="entry_type_enum_name">STANDARD_A</span>
8689 <span class="entry_type_enum_value">17</span>
8690 </li>
8691 <li>
8692 <span class="entry_type_enum_name">STANDARD_B</span>
8693 <span class="entry_type_enum_value">18</span>
8694 </li>
8695 <li>
8696 <span class="entry_type_enum_name">STANDARD_C</span>
8697 <span class="entry_type_enum_value">19</span>
8698 </li>
8699 <li>
8700 <span class="entry_type_enum_name">D55</span>
8701 <span class="entry_type_enum_value">20</span>
8702 </li>
8703 <li>
8704 <span class="entry_type_enum_name">D65</span>
8705 <span class="entry_type_enum_value">21</span>
8706 </li>
8707 <li>
8708 <span class="entry_type_enum_name">D75</span>
8709 <span class="entry_type_enum_value">22</span>
8710 </li>
8711 <li>
8712 <span class="entry_type_enum_name">D50</span>
8713 <span class="entry_type_enum_value">23</span>
8714 </li>
8715 <li>
8716 <span class="entry_type_enum_name">ISO_STUDIO_TUNGSTEN</span>
8717 <span class="entry_type_enum_value">24</span>
8718 </li>
8719 </ul>
8720
8721 </td> <!-- entry_type -->
8722
8723 <td class="entry_description">
8724 Light source used to define transform
8725 1
8726 </td>
8727
8728 <td class="entry_units">
8729 </td>
8730
8731 <td class="entry_range">
8732 </td>
8733
8734 <td class="entry_notes">
8735 [EXIF LightSource tag] Must all these be
8736 supported? Need CCT for each!
8737 </td>
8738
8739 <td class="entry_tags">
8740 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008741 <li><a href="#tag_DNG">DNG</a></li>
8742 <li><a href="#tag_EXIF">EXIF</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008743 </ul>
8744 </td>
8745
8746 </tr> <!-- end of entry -->
8747
8748
8749 <tr class="entry" id="static_android.sensor.referenceIlluminant2">
8750 <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant2</td>
8751 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008752 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008753
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008754 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008755
8756
8757 </td> <!-- entry_type -->
8758
8759 <td class="entry_description">
8760 Light source used to define transform
8761 2
8762 </td>
8763
8764 <td class="entry_units">
8765 Same as illuminant 1
8766 </td>
8767
8768 <td class="entry_range">
8769 </td>
8770
8771 <td class="entry_notes">
8772 </td>
8773
8774 <td class="entry_tags">
8775 </td>
8776
8777 </tr> <!-- end of entry -->
8778
8779
8780
8781 <!-- end of kind -->
8782 </tbody>
8783 <tr><td colspan="7" class="kind">dynamic</td></tr>
8784
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008785 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008786 <tr>
8787 <th class="th_name">Property Name</th>
8788 <th class="th_type">Type</th>
8789 <th class="th_description">Description</th>
8790 <th class="th_units">Units</th>
8791 <th class="th_range">Range</th>
8792 <th class="th_notes">Notes</th>
8793 <th class="th_tags">Tags</th>
8794 </tr>
8795 </thead>
8796
8797 <tbody>
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808 <tr class="entry" id="dynamic_android.sensor.exposureTime">
8809 <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
8810 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008811 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008812
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008813 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008814
8815
8816 </td> <!-- entry_type -->
8817
8818 <td class="entry_description">
8819 Duration each pixel is exposed to
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008820 light.<wbr>
8821<br>
8822<br> If the sensor can't expose this exact duration,<wbr> it should shorten the
8823 duration exposed to the nearest possible value (rather than expose longer).<wbr>
8824
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008825 </td>
8826
8827 <td class="entry_units">
8828 nanoseconds
8829 </td>
8830
8831 <td class="entry_range">
8832 android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
8833 </td>
8834
8835 <td class="entry_notes">
8836 1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
8837 </td>
8838
8839 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008840 <ul class="entry_tags">
8841 <li><a href="#tag_V1">V1</a></li>
8842 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008843 </td>
8844
8845 </tr> <!-- end of entry -->
8846
8847
8848 <tr class="entry" id="dynamic_android.sensor.frameDuration">
8849 <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
8850 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008851 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008852
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">
8859 Duration from start of frame exposure to
8860 start of next frame exposure
8861 </td>
8862
8863 <td class="entry_units">
8864 nanoseconds
8865 </td>
8866
8867 <td class="entry_range">
8868 see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
8869 android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
8870 </td>
8871
8872 <td class="entry_notes">
8873 Exposure time has priority,<wbr> so duration is set to
8874 max(duration,<wbr> exposure time + overhead)
8875 </td>
8876
8877 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008878 <ul class="entry_tags">
8879 <li><a href="#tag_V1">V1</a></li>
8880 <li><a href="#tag_BC">BC</a></li>
8881 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008882 </td>
8883
8884 </tr> <!-- end of entry -->
8885
8886
8887 <tr class="entry" id="dynamic_android.sensor.sensitivity">
8888 <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
8889 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008890 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008891
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008892 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008893
8894
8895 </td> <!-- entry_type -->
8896
8897 <td class="entry_description">
8898 Gain applied to image data.<wbr> Must be
8899 implemented through analog gain only if set to values
8900 below 'maximum analog sensitivity'.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008901<br>
8902<br> If the sensor can't apply this exact gain,<wbr> it should lessen the
8903 gain to the nearest possible value (rather than gain more).<wbr>
8904
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008905 </td>
8906
8907 <td class="entry_units">
8908 ISO arithmetic units
8909 </td>
8910
8911 <td class="entry_range">
8912 android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
8913 </td>
8914
8915 <td class="entry_notes">
8916 ISO 12232:2006 REI method
8917 </td>
8918
8919 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008920 <ul class="entry_tags">
8921 <li><a href="#tag_V1">V1</a></li>
8922 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008923 </td>
8924
8925 </tr> <!-- end of entry -->
8926
8927
8928 <tr class="entry" id="dynamic_android.sensor.timestamp">
8929 <td class="entry_name">android.<wbr>sensor.<wbr>timestamp</td>
8930 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08008931 <span class="entry_type_name">int64</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008932
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07008933 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008934
8935
8936 </td> <!-- entry_type -->
8937
8938 <td class="entry_description">
8939 Time at start of exposure of first
8940 row
8941 </td>
8942
8943 <td class="entry_units">
8944 nanoseconds
8945 </td>
8946
8947 <td class="entry_range">
8948 > 0
8949 </td>
8950
8951 <td class="entry_notes">
8952 Monotonic,<wbr> should be synced to other timestamps in
8953 system
8954 </td>
8955
8956 <td class="entry_tags">
8957 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08008958 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08008959 </ul>
8960 </td>
8961
8962 </tr> <!-- end of entry -->
8963
Igor Murashkin656aa5a2013-08-13 14:23:39 -07008964
8965 <tr class="entry" id="dynamic_android.sensor.temperature">
8966 <td class="entry_name">android.<wbr>sensor.<wbr>temperature</td>
8967 <td class="entry_type">
8968 <span class="entry_type_name">float</span>
8969
8970 <span class="entry_type_visibility"> [public]</span>
8971
8972
8973 </td> <!-- entry_type -->
8974
8975 <td class="entry_description">
8976 The temperature of the sensor,<wbr> sampled at the time
8977 exposure began for this frame.<wbr>
8978<br>
8979<br> The thermal diode being queried should be inside the sensor PCB,<wbr> or
8980 somewhere close to it.<wbr>
8981
8982 </td>
8983
8984 <td class="entry_units">
8985 celsius
8986 </td>
8987
8988 <td class="entry_range">
8989 Optional.<wbr> This value is missing if no temperature is available.<wbr>
8990 </td>
8991
8992 <td class="entry_notes">
8993 </td>
8994
8995 <td class="entry_tags">
8996 </td>
8997
8998 </tr> <!-- end of entry -->
8999
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009000
9001
9002 <!-- end of kind -->
9003 </tbody>
9004
9005 <!-- end of section -->
9006 <tr><td colspan="7" id="section_shading" class="section">shading</td></tr>
9007
9008
9009 <tr><td colspan="7" class="kind">controls</td></tr>
9010
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009011 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009012 <tr>
9013 <th class="th_name">Property Name</th>
9014 <th class="th_type">Type</th>
9015 <th class="th_description">Description</th>
9016 <th class="th_units">Units</th>
9017 <th class="th_range">Range</th>
9018 <th class="th_notes">Notes</th>
9019 <th class="th_tags">Tags</th>
9020 </tr>
9021 </thead>
9022
9023 <tbody>
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034 <tr class="entry" id="controls_android.shading.mode">
9035 <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
9036 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009037 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009038
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009039 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009040
9041 <ul class="entry_type_enum">
9042 <li>
9043 <span class="entry_type_enum_name">OFF</span>
9044 <span class="entry_type_enum_notes">No shading correction is applied</span>
9045 </li>
9046 <li>
9047 <span class="entry_type_enum_name">FAST</span>
9048 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
9049 bayer output</span>
9050 </li>
9051 <li>
9052 <span class="entry_type_enum_name">HIGH_QUALITY</span>
9053 <span class="entry_type_enum_notes">Frame rate may be reduced by high
9054 quality</span>
9055 </li>
9056 </ul>
9057
9058 </td> <!-- entry_type -->
9059
9060 <td class="entry_description">
9061 Quality of lens shading correction applied
9062 to the image data
9063 </td>
9064
9065 <td class="entry_units">
9066 </td>
9067
9068 <td class="entry_range">
9069 </td>
9070
9071 <td class="entry_notes">
9072 </td>
9073
9074 <td class="entry_tags">
9075 </td>
9076
9077 </tr> <!-- end of entry -->
9078
9079
9080 <tr class="entry" id="controls_android.shading.strength">
9081 <td class="entry_name">android.<wbr>shading.<wbr>strength</td>
9082 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009083 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009084
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009085 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009086
9087
9088 </td> <!-- entry_type -->
9089
9090 <td class="entry_description">
9091 Control the amount of shading correction
9092 applied to the images
9093 </td>
9094
9095 <td class="entry_units">
9096 unitless: 1-10; 10 is full shading
9097 compensation
9098 </td>
9099
9100 <td class="entry_range">
9101 </td>
9102
9103 <td class="entry_notes">
9104 </td>
9105
9106 <td class="entry_tags">
9107 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009108 <li><a href="#tag_ADV">ADV</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009109 </ul>
9110 </td>
9111
9112 </tr> <!-- end of entry -->
9113
9114
9115
9116 <!-- end of kind -->
9117 </tbody>
9118 <tr><td colspan="7" class="kind">dynamic</td></tr>
9119
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009120 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009121 <tr>
9122 <th class="th_name">Property Name</th>
9123 <th class="th_type">Type</th>
9124 <th class="th_description">Description</th>
9125 <th class="th_units">Units</th>
9126 <th class="th_range">Range</th>
9127 <th class="th_notes">Notes</th>
9128 <th class="th_tags">Tags</th>
9129 </tr>
9130 </thead>
9131
9132 <tbody>
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143 <tr class="entry" id="dynamic_android.shading.mode">
9144 <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
9145 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009146 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009147
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009148 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009149
9150 <ul class="entry_type_enum">
9151 <li>
9152 <span class="entry_type_enum_name">OFF</span>
9153 <span class="entry_type_enum_notes">No shading correction is applied</span>
9154 </li>
9155 <li>
9156 <span class="entry_type_enum_name">FAST</span>
9157 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
9158 bayer output</span>
9159 </li>
9160 <li>
9161 <span class="entry_type_enum_name">HIGH_QUALITY</span>
9162 <span class="entry_type_enum_notes">Frame rate may be reduced by high
9163 quality</span>
9164 </li>
9165 </ul>
9166
9167 </td> <!-- entry_type -->
9168
9169 <td class="entry_description">
9170 Quality of lens shading correction applied
9171 to the image data
9172 </td>
9173
9174 <td class="entry_units">
9175 </td>
9176
9177 <td class="entry_range">
9178 </td>
9179
9180 <td class="entry_notes">
9181 </td>
9182
9183 <td class="entry_tags">
9184 </td>
9185
9186 </tr> <!-- end of entry -->
9187
9188
9189
9190 <!-- end of kind -->
9191 </tbody>
9192
9193 <!-- end of section -->
9194 <tr><td colspan="7" id="section_statistics" class="section">statistics</td></tr>
9195
9196
9197 <tr><td colspan="7" class="kind">controls</td></tr>
9198
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009199 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009200 <tr>
9201 <th class="th_name">Property Name</th>
9202 <th class="th_type">Type</th>
9203 <th class="th_description">Description</th>
9204 <th class="th_units">Units</th>
9205 <th class="th_range">Range</th>
9206 <th class="th_notes">Notes</th>
9207 <th class="th_tags">Tags</th>
9208 </tr>
9209 </thead>
9210
9211 <tbody>
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222 <tr class="entry" id="controls_android.statistics.faceDetectMode">
9223 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
9224 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009225 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009226
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009227 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009228
9229 <ul class="entry_type_enum">
9230 <li>
9231 <span class="entry_type_enum_name">OFF</span>
9232 </li>
9233 <li>
9234 <span class="entry_type_enum_name">SIMPLE</span>
9235 <span class="entry_type_enum_notes">Optional Return rectangle and confidence
9236 only</span>
9237 </li>
9238 <li>
9239 <span class="entry_type_enum_name">FULL</span>
9240 <span class="entry_type_enum_notes">Optional Return all face
9241 metadata</span>
9242 </li>
9243 </ul>
9244
9245 </td> <!-- entry_type -->
9246
9247 <td class="entry_description">
9248 State of the face detector
9249 unit
9250 </td>
9251
9252 <td class="entry_units">
9253 </td>
9254
9255 <td class="entry_range">
9256
Zhijun He69fc0ea2013-07-17 09:42:58 -07009257 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009258 </td>
9259
9260 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009261 Whether face detection is enabled,<wbr> and whether it
9262 should output just the basic fields or the full set of
9263 fields.<wbr> Value must be one of the
9264 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009265 </td>
9266
9267 <td class="entry_tags">
9268 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009269 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009270 </ul>
9271 </td>
9272
9273 </tr> <!-- end of entry -->
9274
9275
9276 <tr class="entry" id="controls_android.statistics.histogramMode">
9277 <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
9278 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009279 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009280
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009281 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009282
9283 <ul class="entry_type_enum">
9284 <li>
9285 <span class="entry_type_enum_name">OFF</span>
9286 </li>
9287 <li>
9288 <span class="entry_type_enum_name">ON</span>
9289 </li>
9290 </ul>
9291
9292 </td> <!-- entry_type -->
9293
9294 <td class="entry_description">
9295 Operating mode for histogram
9296 generation
9297 </td>
9298
9299 <td class="entry_units">
9300 </td>
9301
9302 <td class="entry_range">
9303 </td>
9304
9305 <td class="entry_notes">
9306 </td>
9307
9308 <td class="entry_tags">
9309 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009310 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009311 </ul>
9312 </td>
9313
9314 </tr> <!-- end of entry -->
9315
9316
9317 <tr class="entry" id="controls_android.statistics.sharpnessMapMode">
9318 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
9319 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009320 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009321
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009322 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009323
9324 <ul class="entry_type_enum">
9325 <li>
9326 <span class="entry_type_enum_name">OFF</span>
9327 </li>
9328 <li>
9329 <span class="entry_type_enum_name">ON</span>
9330 </li>
9331 </ul>
9332
9333 </td> <!-- entry_type -->
9334
9335 <td class="entry_description">
9336 Operating mode for sharpness map
9337 generation
9338 </td>
9339
9340 <td class="entry_units">
9341 </td>
9342
9343 <td class="entry_range">
9344 </td>
9345
9346 <td class="entry_notes">
9347 </td>
9348
9349 <td class="entry_tags">
9350 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009351 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009352 </ul>
9353 </td>
9354
9355 </tr> <!-- end of entry -->
9356
Zhijun He69fc0ea2013-07-17 09:42:58 -07009357
9358 <tr class="entry" id="controls_android.statistics.lensShadingMapMode">
9359 <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map<wbr>Mode</td>
9360 <td class="entry_type">
9361 <span class="entry_type_name entry_type_name_enum">byte</span>
9362
9363 <span class="entry_type_visibility"> [public]</span>
9364
9365 <ul class="entry_type_enum">
9366 <li>
9367 <span class="entry_type_enum_name">OFF</span>
9368 </li>
9369 <li>
9370 <span class="entry_type_enum_name">ON</span>
9371 </li>
9372 </ul>
9373
9374 </td> <!-- entry_type -->
9375
9376 <td class="entry_description">
9377 Whether the HAL needs to output the lens
9378 shading map in output result metadata
9379 </td>
9380
9381 <td class="entry_units">
9382 </td>
9383
9384 <td class="entry_range">
9385 </td>
9386
9387 <td class="entry_notes">
9388 When set to ON,<wbr>
9389 android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map must be provided in
9390 the output result metdata.<wbr>
9391 </td>
9392
9393 <td class="entry_tags">
9394 </td>
9395
9396 </tr> <!-- end of entry -->
9397
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009398
9399
9400 <!-- end of kind -->
9401 </tbody>
9402 <tr><td colspan="7" class="kind">static</td></tr>
9403
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009404 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009405 <tr>
9406 <th class="th_name">Property Name</th>
9407 <th class="th_type">Type</th>
9408 <th class="th_description">Description</th>
9409 <th class="th_units">Units</th>
9410 <th class="th_range">Range</th>
9411 <th class="th_notes">Notes</th>
9412 <th class="th_tags">Tags</th>
9413 </tr>
9414 </thead>
9415
9416 <tbody>
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429 <tr class="entry" id="static_android.statistics.info.availableFaceDetectModes">
9430 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes</td>
9431 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009432 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009433 <span class="entry_type_container">x</span>
9434
9435 <span class="entry_type_array">
9436 n
9437 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009438 <span class="entry_type_visibility"> [public]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -07009439 <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 -08009440
9441
9442 </td> <!-- entry_type -->
9443
9444 <td class="entry_description">
9445 Which face detection modes are available,<wbr>
9446 if any
9447 </td>
9448
9449 <td class="entry_units">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009450 List of enum:
9451 OFF
9452 SIMPLE
9453 FULL
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009454 </td>
9455
9456 <td class="entry_range">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009457 </td>
9458
9459 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009460 OFF means face detection is disabled,<wbr> it must
9461 be included in the list.<wbr>
9462<br>
9463<br> SIMPLE means the device supports the
9464 android.<wbr>statistics.<wbr>face<wbr>Rectangles and
9465 android.<wbr>statistics.<wbr>face<wbr>Scores outputs.<wbr>
9466<br>
9467<br> FULL means the device additionally supports the
9468 android.<wbr>statistics.<wbr>face<wbr>Ids and
9469 android.<wbr>statistics.<wbr>face<wbr>Landmarks outputs.<wbr>
9470
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009471 </td>
9472
9473 <td class="entry_tags">
9474 </td>
9475
9476 </tr> <!-- end of entry -->
9477
9478
9479 <tr class="entry" id="static_android.statistics.info.histogramBucketCount">
9480 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>histogram<wbr>Bucket<wbr>Count</td>
9481 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009482 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009483
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009484 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009485
9486
9487 </td> <!-- entry_type -->
9488
9489 <td class="entry_description">
9490 Number of histogram buckets
9491 supported
9492 </td>
9493
9494 <td class="entry_units">
9495 </td>
9496
9497 <td class="entry_range">
9498 >= 64
9499 </td>
9500
9501 <td class="entry_notes">
9502 </td>
9503
9504 <td class="entry_tags">
9505 </td>
9506
9507 </tr> <!-- end of entry -->
9508
9509
9510 <tr class="entry" id="static_android.statistics.info.maxFaceCount">
9511 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Face<wbr>Count</td>
9512 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009513 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009514
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009515 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009516
9517
9518 </td> <!-- entry_type -->
9519
9520 <td class="entry_description">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009521 Maximum number of simultaneously detectable
9522 faces
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009523 </td>
9524
9525 <td class="entry_units">
9526 </td>
9527
9528 <td class="entry_range">
9529 >= 4 if availableFaceDetectionModes lists
9530 modes besides OFF,<wbr> otherwise 0
9531 </td>
9532
9533 <td class="entry_notes">
9534 </td>
9535
9536 <td class="entry_tags">
9537 </td>
9538
9539 </tr> <!-- end of entry -->
9540
9541
9542 <tr class="entry" id="static_android.statistics.info.maxHistogramCount">
9543 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Histogram<wbr>Count</td>
9544 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009545 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009546
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009547 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009548
9549
9550 </td> <!-- entry_type -->
9551
9552 <td class="entry_description">
9553 Maximum value possible for a histogram
9554 bucket
9555 </td>
9556
9557 <td class="entry_units">
9558 </td>
9559
9560 <td class="entry_range">
9561 </td>
9562
9563 <td class="entry_notes">
9564 </td>
9565
9566 <td class="entry_tags">
9567 </td>
9568
9569 </tr> <!-- end of entry -->
9570
9571
9572 <tr class="entry" id="static_android.statistics.info.maxSharpnessMapValue">
9573 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Sharpness<wbr>Map<wbr>Value</td>
9574 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009575 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009576
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009577 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009578
9579
9580 </td> <!-- entry_type -->
9581
9582 <td class="entry_description">
9583 Maximum value possible for a sharpness map
9584 region.<wbr>
9585 </td>
9586
9587 <td class="entry_units">
9588 </td>
9589
9590 <td class="entry_range">
9591 </td>
9592
9593 <td class="entry_notes">
9594 </td>
9595
9596 <td class="entry_tags">
9597 </td>
9598
9599 </tr> <!-- end of entry -->
9600
9601
9602 <tr class="entry" id="static_android.statistics.info.sharpnessMapSize">
9603 <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>sharpness<wbr>Map<wbr>Size</td>
9604 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009605 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009606 <span class="entry_type_container">x</span>
9607
9608 <span class="entry_type_array">
9609 2
9610 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009611 <span class="entry_type_visibility"> [system as size]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009612 <div class="entry_type_notes">width x height</div>
9613
9614
9615 </td> <!-- entry_type -->
9616
9617 <td class="entry_description">
9618 Dimensions of the sharpness
9619 map
9620 </td>
9621
9622 <td class="entry_units">
9623 </td>
9624
9625 <td class="entry_range">
9626 Must be at least 32 x 32
9627 </td>
9628
9629 <td class="entry_notes">
9630 </td>
9631
9632 <td class="entry_tags">
9633 </td>
9634
9635 </tr> <!-- end of entry -->
9636
9637
9638
9639
9640
9641
9642 <!-- end of kind -->
9643 </tbody>
9644 <tr><td colspan="7" class="kind">dynamic</td></tr>
9645
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009646 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009647 <tr>
9648 <th class="th_name">Property Name</th>
9649 <th class="th_type">Type</th>
9650 <th class="th_description">Description</th>
9651 <th class="th_units">Units</th>
9652 <th class="th_range">Range</th>
9653 <th class="th_notes">Notes</th>
9654 <th class="th_tags">Tags</th>
9655 </tr>
9656 </thead>
9657
9658 <tbody>
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669 <tr class="entry" id="dynamic_android.statistics.faceDetectMode">
9670 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
9671 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009672 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009673
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009674 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009675
9676 <ul class="entry_type_enum">
9677 <li>
9678 <span class="entry_type_enum_name">OFF</span>
9679 </li>
9680 <li>
9681 <span class="entry_type_enum_name">SIMPLE</span>
9682 <span class="entry_type_enum_notes">Optional Return rectangle and confidence
9683 only</span>
9684 </li>
9685 <li>
9686 <span class="entry_type_enum_name">FULL</span>
9687 <span class="entry_type_enum_notes">Optional Return all face
9688 metadata</span>
9689 </li>
9690 </ul>
9691
9692 </td> <!-- entry_type -->
9693
9694 <td class="entry_description">
9695 State of the face detector
9696 unit
9697 </td>
9698
9699 <td class="entry_units">
9700 </td>
9701
9702 <td class="entry_range">
9703
Zhijun He69fc0ea2013-07-17 09:42:58 -07009704 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009705 </td>
9706
9707 <td class="entry_notes">
Zhijun He69fc0ea2013-07-17 09:42:58 -07009708 Whether face detection is enabled,<wbr> and whether it
9709 should output just the basic fields or the full set of
9710 fields.<wbr> Value must be one of the
9711 android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009712 </td>
9713
9714 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009715 <ul class="entry_tags">
9716 <li><a href="#tag_BC">BC</a></li>
9717 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009718 </td>
9719
9720 </tr> <!-- end of entry -->
9721
9722
9723 <tr class="entry" id="dynamic_android.statistics.faceIds">
9724 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Ids</td>
9725 <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">
9730 n
9731 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009732 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009733
9734
9735 </td> <!-- entry_type -->
9736
9737 <td class="entry_description">
9738 List of unique IDs for detected
9739 faces
9740 </td>
9741
9742 <td class="entry_units">
9743 </td>
9744
9745 <td class="entry_range">
9746 </td>
9747
9748 <td class="entry_notes">
9749 Only available if faceDetectMode == FULL
9750 </td>
9751
9752 <td class="entry_tags">
9753 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009754 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009755 </ul>
9756 </td>
9757
9758 </tr> <!-- end of entry -->
9759
9760
9761 <tr class="entry" id="dynamic_android.statistics.faceLandmarks">
9762 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Landmarks</td>
9763 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009764 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009765 <span class="entry_type_container">x</span>
9766
9767 <span class="entry_type_array">
9768 n x 6
9769 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009770 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009771 <div class="entry_type_notes">(leftEyeX,<wbr> leftEyeY,<wbr> rightEyeX,<wbr> rightEyeY,<wbr> mouthX,<wbr> mouthY)</div>
9772
9773
9774 </td> <!-- entry_type -->
9775
9776 <td class="entry_description">
9777 List of landmarks for detected
9778 faces
9779 </td>
9780
9781 <td class="entry_units">
9782 </td>
9783
9784 <td class="entry_range">
9785 </td>
9786
9787 <td class="entry_notes">
9788 Only available if faceDetectMode == FULL
9789 </td>
9790
9791 <td class="entry_tags">
9792 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009793 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009794 </ul>
9795 </td>
9796
9797 </tr> <!-- end of entry -->
9798
9799
9800 <tr class="entry" id="dynamic_android.statistics.faceRectangles">
9801 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Rectangles</td>
9802 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009803 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009804 <span class="entry_type_container">x</span>
9805
9806 <span class="entry_type_array">
9807 n x 4
9808 </span>
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009809 <span class="entry_type_visibility"> [public as rectangle]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009810 <div class="entry_type_notes">(xmin,<wbr> ymin,<wbr> xmax,<wbr> ymax).<wbr> (0,<wbr>0) is top-left of active pixel area</div>
9811
9812
9813 </td> <!-- entry_type -->
9814
9815 <td class="entry_description">
9816 List of the bounding rectangles for detected
9817 faces
9818 </td>
9819
9820 <td class="entry_units">
9821 </td>
9822
9823 <td class="entry_range">
9824 </td>
9825
9826 <td class="entry_notes">
9827 Only available if faceDetectMode != OFF
9828 </td>
9829
9830 <td class="entry_tags">
9831 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009832 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009833 </ul>
9834 </td>
9835
9836 </tr> <!-- end of entry -->
9837
9838
9839 <tr class="entry" id="dynamic_android.statistics.faceScores">
9840 <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Scores</td>
9841 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009842 <span class="entry_type_name">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009843 <span class="entry_type_container">x</span>
9844
9845 <span class="entry_type_array">
9846 n
9847 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009848 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009849
9850
9851 </td> <!-- entry_type -->
9852
9853 <td class="entry_description">
9854 List of the face confidence scores for
9855 detected faces
9856 </td>
9857
9858 <td class="entry_units">
9859 </td>
9860
9861 <td class="entry_range">
9862 0-100
9863 </td>
9864
9865 <td class="entry_notes">
Igor Murashkin656aa5a2013-08-13 14:23:39 -07009866 Only available if faceDetectMode != OFF.<wbr> The value should be
9867 meaningful (for example,<wbr> setting 100 at all times is illegal).<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009868 </td>
9869
9870 <td class="entry_tags">
9871 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009872 <li><a href="#tag_BC">BC</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009873 </ul>
9874 </td>
9875
9876 </tr> <!-- end of entry -->
9877
9878
9879 <tr class="entry" id="dynamic_android.statistics.histogram">
9880 <td class="entry_name">android.<wbr>statistics.<wbr>histogram</td>
9881 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009882 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009883 <span class="entry_type_container">x</span>
9884
9885 <span class="entry_type_array">
9886 n x 3
9887 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009888 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009889 <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>
9890
9891
9892 </td> <!-- entry_type -->
9893
9894 <td class="entry_description">
9895 A 3-channel histogram based on the raw
9896 sensor data
9897 </td>
9898
9899 <td class="entry_units">
9900 </td>
9901
9902 <td class="entry_range">
9903 </td>
9904
9905 <td class="entry_notes">
9906 The k'th bucket (0-based) covers the input range
9907 (with w = android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level) of [ k * w/<wbr>N,<wbr>
9908 (k + 1) * w /<wbr> N ).<wbr> If only a monochrome sharpness map is
9909 supported,<wbr> all channels should have the same data
9910 </td>
9911
9912 <td class="entry_tags">
9913 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009914 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009915 </ul>
9916 </td>
9917
9918 </tr> <!-- end of entry -->
9919
9920
9921 <tr class="entry" id="dynamic_android.statistics.histogramMode">
9922 <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
9923 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009924 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009925
Igor Murashkinb8dc8812013-07-17 16:29:34 -07009926 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009927
9928 <ul class="entry_type_enum">
9929 <li>
9930 <span class="entry_type_enum_name">OFF</span>
9931 </li>
9932 <li>
9933 <span class="entry_type_enum_name">ON</span>
9934 </li>
9935 </ul>
9936
9937 </td> <!-- entry_type -->
9938
9939 <td class="entry_description">
9940 Operating mode for histogram
9941 generation
9942 </td>
9943
9944 <td class="entry_units">
9945 </td>
9946
9947 <td class="entry_range">
9948 </td>
9949
9950 <td class="entry_notes">
9951 </td>
9952
9953 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009954 <ul class="entry_tags">
9955 <li><a href="#tag_V1">V1</a></li>
9956 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009957 </td>
9958
9959 </tr> <!-- end of entry -->
9960
9961
9962 <tr class="entry" id="dynamic_android.statistics.sharpnessMap">
9963 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map</td>
9964 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -08009965 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009966 <span class="entry_type_container">x</span>
9967
9968 <span class="entry_type_array">
9969 n x m x 3
9970 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -07009971 <span class="entry_type_visibility"> [system]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009972 <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>
9973
9974
9975 </td> <!-- entry_type -->
9976
9977 <td class="entry_description">
9978 A 3-channel sharpness map,<wbr> based on the raw
9979 sensor data
9980 </td>
9981
9982 <td class="entry_units">
9983 </td>
9984
9985 <td class="entry_range">
9986 </td>
9987
9988 <td class="entry_notes">
9989 If only a monochrome sharpness map is supported,<wbr>
9990 all channels should have the same data
9991 </td>
9992
9993 <td class="entry_tags">
9994 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -08009995 <li><a href="#tag_V1">V1</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -08009996 </ul>
9997 </td>
9998
9999 </tr> <!-- end of entry -->
10000
10001
10002 <tr class="entry" id="dynamic_android.statistics.sharpnessMapMode">
10003 <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
10004 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010005 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010006
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010007 <span class="entry_type_visibility"> [system as boolean]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010008
10009 <ul class="entry_type_enum">
10010 <li>
10011 <span class="entry_type_enum_name">OFF</span>
10012 </li>
10013 <li>
10014 <span class="entry_type_enum_name">ON</span>
10015 </li>
10016 </ul>
10017
10018 </td> <!-- entry_type -->
10019
10020 <td class="entry_description">
10021 Operating mode for sharpness map
10022 generation
10023 </td>
10024
10025 <td class="entry_units">
10026 </td>
10027
10028 <td class="entry_range">
10029 </td>
10030
10031 <td class="entry_notes">
10032 </td>
10033
10034 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010035 <ul class="entry_tags">
10036 <li><a href="#tag_V1">V1</a></li>
10037 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010038 </td>
10039
10040 </tr> <!-- end of entry -->
10041
Zhijun He69fc0ea2013-07-17 09:42:58 -070010042
10043 <tr class="entry" id="dynamic_android.statistics.lensShadingMap">
10044 <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map</td>
10045 <td class="entry_type">
10046 <span class="entry_type_name">float</span>
10047 <span class="entry_type_container">x</span>
10048
10049 <span class="entry_type_array">
10050 4 x n x m
10051 </span>
10052 <span class="entry_type_visibility"> [public]</span>
10053 <div class="entry_type_notes">2D array of float gain factors per channel to correct lens shading</div>
10054
10055
10056 </td> <!-- entry_type -->
10057
10058 <td class="entry_description">
10059 A low-resolution map of lens shading,<wbr> per
10060 color channel
10061 </td>
10062
10063 <td class="entry_units">
10064 </td>
10065
10066 <td class="entry_range">
10067 Each gain factor is >= 1
10068 </td>
10069
10070 <td class="entry_notes">
10071 Assume bilinear interpolation of map.<wbr> The least
10072 shaded section of the image should have a gain factor
10073 of 1; all other sections should have gains above 1.<wbr>
10074 the map should be on the order of 30-40 rows,<wbr> and
10075 must be smaller than 64x64.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010076<br>
10077<br> When android.<wbr>color<wbr>Correction.<wbr>mode = TRANSFORM_<wbr>MATRIX,<wbr> the map
10078 must take into account the colorCorrection settings.<wbr>
10079
Zhijun He69fc0ea2013-07-17 09:42:58 -070010080 </td>
10081
10082 <td class="entry_tags">
10083 </td>
10084
10085 </tr> <!-- end of entry -->
10086
10087
10088 <tr class="entry" id="dynamic_android.statistics.predictedColorGains">
10089 <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Gains</td>
10090 <td class="entry_type">
10091 <span class="entry_type_name">float</span>
10092 <span class="entry_type_container">x</span>
10093
10094 <span class="entry_type_array">
10095 4
10096 </span>
10097 <span class="entry_type_visibility"> [public]</span>
10098 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
10099
10100
10101 </td> <!-- entry_type -->
10102
10103 <td class="entry_description">
10104 The best-fit color channel gains calculated
10105 by the HAL's statistics units for the current output frame
10106
10107 </td>
10108
10109 <td class="entry_units">
10110 </td>
10111
10112 <td class="entry_range">
10113 </td>
10114
10115 <td class="entry_notes">
10116
10117 This may be different than the gains used for this frame,<wbr>
10118 since statistics processing on data from a new frame
10119 typically completes after the transform has already been
10120 applied to that frame.<wbr>
10121<br>
10122<br> The 4 channel gains are defined in Bayer domain,<wbr>
10123 see android.<wbr>color<wbr>Correction.<wbr>gains for details.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010124<br>
10125<br> This value should always be calculated by the AWB block,<wbr>
10126 regardless of the android.<wbr>control.<wbr>* current values.<wbr>
10127
Zhijun He69fc0ea2013-07-17 09:42:58 -070010128 </td>
10129
10130 <td class="entry_tags">
10131 </td>
10132
10133 </tr> <!-- end of entry -->
10134
10135
10136 <tr class="entry" id="dynamic_android.statistics.predictedColorTransform">
10137 <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Transform</td>
10138 <td class="entry_type">
10139 <span class="entry_type_name">rational</span>
10140 <span class="entry_type_container">x</span>
10141
10142 <span class="entry_type_array">
10143 3 x 3
10144 </span>
10145 <span class="entry_type_visibility"> [public]</span>
10146 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
10147
10148
10149 </td> <!-- entry_type -->
10150
10151 <td class="entry_description">
10152 The best-fit color transform matrix estimate
10153 calculated by the HAL's statistics units for the current
10154 output frame
10155 </td>
10156
10157 <td class="entry_units">
10158 </td>
10159
10160 <td class="entry_range">
10161 </td>
10162
10163 <td class="entry_notes">
10164 The HAL must provide the estimate from its
10165 statistics unit on the white balance transforms to use
10166 for the next frame.<wbr> These are the values the HAL believes
10167 are the best fit for the current output frame.<wbr> This may
10168 be different than the transform used for this frame,<wbr> since
10169 statistics processing on data from a new frame typically
10170 completes after the transform has already been applied to
10171 that frame.<wbr>
10172<br>
10173<br> These estimates must be provided for all frames,<wbr> even if
10174 capture settings and color transforms are set by the application.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070010175<br>
10176<br> This value should always be calculated by the AWB block,<wbr>
10177 regardless of the android.<wbr>control.<wbr>* current values.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070010178
10179 </td>
10180
10181 <td class="entry_tags">
10182 </td>
10183
10184 </tr> <!-- end of entry -->
10185
10186
10187 <tr class="entry" id="dynamic_android.statistics.sceneFlicker">
10188 <td class="entry_name">android.<wbr>statistics.<wbr>scene<wbr>Flicker</td>
10189 <td class="entry_type">
10190 <span class="entry_type_name entry_type_name_enum">byte</span>
10191
10192 <span class="entry_type_visibility"> [public]</span>
10193
10194 <ul class="entry_type_enum">
10195 <li>
10196 <span class="entry_type_enum_name">NONE</span>
10197 </li>
10198 <li>
10199 <span class="entry_type_enum_name">50HZ</span>
10200 </li>
10201 <li>
10202 <span class="entry_type_enum_name">60HZ</span>
10203 </li>
10204 </ul>
10205
10206 </td> <!-- entry_type -->
10207
10208 <td class="entry_description">
10209 The HAL estimated scene illumination lighting
10210 frequency
10211 </td>
10212
10213 <td class="entry_units">
10214 </td>
10215
10216 <td class="entry_range">
10217 </td>
10218
10219 <td class="entry_notes">
10220 Report NONE if there doesn't appear to be flickering
10221 illumination
10222 </td>
10223
10224 <td class="entry_tags">
10225 </td>
10226
10227 </tr> <!-- end of entry -->
10228
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010229
10230
10231 <!-- end of kind -->
10232 </tbody>
10233
10234 <!-- end of section -->
10235 <tr><td colspan="7" id="section_tonemap" class="section">tonemap</td></tr>
10236
10237
10238 <tr><td colspan="7" class="kind">controls</td></tr>
10239
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010240 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010241 <tr>
10242 <th class="th_name">Property Name</th>
10243 <th class="th_type">Type</th>
10244 <th class="th_description">Description</th>
10245 <th class="th_units">Units</th>
10246 <th class="th_range">Range</th>
10247 <th class="th_notes">Notes</th>
10248 <th class="th_tags">Tags</th>
10249 </tr>
10250 </thead>
10251
10252 <tbody>
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263 <tr class="entry" id="controls_android.tonemap.curveBlue">
10264 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
10265 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010266 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010267 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010268
Zhijun He704d1282013-08-19 15:26:33 -070010269 <span class="entry_type_array">
10270 n x 2
10271 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010272 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010273 <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 -080010274
10275
10276 </td> <!-- entry_type -->
10277
10278 <td class="entry_description">
10279 Table mapping blue input values to output
10280 values
10281 </td>
10282
10283 <td class="entry_units">
10284 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10285 </td>
10286
10287 <td class="entry_range">
10288 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10289 </td>
10290
10291 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010292 Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
10293 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10294<br>
10295<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010296 </td>
10297
10298 <td class="entry_tags">
10299 </td>
10300
10301 </tr> <!-- end of entry -->
10302
10303
10304 <tr class="entry" id="controls_android.tonemap.curveGreen">
10305 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
10306 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010307 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010308 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010309
Zhijun He704d1282013-08-19 15:26:33 -070010310 <span class="entry_type_array">
10311 n x 2
10312 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010313 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010314 <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 -080010315
10316
10317 </td> <!-- entry_type -->
10318
10319 <td class="entry_description">
10320 Table mapping green input values to output
10321 values
10322 </td>
10323
10324 <td class="entry_units">
10325 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10326 </td>
10327
10328 <td class="entry_range">
10329 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10330 </td>
10331
10332 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010333 Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
10334 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10335<br>
10336<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010337 </td>
10338
10339 <td class="entry_tags">
10340 </td>
10341
10342 </tr> <!-- end of entry -->
10343
10344
10345 <tr class="entry" id="controls_android.tonemap.curveRed">
10346 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
10347 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010348 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010349 <span class="entry_type_container">x</span>
10350
10351 <span class="entry_type_array">
10352 n x 2
10353 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010354 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010355 <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 -080010356
10357
10358 </td> <!-- entry_type -->
10359
10360 <td class="entry_description">
10361 Table mapping red input values to output
10362 values
10363 </td>
10364
10365 <td class="entry_units">
10366 </td>
10367
10368 <td class="entry_range">
Zhijun He704d1282013-08-19 15:26:33 -070010369 0-1 on input and output coordinates.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010370 </td>
10371
10372 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010373 Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
10374 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10375<br>
10376<br> Since the input and output ranges may vary depending on
10377 the camera pipeline,<wbr> the input and output pixel values
10378 are represented by normalized floating-point values
10379 between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
10380<br>
10381<br> The curve should be linearly interpolated between the
10382 defined points.<wbr> The points will be listed in increasing
10383 order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010384 0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
10385 for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
10386 0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
10387 </td>
10388
10389 <td class="entry_tags">
10390 <ul class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010391 <li><a href="#tag_DNG">DNG</a></li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010392 </ul>
10393 </td>
10394
10395 </tr> <!-- end of entry -->
10396
10397
10398 <tr class="entry" id="controls_android.tonemap.mode">
10399 <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
10400 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010401 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010402
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010403 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010404
10405 <ul class="entry_type_enum">
10406 <li>
10407 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
10408 <span class="entry_type_enum_notes">Use the tone mapping curve specified in
10409 android.<wbr>tonemap.<wbr>curve</span>
10410 </li>
10411 <li>
10412 <span class="entry_type_enum_name">FAST</span>
10413 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
10414 bayer output</span>
10415 </li>
10416 <li>
10417 <span class="entry_type_enum_name">HIGH_QUALITY</span>
10418 <span class="entry_type_enum_notes">Frame rate may be reduced by high
10419 quality</span>
10420 </li>
10421 </ul>
10422
10423 </td> <!-- entry_type -->
10424
10425 <td class="entry_description">
10426 </td>
10427
10428 <td class="entry_units">
10429 </td>
10430
10431 <td class="entry_range">
10432 </td>
10433
10434 <td class="entry_notes">
10435 </td>
10436
10437 <td class="entry_tags">
10438 </td>
10439
10440 </tr> <!-- end of entry -->
10441
10442
10443
10444 <!-- end of kind -->
10445 </tbody>
10446 <tr><td colspan="7" class="kind">static</td></tr>
10447
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010448 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010449 <tr>
10450 <th class="th_name">Property Name</th>
10451 <th class="th_type">Type</th>
10452 <th class="th_description">Description</th>
10453 <th class="th_units">Units</th>
10454 <th class="th_range">Range</th>
10455 <th class="th_notes">Notes</th>
10456 <th class="th_tags">Tags</th>
10457 </tr>
10458 </thead>
10459
10460 <tbody>
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471 <tr class="entry" id="static_android.tonemap.maxCurvePoints">
10472 <td class="entry_name">android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points</td>
10473 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010474 <span class="entry_type_name">int32</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010475
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010476 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010477
10478
10479 </td> <!-- entry_type -->
10480
10481 <td class="entry_description">
10482 Maximum number of supported points in the
10483 tonemap curve
10484 </td>
10485
10486 <td class="entry_units">
10487 </td>
10488
10489 <td class="entry_range">
10490 >= 128
10491 </td>
10492
10493 <td class="entry_notes">
10494 </td>
10495
10496 <td class="entry_tags">
10497 </td>
10498
10499 </tr> <!-- end of entry -->
10500
10501
10502
10503 <!-- end of kind -->
10504 </tbody>
10505 <tr><td colspan="7" class="kind">dynamic</td></tr>
10506
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010507 <thead class="entries_header">
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010508 <tr>
10509 <th class="th_name">Property Name</th>
10510 <th class="th_type">Type</th>
10511 <th class="th_description">Description</th>
10512 <th class="th_units">Units</th>
10513 <th class="th_range">Range</th>
10514 <th class="th_notes">Notes</th>
10515 <th class="th_tags">Tags</th>
10516 </tr>
10517 </thead>
10518
10519 <tbody>
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530 <tr class="entry" id="dynamic_android.tonemap.curveBlue">
10531 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
10532 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010533 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010534 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010535
Zhijun He704d1282013-08-19 15:26:33 -070010536 <span class="entry_type_array">
10537 n x 2
10538 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010539 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010540 <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 -080010541
10542
10543 </td> <!-- entry_type -->
10544
10545 <td class="entry_description">
10546 Table mapping blue input values to output
10547 values
10548 </td>
10549
10550 <td class="entry_units">
10551 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10552 </td>
10553
10554 <td class="entry_range">
10555 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10556 </td>
10557
10558 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010559 Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
10560 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10561<br>
10562<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010563 </td>
10564
10565 <td class="entry_tags">
10566 </td>
10567
10568 </tr> <!-- end of entry -->
10569
10570
10571 <tr class="entry" id="dynamic_android.tonemap.curveGreen">
10572 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
10573 <td class="entry_type">
Eino-Ville Talvala76548fe2013-01-11 13:57:19 -080010574 <span class="entry_type_name">float</span>
Zhijun He704d1282013-08-19 15:26:33 -070010575 <span class="entry_type_container">x</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010576
Zhijun He704d1282013-08-19 15:26:33 -070010577 <span class="entry_type_array">
10578 n x 2
10579 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010580 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010581 <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 -080010582
10583
10584 </td> <!-- entry_type -->
10585
10586 <td class="entry_description">
10587 Table mapping green input values to output
10588 values
10589 </td>
10590
10591 <td class="entry_units">
10592 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10593 </td>
10594
10595 <td class="entry_range">
10596 same as android.<wbr>tonemap.<wbr>curve<wbr>Red
10597 </td>
10598
10599 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010600 Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
10601 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10602<br>
10603<br> See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010604 </td>
10605
10606 <td class="entry_tags">
10607 </td>
10608
10609 </tr> <!-- end of entry -->
10610
10611
10612 <tr class="entry" id="dynamic_android.tonemap.curveRed">
10613 <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
10614 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010615 <span class="entry_type_name">float</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010616 <span class="entry_type_container">x</span>
10617
10618 <span class="entry_type_array">
10619 n x 2
10620 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010621 <span class="entry_type_visibility"> [public]</span>
Zhijun He704d1282013-08-19 15:26:33 -070010622 <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 -080010623
10624
10625 </td> <!-- entry_type -->
10626
10627 <td class="entry_description">
10628 Table mapping red input values to output
10629 values
10630 </td>
10631
10632 <td class="entry_units">
10633 </td>
10634
10635 <td class="entry_range">
Zhijun He704d1282013-08-19 15:26:33 -070010636 0-1 on input and output coordinates.<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010637 </td>
10638
10639 <td class="entry_notes">
Zhijun He704d1282013-08-19 15:26:33 -070010640 Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
10641 channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
10642<br>
10643<br> Since the input and output ranges may vary depending on
10644 the camera pipeline,<wbr> the input and output pixel values
10645 are represented by normalized floating-point values
10646 between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
10647<br>
10648<br> The curve should be linearly interpolated between the
10649 defined points.<wbr> The points will be listed in increasing
10650 order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010651 0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
10652 for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
10653 0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
10654 </td>
10655
10656 <td class="entry_tags">
Igor Murashkinbaacf9a2012-12-05 14:49:11 -080010657 <ul class="entry_tags">
10658 <li><a href="#tag_DNG">DNG</a></li>
10659 </ul>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010660 </td>
10661
10662 </tr> <!-- end of entry -->
10663
10664
10665 <tr class="entry" id="dynamic_android.tonemap.mode">
10666 <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
10667 <td class="entry_type">
Igor Murashkinb556bc42012-12-04 16:07:21 -080010668 <span class="entry_type_name entry_type_name_enum">byte</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010669
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010670 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080010671
10672 <ul class="entry_type_enum">
10673 <li>
10674 <span class="entry_type_enum_name">CONTRAST_CURVE</span>
10675 <span class="entry_type_enum_notes">Use the tone mapping curve specified in
10676 android.<wbr>tonemap.<wbr>curve</span>
10677 </li>
10678 <li>
10679 <span class="entry_type_enum_name">FAST</span>
10680 <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
10681 bayer output</span>
10682 </li>
10683 <li>
10684 <span class="entry_type_enum_name">HIGH_QUALITY</span>
10685 <span class="entry_type_enum_notes">Frame rate may be reduced by high
10686 quality</span>
10687 </li>
10688 </ul>
10689
10690 </td> <!-- entry_type -->
10691
10692 <td class="entry_description">
10693 </td>
10694
10695 <td class="entry_units">
10696 </td>
10697
10698 <td class="entry_range">
10699 </td>
10700
10701 <td class="entry_notes">
10702 </td>
10703
10704 <td class="entry_tags">
10705 </td>
10706
10707 </tr> <!-- end of entry -->
10708
10709
10710
10711 <!-- end of kind -->
10712 </tbody>
10713
10714 <!-- end of section -->
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010715 <tr><td colspan="7" id="section_led" class="section">led</td></tr>
10716
10717
10718 <tr><td colspan="7" class="kind">controls</td></tr>
10719
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010720 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010721 <tr>
10722 <th class="th_name">Property Name</th>
10723 <th class="th_type">Type</th>
10724 <th class="th_description">Description</th>
10725 <th class="th_units">Units</th>
10726 <th class="th_range">Range</th>
10727 <th class="th_notes">Notes</th>
10728 <th class="th_tags">Tags</th>
10729 </tr>
10730 </thead>
10731
10732 <tbody>
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743 <tr class="entry" id="controls_android.led.transmit">
10744 <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
10745 <td class="entry_type">
10746 <span class="entry_type_name entry_type_name_enum">byte</span>
10747
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010748 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010749
10750 <ul class="entry_type_enum">
10751 <li>
10752 <span class="entry_type_enum_name">OFF</span>
10753 </li>
10754 <li>
10755 <span class="entry_type_enum_name">ON</span>
10756 </li>
10757 </ul>
10758
10759 </td> <!-- entry_type -->
10760
10761 <td class="entry_description">
10762 This LED is nominally used to indicate to the user
10763 that the camera is powered on and may be streaming images back to the
10764 Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
10765 disable this when video is processed locally and not transmitted to
10766 any untrusted applications.<wbr>
10767<br>
10768<br> In particular,<wbr> the LED *must* always be on when the data could be
10769 transmitted off the device.<wbr> The LED *should* always be on whenever
10770 data is stored locally on the device.<wbr>
10771<br>
10772<br> The LED *may* be off if a trusted application is using the data that
10773 doesn't violate the above rules.<wbr>
10774
10775 </td>
10776
10777 <td class="entry_units">
10778 </td>
10779
10780 <td class="entry_range">
10781 </td>
10782
10783 <td class="entry_notes">
10784 </td>
10785
10786 <td class="entry_tags">
10787 </td>
10788
10789 </tr> <!-- end of entry -->
10790
10791
10792
10793 <!-- end of kind -->
10794 </tbody>
10795 <tr><td colspan="7" class="kind">dynamic</td></tr>
10796
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010797 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010798 <tr>
10799 <th class="th_name">Property Name</th>
10800 <th class="th_type">Type</th>
10801 <th class="th_description">Description</th>
10802 <th class="th_units">Units</th>
10803 <th class="th_range">Range</th>
10804 <th class="th_notes">Notes</th>
10805 <th class="th_tags">Tags</th>
10806 </tr>
10807 </thead>
10808
10809 <tbody>
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820 <tr class="entry" id="dynamic_android.led.transmit">
10821 <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
10822 <td class="entry_type">
10823 <span class="entry_type_name entry_type_name_enum">byte</span>
10824
Igor Murashkinb8dc8812013-07-17 16:29:34 -070010825 <span class="entry_type_visibility"> [hidden as boolean]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010826
10827 <ul class="entry_type_enum">
10828 <li>
10829 <span class="entry_type_enum_name">OFF</span>
10830 </li>
10831 <li>
10832 <span class="entry_type_enum_name">ON</span>
10833 </li>
10834 </ul>
10835
10836 </td> <!-- entry_type -->
10837
10838 <td class="entry_description">
10839 This LED is nominally used to indicate to the user
10840 that the camera is powered on and may be streaming images back to the
10841 Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
10842 disable this when video is processed locally and not transmitted to
10843 any untrusted applications.<wbr>
10844<br>
10845<br> In particular,<wbr> the LED *must* always be on when the data could be
10846 transmitted off the device.<wbr> The LED *should* always be on whenever
10847 data is stored locally on the device.<wbr>
10848<br>
10849<br> The LED *may* be off if a trusted application is using the data that
10850 doesn't violate the above rules.<wbr>
10851
10852 </td>
10853
10854 <td class="entry_units">
10855 </td>
10856
10857 <td class="entry_range">
10858 </td>
10859
10860 <td class="entry_notes">
10861 </td>
10862
10863 <td class="entry_tags">
10864 </td>
10865
10866 </tr> <!-- end of entry -->
10867
10868
10869
10870 <!-- end of kind -->
10871 </tbody>
10872 <tr><td colspan="7" class="kind">static</td></tr>
10873
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010874 <thead class="entries_header">
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010875 <tr>
10876 <th class="th_name">Property Name</th>
10877 <th class="th_type">Type</th>
10878 <th class="th_description">Description</th>
10879 <th class="th_units">Units</th>
10880 <th class="th_range">Range</th>
10881 <th class="th_notes">Notes</th>
10882 <th class="th_tags">Tags</th>
10883 </tr>
10884 </thead>
10885
10886 <tbody>
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897 <tr class="entry" id="static_android.led.availableLeds">
10898 <td class="entry_name">android.<wbr>led.<wbr>available<wbr>Leds</td>
10899 <td class="entry_type">
10900 <span class="entry_type_name entry_type_name_enum">byte</span>
10901 <span class="entry_type_container">x</span>
10902
10903 <span class="entry_type_array">
10904 n
10905 </span>
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010906 <span class="entry_type_visibility"> [hidden]</span>
Igor Murashkinc469f7d2013-04-23 14:31:02 -070010907
10908 <ul class="entry_type_enum">
10909 <li>
10910 <span class="entry_type_enum_name">TRANSMIT</span>
10911 <span class="entry_type_enum_notes">android.<wbr>led.<wbr>transmit control is used</span>
10912 </li>
10913 </ul>
10914
10915 </td> <!-- entry_type -->
10916
10917 <td class="entry_description">
10918 A list of camera LEDs that are available on this system.<wbr>
10919
10920 </td>
10921
10922 <td class="entry_units">
10923 </td>
10924
10925 <td class="entry_range">
10926 </td>
10927
10928 <td class="entry_notes">
10929 </td>
10930
10931 <td class="entry_tags">
10932 </td>
10933
10934 </tr> <!-- end of entry -->
10935
10936
10937
10938 <!-- end of kind -->
10939 </tbody>
10940
10941 <!-- end of section -->
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010942 <tr><td colspan="7" id="section_info" class="section">info</td></tr>
10943
10944
10945 <tr><td colspan="7" class="kind">static</td></tr>
10946
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010947 <thead class="entries_header">
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010948 <tr>
10949 <th class="th_name">Property Name</th>
10950 <th class="th_type">Type</th>
10951 <th class="th_description">Description</th>
10952 <th class="th_units">Units</th>
10953 <th class="th_range">Range</th>
10954 <th class="th_notes">Notes</th>
10955 <th class="th_tags">Tags</th>
10956 </tr>
10957 </thead>
10958
10959 <tbody>
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970 <tr class="entry" id="static_android.info.supportedHardwareLevel">
10971 <td class="entry_name">android.<wbr>info.<wbr>supported<wbr>Hardware<wbr>Level</td>
10972 <td class="entry_type">
10973 <span class="entry_type_name entry_type_name_enum">byte</span>
10974
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010975 <span class="entry_type_visibility"> [public]</span>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010976
10977 <ul class="entry_type_enum">
10978 <li>
10979 <span class="entry_type_enum_name">LIMITED</span>
10980 </li>
10981 <li>
10982 <span class="entry_type_enum_name">FULL</span>
10983 </li>
10984 </ul>
10985
10986 </td> <!-- entry_type -->
10987
10988 <td class="entry_description">
10989
Eino-Ville Talvalafcef4c22013-07-16 16:18:44 -070010990 The camera 3 HAL device can implement one of two possible
10991 operational modes; limited and full.<wbr> Full support is
10992 expected from new higher-end devices.<wbr> Limited mode has
10993 hardware requirements roughly in line with those for a
10994 camera HAL device v1 implementation,<wbr> and is expected from
10995 older or inexpensive devices.<wbr> Full is a strict superset of
10996 limited,<wbr> and they share the same essential operational flow.<wbr>
Igor Murashkin38b8cae2013-05-23 16:38:59 -070010997<br>
10998<br> For full details refer to "S3.<wbr> Operational Modes" in camera3.<wbr>h
10999
11000 </td>
11001
11002 <td class="entry_units">
11003 </td>
11004
11005 <td class="entry_range">
11006 Optional.<wbr> Default value is LIMITED.<wbr>
11007 </td>
11008
11009 <td class="entry_notes">
11010 </td>
11011
11012 <td class="entry_tags">
11013 </td>
11014
11015 </tr> <!-- end of entry -->
11016
11017
11018
11019 <!-- end of kind -->
11020 </tbody>
11021
11022 <!-- end of section -->
Zhijun He69fc0ea2013-07-17 09:42:58 -070011023 <tr><td colspan="7" id="section_blackLevel" class="section">blackLevel</td></tr>
11024
11025
11026 <tr><td colspan="7" class="kind">controls</td></tr>
11027
11028 <thead class="entries_header">
11029 <tr>
11030 <th class="th_name">Property Name</th>
11031 <th class="th_type">Type</th>
11032 <th class="th_description">Description</th>
11033 <th class="th_units">Units</th>
11034 <th class="th_range">Range</th>
11035 <th class="th_notes">Notes</th>
11036 <th class="th_tags">Tags</th>
11037 </tr>
11038 </thead>
11039
11040 <tbody>
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051 <tr class="entry" id="controls_android.blackLevel.lock">
11052 <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
11053 <td class="entry_type">
11054 <span class="entry_type_name entry_type_name_enum">byte</span>
11055
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011056 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011057
11058 <ul class="entry_type_enum">
11059 <li>
11060 <span class="entry_type_enum_name">OFF</span>
11061 </li>
11062 <li>
11063 <span class="entry_type_enum_name">ON</span>
11064 </li>
11065 </ul>
11066
11067 </td> <!-- entry_type -->
11068
11069 <td class="entry_description">
11070 Whether black-level compensation is locked
11071 to its current values,<wbr> or is free to vary
11072 </td>
11073
11074 <td class="entry_units">
11075 </td>
11076
11077 <td class="entry_range">
11078 </td>
11079
11080 <td class="entry_notes">
11081 When set to ON,<wbr> the values used for black-level
11082 compensation must not change until the lock is set to
11083 OFF
11084<br>
11085<br> Since changes to certain capture parameters (such as
11086 exposure time) may require resetting of black level
11087 compensation,<wbr> the HAL must report whether setting the
11088 black level lock was successful in the output result
11089 metadata.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011090<br>
11091<br> The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
11092 If for some reason black level locking is no longer legal (for example,<wbr>
11093 the analog gain has changed,<wbr> which forces black levels to be
11094 recalculated),<wbr> then the HAL is free to override this request (and it
11095 must report 'OFF' when this does happen) until the next time locking
11096 is legal again.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011097 </td>
11098
11099 <td class="entry_tags">
11100 <ul class="entry_tags">
11101 <li><a href="#tag_HAL2">HAL2</a></li>
11102 </ul>
11103 </td>
11104
11105 </tr> <!-- end of entry -->
11106
11107
11108
11109 <!-- end of kind -->
11110 </tbody>
11111 <tr><td colspan="7" class="kind">dynamic</td></tr>
11112
11113 <thead class="entries_header">
11114 <tr>
11115 <th class="th_name">Property Name</th>
11116 <th class="th_type">Type</th>
11117 <th class="th_description">Description</th>
11118 <th class="th_units">Units</th>
11119 <th class="th_range">Range</th>
11120 <th class="th_notes">Notes</th>
11121 <th class="th_tags">Tags</th>
11122 </tr>
11123 </thead>
11124
11125 <tbody>
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136 <tr class="entry" id="dynamic_android.blackLevel.lock">
11137 <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
11138 <td class="entry_type">
11139 <span class="entry_type_name entry_type_name_enum">byte</span>
11140
Igor Murashkinb8dc8812013-07-17 16:29:34 -070011141 <span class="entry_type_visibility"> [public as boolean]</span>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011142
11143 <ul class="entry_type_enum">
11144 <li>
11145 <span class="entry_type_enum_name">OFF</span>
11146 </li>
11147 <li>
11148 <span class="entry_type_enum_name">ON</span>
11149 </li>
11150 </ul>
11151
11152 </td> <!-- entry_type -->
11153
11154 <td class="entry_description">
11155 Whether black-level compensation is locked
11156 to its current values,<wbr> or is free to vary
11157 </td>
11158
11159 <td class="entry_units">
11160 </td>
11161
11162 <td class="entry_range">
11163 </td>
11164
11165 <td class="entry_notes">
11166 When set to ON,<wbr> the values used for black-level
11167 compensation must not change until the lock is set to
11168 OFF
11169<br>
11170<br> Since changes to certain capture parameters (such as
11171 exposure time) may require resetting of black level
11172 compensation,<wbr> the HAL must report whether setting the
11173 black level lock was successful in the output result
11174 metadata.<wbr>
Igor Murashkin656aa5a2013-08-13 14:23:39 -070011175<br>
11176<br> The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
11177 If for some reason black level locking is no longer legal (for example,<wbr>
11178 the analog gain has changed,<wbr> which forces black levels to be
11179 recalculated),<wbr> then the HAL is free to override this request (and it
11180 must report 'OFF' when this does happen) until the next time locking
11181 is legal again.<wbr>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011182 </td>
11183
11184 <td class="entry_tags">
11185 <ul class="entry_tags">
11186 <li><a href="#tag_HAL2">HAL2</a></li>
11187 </ul>
11188 </td>
11189
11190 </tr> <!-- end of entry -->
11191
11192
11193
11194 <!-- end of kind -->
11195 </tbody>
11196
11197 <!-- end of section -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011198<!-- </namespace> -->
11199 </table>
11200
11201 <div class="tags" id="tag_index">
11202 <h2>Tags</h2>
11203 <ul>
11204 <li id="tag_AWB">AWB -
11205 Needed for auto white balance
11206
11207 <ul class="tags_entries">
11208 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11209 </ul>
11210 </li> <!-- tag_AWB -->
11211 <li id="tag_BC">BC -
11212 Needed for backwards compatibility with old Java API
11213
11214 <ul class="tags_entries">
11215 <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a> (controls)</li>
11216 <li><a href="#controls_android.control.aeLock">android.control.aeLock</a> (controls)</li>
11217 <li><a href="#controls_android.control.aeMode">android.control.aeMode</a> (controls)</li>
11218 <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a> (controls)</li>
11219 <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011220 <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011221 <li><a href="#controls_android.control.afMode">android.control.afMode</a> (controls)</li>
11222 <li><a href="#controls_android.control.afRegions">android.control.afRegions</a> (controls)</li>
Eino-Ville Talvala3b4383a2013-03-18 09:42:48 -070011223 <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a> (controls)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011224 <li><a href="#controls_android.control.awbLock">android.control.awbLock</a> (controls)</li>
11225 <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
11226 <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a> (controls)</li>
11227 <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a> (controls)</li>
11228 <li><a href="#controls_android.control.effectMode">android.control.effectMode</a> (controls)</li>
11229 <li><a href="#controls_android.control.mode">android.control.mode</a> (controls)</li>
11230 <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a> (controls)</li>
11231 <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a> (controls)</li>
11232 <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a> (static)</li>
11233 <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a> (static)</li>
11234 <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a> (static)</li>
11235 <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a> (static)</li>
11236 <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a> (static)</li>
11237 <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a> (static)</li>
11238 <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a> (static)</li>
11239 <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a> (static)</li>
11240 <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a> (static)</li>
11241 <li><a href="#controls_android.flash.mode">android.flash.mode</a> (controls)</li>
11242 <li><a href="#static_android.flash.info.available">android.flash.info.available</a> (static)</li>
11243 <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a> (controls)</li>
11244 <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a> (controls)</li>
11245 <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a> (controls)</li>
11246 <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a> (controls)</li>
11247 <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a> (controls)</li>
11248 <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a> (controls)</li>
11249 <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a> (controls)</li>
11250 <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a> (static)</li>
11251 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11252 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11253 <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a> (static)</li>
11254 <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a> (dynamic)</li>
11255 <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a> (static)</li>
11256 <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a> (controls)</li>
11257 <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a> (static)</li>
11258 <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a> (static)</li>
11259 <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a> (static)</li>
Igor Murashkinf11a4df2013-05-07 10:00:46 -070011260 <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011261 <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a> (static)</li>
11262 <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a> (static)</li>
11263 <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011264 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011265 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011266 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11267 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11268 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11269 <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a> (static)</li>
11270 <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a> (dynamic)</li>
11271 <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a> (controls)</li>
11272 <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a> (dynamic)</li>
11273 <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a> (dynamic)</li>
11274 <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a> (dynamic)</li>
11275 <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a> (dynamic)</li>
11276 <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a> (dynamic)</li>
11277 <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a> (dynamic)</li>
11278 </ul>
11279 </li> <!-- tag_BC -->
11280 <li id="tag_V1">V1 -
11281 New features for first camera 2 release (API1)
11282
11283 <ul class="tags_entries">
11284 <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a> (controls)</li>
11285 <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a> (controls)</li>
11286 <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a> (controls)</li>
11287 <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a> (static)</li>
11288 <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a> (controls)</li>
11289 <li><a href="#controls_android.lens.aperture">android.lens.aperture</a> (controls)</li>
11290 <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a> (controls)</li>
11291 <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a> (controls)</li>
11292 <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
11293 <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (controls)</li>
11294 <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a> (static)</li>
11295 <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a> (static)</li>
11296 <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
11297 <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a> (static)</li>
11298 <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a> (static)</li>
11299 <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a> (static)</li>
11300 <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a> (static)</li>
11301 <li><a href="#static_android.lens.position">android.lens.position</a> (static)</li>
11302 <li><a href="#dynamic_android.lens.state">android.lens.state</a> (dynamic)</li>
11303 <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a> (controls)</li>
11304 <li><a href="#controls_android.request.id">android.request.id</a> (controls)</li>
11305 <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a> (controls)</li>
11306 <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
11307 <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011308 <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011309 <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a> (static)</li>
11310 <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
11311 <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
11312 <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
11313 <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
11314 <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a> (static)</li>
11315 <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a> (controls)</li>
11316 <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a> (controls)</li>
11317 <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a> (dynamic)</li>
11318 <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a> (dynamic)</li>
11319 <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a> (dynamic)</li>
11320 <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a> (dynamic)</li>
11321 <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a> (dynamic)</li>
11322 <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (dynamic)</li>
11323 </ul>
11324 </li> <!-- tag_V1 -->
11325 <li id="tag_ADV">ADV - None
11326 <ul class="tags_entries">
11327 <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a> (static)</li>
11328 <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a> (static)</li>
11329 <li><a href="#controls_android.geometric.strength">android.geometric.strength</a> (controls)</li>
11330 <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a> (static)</li>
11331 <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a> (static)</li>
11332 <li><a href="#controls_android.shading.strength">android.shading.strength</a> (controls)</li>
11333 </ul>
11334 </li> <!-- tag_ADV -->
11335 <li id="tag_DNG">DNG -
11336 Needed for DNG file support
11337
11338 <ul class="tags_entries">
11339 <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a> (static)</li>
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011340 <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a> (static)</li>
11341 <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a> (static)</li>
11342 <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
11343 <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a> (static)</li>
11344 <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a> (static)</li>
11345 <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a> (static)</li>
11346 <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a> (static)</li>
11347 <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a> (static)</li>
11348 <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a> (static)</li>
11349 <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a> (static)</li>
11350 <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a> (static)</li>
11351 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11352 <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a> (controls)</li>
11353 </ul>
11354 </li> <!-- tag_DNG -->
11355 <li id="tag_EXIF">EXIF - None
11356 <ul class="tags_entries">
11357 <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
11358 </ul>
11359 </li> <!-- tag_EXIF -->
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011360 <li id="tag_HAL2">HAL2 -
11361 Tag only used by camera device HAL 2.x
11362
11363 <ul class="tags_entries">
11364 <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a> (controls)</li>
11365 <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a> (controls)</li>
11366 <li><a href="#controls_android.request.type">android.request.type</a> (controls)</li>
Zhijun He69fc0ea2013-07-17 09:42:58 -070011367 <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a> (controls)</li>
Eino-Ville Talvalaf384f0a2013-07-12 17:02:27 -070011368 </ul>
11369 </li> <!-- tag_HAL2 -->
Igor Murashkin08b8aad2012-11-29 15:23:03 -080011370 </ul>
11371 </div>
11372
11373 [ <a href="#">top</a> ]
11374
11375</body>
11376</html>