Home | History | Annotate | Download | only in docs
      1 <!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" />
     20   <title>Android Camera HAL3.0 Properties</title>
     21   <style type="text/css">
     22      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;  }
     36 
     37     /* table column sizes */
     38     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 }
     40     .th_name { width: 20% }
     41     .th_units { width: 10% }
     42     .th_tags { width: 5% }
     43     .th_notes { width: 25% }
     44     .th_type { width: 20% }
     45     .th_description { width: 20% }
     46     .th_range { width: 10% }
     47     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 */
     53     .entry_name { color: #333333; padding-left:1.0em; font-size:1.1em; font-family: monospace; }
     54 
     55     /* Entry type flair */
     56     .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}
     59     .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 
     66     /* Entry visibility flair */
     67 
     68     /* 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 
     92 <body>
     93   <h1>Android Camera HAL3.0 Properties</h1>
     94 
     95 
     96   <h2>Table of Contents</h2>
     97   <ul class="toc">
     98     <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>
    107             <li><a href="#controls_android.colorCorrection.gains">android.colorCorrection.gains</a></li>
    108           </ul>
    109         </li>
    110         <li>
    111           <span class="toc_kind_header">dynamic</span>
    112           <ul class="toc_section">
    113             <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>
    115           </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">
    223 
    224             <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>
    226 
    227             <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>
    341             <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             <li><a href="#static_android.quirks.usePartialResult">android.quirks.usePartialResult</a></li>
    390           </ul>
    391         </li>
    392         <li>
    393           <span class="toc_kind_header">dynamic</span>
    394           <ul class="toc_section">
    395             <li><a href="#dynamic_android.quirks.partialResult">android.quirks.partialResult</a></li>
    396           </ul>
    397         </li>
    398       </ul> <!-- toc_section -->
    399     </li>
    400     <li>
    401       <span class="toc_section_header"><a href="#section_request">request</a></span>
    402       <ul class="toc_section">
    403         <li>
    404           <span class="toc_kind_header">controls</span>
    405           <ul class="toc_section">
    406             <li><a href="#controls_android.request.frameCount">android.request.frameCount</a></li>
    407             <li><a href="#controls_android.request.id">android.request.id</a></li>
    408             <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a></li>
    409             <li><a href="#controls_android.request.metadataMode">android.request.metadataMode</a></li>
    410             <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a></li>
    411             <li><a href="#controls_android.request.type">android.request.type</a></li>
    412           </ul>
    413         </li>
    414         <li>
    415           <span class="toc_kind_header">static</span>
    416           <ul class="toc_section">
    417             <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a></li>
    418             <li><a href="#static_android.request.maxNumReprocessStreams">android.request.maxNumReprocessStreams</a></li>
    419           </ul>
    420         </li>
    421         <li>
    422           <span class="toc_kind_header">dynamic</span>
    423           <ul class="toc_section">
    424             <li><a href="#dynamic_android.request.frameCount">android.request.frameCount</a></li>
    425             <li><a href="#dynamic_android.request.id">android.request.id</a></li>
    426             <li><a href="#dynamic_android.request.metadataMode">android.request.metadataMode</a></li>
    427             <li><a href="#dynamic_android.request.outputStreams">android.request.outputStreams</a></li>
    428           </ul>
    429         </li>
    430       </ul> <!-- toc_section -->
    431     </li>
    432     <li>
    433       <span class="toc_section_header"><a href="#section_scaler">scaler</a></span>
    434       <ul class="toc_section">
    435         <li>
    436           <span class="toc_kind_header">controls</span>
    437           <ul class="toc_section">
    438             <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
    439           </ul>
    440         </li>
    441         <li>
    442           <span class="toc_kind_header">static</span>
    443           <ul class="toc_section">
    444             <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a></li>
    445             <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a></li>
    446             <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a></li>
    447             <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a></li>
    448             <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a></li>
    449             <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a></li>
    450             <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a></li>
    451             <li><a href="#static_android.scaler.availableRawSizes">android.scaler.availableRawSizes</a></li>
    452           </ul>
    453         </li>
    454         <li>
    455           <span class="toc_kind_header">dynamic</span>
    456           <ul class="toc_section">
    457             <li><a href="#dynamic_android.scaler.cropRegion">android.scaler.cropRegion</a></li>
    458           </ul>
    459         </li>
    460       </ul> <!-- toc_section -->
    461     </li>
    462     <li>
    463       <span class="toc_section_header"><a href="#section_sensor">sensor</a></span>
    464       <ul class="toc_section">
    465         <li>
    466           <span class="toc_kind_header">controls</span>
    467           <ul class="toc_section">
    468             <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
    469             <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
    470             <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
    471           </ul>
    472         </li>
    473         <li>
    474           <span class="toc_kind_header">static</span>
    475           <ul class="toc_section">
    476 
    477             <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a></li>
    478             <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a></li>
    479             <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a></li>
    480             <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a></li>
    481             <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a></li>
    482             <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a></li>
    483             <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a></li>
    484             <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a></li>
    485 
    486             <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a></li>
    487             <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a></li>
    488             <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a></li>
    489             <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a></li>
    490             <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a></li>
    491             <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a></li>
    492             <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a></li>
    493             <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a></li>
    494             <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a></li>
    495             <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a></li>
    496             <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a></li>
    497             <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a></li>
    498             <li><a href="#static_android.sensor.referenceIlluminant2">android.sensor.referenceIlluminant2</a></li>
    499           </ul>
    500         </li>
    501         <li>
    502           <span class="toc_kind_header">dynamic</span>
    503           <ul class="toc_section">
    504             <li><a href="#dynamic_android.sensor.exposureTime">android.sensor.exposureTime</a></li>
    505             <li><a href="#dynamic_android.sensor.frameDuration">android.sensor.frameDuration</a></li>
    506             <li><a href="#dynamic_android.sensor.sensitivity">android.sensor.sensitivity</a></li>
    507             <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a></li>
    508             <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a></li>
    509           </ul>
    510         </li>
    511       </ul> <!-- toc_section -->
    512     </li>
    513     <li>
    514       <span class="toc_section_header"><a href="#section_shading">shading</a></span>
    515       <ul class="toc_section">
    516         <li>
    517           <span class="toc_kind_header">controls</span>
    518           <ul class="toc_section">
    519             <li><a href="#controls_android.shading.mode">android.shading.mode</a></li>
    520             <li><a href="#controls_android.shading.strength">android.shading.strength</a></li>
    521           </ul>
    522         </li>
    523         <li>
    524           <span class="toc_kind_header">dynamic</span>
    525           <ul class="toc_section">
    526             <li><a href="#dynamic_android.shading.mode">android.shading.mode</a></li>
    527           </ul>
    528         </li>
    529       </ul> <!-- toc_section -->
    530     </li>
    531     <li>
    532       <span class="toc_section_header"><a href="#section_statistics">statistics</a></span>
    533       <ul class="toc_section">
    534         <li>
    535           <span class="toc_kind_header">controls</span>
    536           <ul class="toc_section">
    537             <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
    538             <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
    539             <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
    540             <li><a href="#controls_android.statistics.lensShadingMapMode">android.statistics.lensShadingMapMode</a></li>
    541           </ul>
    542         </li>
    543         <li>
    544           <span class="toc_kind_header">static</span>
    545           <ul class="toc_section">
    546 
    547             <li><a href="#static_android.statistics.info.availableFaceDetectModes">android.statistics.info.availableFaceDetectModes</a></li>
    548             <li><a href="#static_android.statistics.info.histogramBucketCount">android.statistics.info.histogramBucketCount</a></li>
    549             <li><a href="#static_android.statistics.info.maxFaceCount">android.statistics.info.maxFaceCount</a></li>
    550             <li><a href="#static_android.statistics.info.maxHistogramCount">android.statistics.info.maxHistogramCount</a></li>
    551             <li><a href="#static_android.statistics.info.maxSharpnessMapValue">android.statistics.info.maxSharpnessMapValue</a></li>
    552             <li><a href="#static_android.statistics.info.sharpnessMapSize">android.statistics.info.sharpnessMapSize</a></li>
    553 
    554           </ul>
    555         </li>
    556         <li>
    557           <span class="toc_kind_header">dynamic</span>
    558           <ul class="toc_section">
    559             <li><a href="#dynamic_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a></li>
    560             <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a></li>
    561             <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a></li>
    562             <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a></li>
    563             <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a></li>
    564             <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a></li>
    565             <li><a href="#dynamic_android.statistics.histogramMode">android.statistics.histogramMode</a></li>
    566             <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a></li>
    567             <li><a href="#dynamic_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a></li>
    568             <li><a href="#dynamic_android.statistics.lensShadingMap">android.statistics.lensShadingMap</a></li>
    569             <li><a href="#dynamic_android.statistics.predictedColorGains">android.statistics.predictedColorGains</a></li>
    570             <li><a href="#dynamic_android.statistics.predictedColorTransform">android.statistics.predictedColorTransform</a></li>
    571             <li><a href="#dynamic_android.statistics.sceneFlicker">android.statistics.sceneFlicker</a></li>
    572           </ul>
    573         </li>
    574       </ul> <!-- toc_section -->
    575     </li>
    576     <li>
    577       <span class="toc_section_header"><a href="#section_tonemap">tonemap</a></span>
    578       <ul class="toc_section">
    579         <li>
    580           <span class="toc_kind_header">controls</span>
    581           <ul class="toc_section">
    582             <li><a href="#controls_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
    583             <li><a href="#controls_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
    584             <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
    585             <li><a href="#controls_android.tonemap.mode">android.tonemap.mode</a></li>
    586           </ul>
    587         </li>
    588         <li>
    589           <span class="toc_kind_header">static</span>
    590           <ul class="toc_section">
    591             <li><a href="#static_android.tonemap.maxCurvePoints">android.tonemap.maxCurvePoints</a></li>
    592           </ul>
    593         </li>
    594         <li>
    595           <span class="toc_kind_header">dynamic</span>
    596           <ul class="toc_section">
    597             <li><a href="#dynamic_android.tonemap.curveBlue">android.tonemap.curveBlue</a></li>
    598             <li><a href="#dynamic_android.tonemap.curveGreen">android.tonemap.curveGreen</a></li>
    599             <li><a href="#dynamic_android.tonemap.curveRed">android.tonemap.curveRed</a></li>
    600             <li><a href="#dynamic_android.tonemap.mode">android.tonemap.mode</a></li>
    601           </ul>
    602         </li>
    603       </ul> <!-- toc_section -->
    604     </li>
    605     <li>
    606       <span class="toc_section_header"><a href="#section_led">led</a></span>
    607       <ul class="toc_section">
    608         <li>
    609           <span class="toc_kind_header">controls</span>
    610           <ul class="toc_section">
    611             <li><a href="#controls_android.led.transmit">android.led.transmit</a></li>
    612           </ul>
    613         </li>
    614         <li>
    615           <span class="toc_kind_header">dynamic</span>
    616           <ul class="toc_section">
    617             <li><a href="#dynamic_android.led.transmit">android.led.transmit</a></li>
    618           </ul>
    619         </li>
    620         <li>
    621           <span class="toc_kind_header">static</span>
    622           <ul class="toc_section">
    623             <li><a href="#static_android.led.availableLeds">android.led.availableLeds</a></li>
    624           </ul>
    625         </li>
    626       </ul> <!-- toc_section -->
    627     </li>
    628     <li>
    629       <span class="toc_section_header"><a href="#section_info">info</a></span>
    630       <ul class="toc_section">
    631         <li>
    632           <span class="toc_kind_header">static</span>
    633           <ul class="toc_section">
    634             <li><a href="#static_android.info.supportedHardwareLevel">android.info.supportedHardwareLevel</a></li>
    635           </ul>
    636         </li>
    637       </ul> <!-- toc_section -->
    638     </li>
    639     <li>
    640       <span class="toc_section_header"><a href="#section_blackLevel">blackLevel</a></span>
    641       <ul class="toc_section">
    642         <li>
    643           <span class="toc_kind_header">controls</span>
    644           <ul class="toc_section">
    645             <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a></li>
    646           </ul>
    647         </li>
    648         <li>
    649           <span class="toc_kind_header">dynamic</span>
    650           <ul class="toc_section">
    651             <li><a href="#dynamic_android.blackLevel.lock">android.blackLevel.lock</a></li>
    652           </ul>
    653         </li>
    654       </ul> <!-- toc_section -->
    655     </li>
    656   </ul>
    657 
    658 
    659   <h1>Properties</h1>
    660   <table class="properties">
    661 
    662     <thead class="thead_dummy">
    663       <tr>
    664         <th class="th_name">Property Name</th>
    665         <th class="th_type">Type</th>
    666         <th class="th_description">Description</th>
    667         <th class="th_units">Units</th>
    668         <th class="th_range">Range</th>
    669         <th class="th_notes">Notes</th>
    670         <th class="th_tags">Tags</th>
    671       </tr>
    672     </thead> <!-- so that the first occurrence of thead is not
    673                          above the first occurrence of tr -->
    674 <!-- <namespace name="android"> -->
    675   <tr><td colspan="7" id="section_colorCorrection" class="section">colorCorrection</td></tr>
    676 
    677 
    678       <tr><td colspan="7" class="kind">controls</td></tr>
    679 
    680       <thead class="entries_header">
    681         <tr>
    682           <th class="th_name">Property Name</th>
    683           <th class="th_type">Type</th>
    684           <th class="th_description">Description</th>
    685           <th class="th_units">Units</th>
    686           <th class="th_range">Range</th>
    687           <th class="th_notes">Notes</th>
    688           <th class="th_tags">Tags</th>
    689         </tr>
    690       </thead>
    691 
    692       <tbody>
    693 
    694         
    695 
    696         
    697 
    698         
    699 
    700         
    701 
    702                 
    703           <tr class="entry" id="controls_android.colorCorrection.mode">
    704             <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>mode</td>
    705             <td class="entry_type">
    706                 <span class="entry_type_name entry_type_name_enum">byte</span>
    707 
    708               <span class="entry_type_visibility"> [public]</span>
    709 
    710                 <ul class="entry_type_enum">
    711                   <li>
    712                     <span class="entry_type_enum_name">TRANSFORM_MATRIX</span>
    713                     <span class="entry_type_enum_notes">Use the android.<wbr>color<wbr>Correction.<wbr>transform matrix
    714               and android.<wbr>color<wbr>Correction.<wbr>gains to do color conversion</span>
    715                   </li>
    716                   <li>
    717                     <span class="entry_type_enum_name">FAST</span>
    718                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
    719               bayer output</span>
    720                   </li>
    721                   <li>
    722                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
    723                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
    724               quality</span>
    725                   </li>
    726                 </ul>
    727 
    728             </td> <!-- entry_type -->
    729 
    730             <td class="entry_description">
    731             </td>
    732 
    733             <td class="entry_units">
    734             </td>
    735 
    736             <td class="entry_range">
    737             </td>
    738 
    739             <td class="entry_notes">
    740               When android.<wbr>control.<wbr>awb<wbr>Mode is not OFF,<wbr> TRANSFORM_<wbr>MATRIX
    741           should be ignored.<wbr>
    742             </td>
    743 
    744             <td class="entry_tags">
    745             </td>
    746 
    747           </tr> <!-- end of entry -->
    748         
    749                 
    750           <tr class="entry" id="controls_android.colorCorrection.transform">
    751             <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
    752             <td class="entry_type">
    753                 <span class="entry_type_name">rational</span>
    754                 <span class="entry_type_container">x</span>
    755 
    756                 <span class="entry_type_array">
    757                   3 x 3
    758                 </span>
    759               <span class="entry_type_visibility"> [public]</span>
    760                 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
    761 
    762 
    763             </td> <!-- entry_type -->
    764 
    765             <td class="entry_description">
    766               A color transform matrix to use to transform
    767           from sensor RGB color space to output linear sRGB color space
    768           
    769             </td>
    770 
    771             <td class="entry_units">
    772             </td>
    773 
    774             <td class="entry_range">
    775               Output values are expected to be in the range
    776           (0,<wbr>1)
    777             </td>
    778 
    779             <td class="entry_notes">
    780               This matrix is either set by HAL when the request
    781           android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
    782           directly by the application in the request when the
    783           android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
    784 <br>
    785 <br>          In the latter case,<wbr> the HAL may round the matrix to account
    786           for precision issues; the final rounded matrix should be
    787           reported back in this matrix result metadata.<wbr>
    788             </td>
    789 
    790             <td class="entry_tags">
    791             </td>
    792 
    793           </tr> <!-- end of entry -->
    794         
    795                 
    796           <tr class="entry" id="controls_android.colorCorrection.gains">
    797             <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
    798             <td class="entry_type">
    799                 <span class="entry_type_name">float</span>
    800                 <span class="entry_type_container">x</span>
    801 
    802                 <span class="entry_type_array">
    803                   4
    804                 </span>
    805               <span class="entry_type_visibility"> [public]</span>
    806                 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
    807 
    808 
    809             </td> <!-- entry_type -->
    810 
    811             <td class="entry_description">
    812               Gains applying to Bayer color channels for
    813           white-balance
    814             </td>
    815 
    816             <td class="entry_units">
    817             </td>
    818 
    819             <td class="entry_range">
    820             </td>
    821 
    822             <td class="entry_notes">
    823               The 4-channel white-balance gains are defined in
    824           the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
    825           for green pixels on even rows of the output,<wbr> and G_<wbr>odd
    826           is the gain for greenpixels on the odd rows.<wbr> if a HAL
    827           does not support a separate gain for even/<wbr>odd green channels,<wbr>
    828           it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
    829           G_<wbr>even in the output result metadata.<wbr>
    830 <br>
    831 <br>          This array is either set by HAL when the request
    832           android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
    833           directly by the application in the request when the
    834           android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
    835 <br>
    836 <br>          The ouput should be the gains actually applied by the HAL to
    837           the current frame.<wbr>
    838             </td>
    839 
    840             <td class="entry_tags">
    841             </td>
    842 
    843           </tr> <!-- end of entry -->
    844         
    845         
    846 
    847       <!-- end of kind -->
    848       </tbody>
    849       <tr><td colspan="7" class="kind">dynamic</td></tr>
    850 
    851       <thead class="entries_header">
    852         <tr>
    853           <th class="th_name">Property Name</th>
    854           <th class="th_type">Type</th>
    855           <th class="th_description">Description</th>
    856           <th class="th_units">Units</th>
    857           <th class="th_range">Range</th>
    858           <th class="th_notes">Notes</th>
    859           <th class="th_tags">Tags</th>
    860         </tr>
    861       </thead>
    862 
    863       <tbody>
    864 
    865         
    866 
    867         
    868 
    869         
    870 
    871         
    872 
    873                 
    874           <tr class="entry" id="dynamic_android.colorCorrection.transform">
    875             <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>transform</td>
    876             <td class="entry_type">
    877                 <span class="entry_type_name">rational</span>
    878                 <span class="entry_type_container">x</span>
    879 
    880                 <span class="entry_type_array">
    881                   3 x 3
    882                 </span>
    883               <span class="entry_type_visibility"> [public]</span>
    884                 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
    885 
    886 
    887             </td> <!-- entry_type -->
    888 
    889             <td class="entry_description">
    890               A color transform matrix to use to transform
    891           from sensor RGB color space to output linear sRGB color space
    892           
    893             </td>
    894 
    895             <td class="entry_units">
    896             </td>
    897 
    898             <td class="entry_range">
    899               Output values are expected to be in the range
    900           (0,<wbr>1)
    901             </td>
    902 
    903             <td class="entry_notes">
    904               This matrix is either set by HAL when the request
    905           android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
    906           directly by the application in the request when the
    907           android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
    908 <br>
    909 <br>          In the latter case,<wbr> the HAL may round the matrix to account
    910           for precision issues; the final rounded matrix should be
    911           reported back in this matrix result metadata.<wbr>
    912             </td>
    913 
    914             <td class="entry_tags">
    915             </td>
    916 
    917           </tr> <!-- end of entry -->
    918         
    919                 
    920           <tr class="entry" id="dynamic_android.colorCorrection.gains">
    921             <td class="entry_name">android.<wbr>color<wbr>Correction.<wbr>gains</td>
    922             <td class="entry_type">
    923                 <span class="entry_type_name">float</span>
    924                 <span class="entry_type_container">x</span>
    925 
    926                 <span class="entry_type_array">
    927                   4
    928                 </span>
    929               <span class="entry_type_visibility"> [public]</span>
    930                 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
    931 
    932 
    933             </td> <!-- entry_type -->
    934 
    935             <td class="entry_description">
    936               Gains applying to Bayer color channels for
    937           white-balance
    938             </td>
    939 
    940             <td class="entry_units">
    941             </td>
    942 
    943             <td class="entry_range">
    944             </td>
    945 
    946             <td class="entry_notes">
    947               The 4-channel white-balance gains are defined in
    948           the order of [R G_<wbr>even G_<wbr>odd B],<wbr> where G_<wbr>even is the gain
    949           for green pixels on even rows of the output,<wbr> and G_<wbr>odd
    950           is the gain for greenpixels on the odd rows.<wbr> if a HAL
    951           does not support a separate gain for even/<wbr>odd green channels,<wbr>
    952           it should use the G_<wbr>even value,<wbr>and write G_<wbr>odd equal to
    953           G_<wbr>even in the output result metadata.<wbr>
    954 <br>
    955 <br>          This array is either set by HAL when the request
    956           android.<wbr>color<wbr>Correction.<wbr>mode is not TRANSFORM_<wbr>MATRIX,<wbr> or
    957           directly by the application in the request when the
    958           android.<wbr>color<wbr>Correction.<wbr>mode is TRANSFORM_<wbr>MATRIX.<wbr>
    959 <br>
    960 <br>          The ouput should be the gains actually applied by the HAL to
    961           the current frame.<wbr>
    962             </td>
    963 
    964             <td class="entry_tags">
    965             </td>
    966 
    967           </tr> <!-- end of entry -->
    968         
    969         
    970 
    971       <!-- end of kind -->
    972       </tbody>
    973 
    974   <!-- end of section -->
    975   <tr><td colspan="7" id="section_control" class="section">control</td></tr>
    976 
    977 
    978       <tr><td colspan="7" class="kind">controls</td></tr>
    979 
    980       <thead class="entries_header">
    981         <tr>
    982           <th class="th_name">Property Name</th>
    983           <th class="th_type">Type</th>
    984           <th class="th_description">Description</th>
    985           <th class="th_units">Units</th>
    986           <th class="th_range">Range</th>
    987           <th class="th_notes">Notes</th>
    988           <th class="th_tags">Tags</th>
    989         </tr>
    990       </thead>
    991 
    992       <tbody>
    993 
    994         
    995 
    996         
    997 
    998         
    999 
   1000         
   1001 
   1002                 
   1003           <tr class="entry" id="controls_android.control.aeAntibandingMode">
   1004             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Antibanding<wbr>Mode</td>
   1005             <td class="entry_type">
   1006                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1007 
   1008               <span class="entry_type_visibility"> [public]</span>
   1009 
   1010                 <ul class="entry_type_enum">
   1011                   <li>
   1012                     <span class="entry_type_enum_name">OFF</span>
   1013                   </li>
   1014                   <li>
   1015                     <span class="entry_type_enum_name">50HZ</span>
   1016                   </li>
   1017                   <li>
   1018                     <span class="entry_type_enum_name">60HZ</span>
   1019                   </li>
   1020                   <li>
   1021                     <span class="entry_type_enum_name">AUTO</span>
   1022                   </li>
   1023                 </ul>
   1024 
   1025             </td> <!-- entry_type -->
   1026 
   1027             <td class="entry_description">
   1028               Enum for controlling
   1029           antibanding
   1030             </td>
   1031 
   1032             <td class="entry_units">
   1033             </td>
   1034 
   1035             <td class="entry_range">
   1036               
   1037           android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes
   1038             </td>
   1039 
   1040             <td class="entry_notes">
   1041             </td>
   1042 
   1043             <td class="entry_tags">
   1044             </td>
   1045 
   1046           </tr> <!-- end of entry -->
   1047         
   1048                 
   1049           <tr class="entry" id="controls_android.control.aeExposureCompensation">
   1050             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Exposure<wbr>Compensation</td>
   1051             <td class="entry_type">
   1052                 <span class="entry_type_name">int32</span>
   1053 
   1054               <span class="entry_type_visibility"> [public]</span>
   1055 
   1056 
   1057             </td> <!-- entry_type -->
   1058 
   1059             <td class="entry_description">
   1060               Adjustment to AE target image
   1061           brightness
   1062             </td>
   1063 
   1064             <td class="entry_units">
   1065               count of positive/<wbr>negative EV steps
   1066             </td>
   1067 
   1068             <td class="entry_range">
   1069             </td>
   1070 
   1071             <td class="entry_notes">
   1072               For example,<wbr> if EV step is 0.<wbr>333,<wbr> '6' will mean an
   1073           exposure compensation of +2 EV; -3 will mean an exposure
   1074           compensation of -1
   1075             </td>
   1076 
   1077             <td class="entry_tags">
   1078               <ul class="entry_tags">
   1079                   <li><a href="#tag_BC">BC</a></li>
   1080               </ul>
   1081             </td>
   1082 
   1083           </tr> <!-- end of entry -->
   1084         
   1085                 
   1086           <tr class="entry" id="controls_android.control.aeLock">
   1087             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Lock</td>
   1088             <td class="entry_type">
   1089                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1090 
   1091               <span class="entry_type_visibility"> [public as boolean]</span>
   1092 
   1093                 <ul class="entry_type_enum">
   1094                   <li>
   1095                     <span class="entry_type_enum_name">OFF</span>
   1096                     <span class="entry_type_enum_notes">Autoexposure lock is disabled; the AE algorithm
   1097             is free to update its parameters.<wbr></span>
   1098                   </li>
   1099                   <li>
   1100                     <span class="entry_type_enum_name">ON</span>
   1101                     <span class="entry_type_enum_notes">Autoexposure lock is enabled; the AE algorithm
   1102             must not update the exposure and sensitivity parameters
   1103             while the lock is active</span>
   1104                   </li>
   1105                 </ul>
   1106 
   1107             </td> <!-- entry_type -->
   1108 
   1109             <td class="entry_description">
   1110               Whether AE is currently locked to its latest
   1111           calculated values
   1112             </td>
   1113 
   1114             <td class="entry_units">
   1115             </td>
   1116 
   1117             <td class="entry_range">
   1118             </td>
   1119 
   1120             <td class="entry_notes">
   1121               Note that even when AE is locked,<wbr> the flash may be
   1122           fired if the AE mode is ON_<wbr>AUTO_<wbr>FLASH /<wbr> ON_<wbr>ALWAYS_<wbr>FLASH /<wbr>
   1123           ON_<wbr>AUTO_<wbr>FLASH_<wbr>REDEYE.<wbr>
   1124             </td>
   1125 
   1126             <td class="entry_tags">
   1127               <ul class="entry_tags">
   1128                   <li><a href="#tag_BC">BC</a></li>
   1129               </ul>
   1130             </td>
   1131 
   1132           </tr> <!-- end of entry -->
   1133         
   1134                 
   1135           <tr class="entry" id="controls_android.control.aeMode">
   1136             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Mode</td>
   1137             <td class="entry_type">
   1138                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1139 
   1140               <span class="entry_type_visibility"> [public]</span>
   1141 
   1142                 <ul class="entry_type_enum">
   1143                   <li>
   1144                     <span class="entry_type_enum_name">OFF</span>
   1145                     <span class="entry_type_enum_notes">Autoexposure is disabled; sensor.<wbr>exposureTime,<wbr>
   1146               sensor.<wbr>sensitivity and sensor.<wbr>frameDuration are used</span>
   1147                   </li>
   1148                   <li>
   1149                     <span class="entry_type_enum_name">ON</span>
   1150                     <span class="entry_type_enum_notes">Autoexposure is active,<wbr> no flash
   1151               control</span>
   1152                   </li>
   1153                   <li>
   1154                     <span class="entry_type_enum_name">ON_AUTO_FLASH</span>
   1155                     <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
   1156             flash control; flash may be fired when precapture
   1157             trigger is activated,<wbr> and for captures for which
   1158             captureIntent = STILL_<wbr>CAPTURE</span>
   1159                   </li>
   1160                   <li>
   1161                     <span class="entry_type_enum_name">ON_ALWAYS_FLASH</span>
   1162                     <span class="entry_type_enum_notes">if flash exists Autoexposure is active,<wbr> auto
   1163             flash control for precapture trigger and always flash
   1164             when captureIntent = STILL_<wbr>CAPTURE</span>
   1165                   </li>
   1166                   <li>
   1167                     <span class="entry_type_enum_name">ON_AUTO_FLASH_REDEYE</span>
   1168                     <span class="entry_type_enum_notes">optional Automatic red eye reduction with flash.<wbr>
   1169             If deemed necessary,<wbr> red eye reduction sequence should
   1170             fire when precapture trigger is activated,<wbr> and final
   1171             flash should fire when captureIntent =
   1172             STILL_<wbr>CAPTURE</span>
   1173                   </li>
   1174                 </ul>
   1175 
   1176             </td> <!-- entry_type -->
   1177 
   1178             <td class="entry_description">
   1179               Whether AE is currently updating the sensor
   1180           exposure and sensitivity fields
   1181             </td>
   1182 
   1183             <td class="entry_units">
   1184             </td>
   1185 
   1186             <td class="entry_range">
   1187               android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes
   1188             </td>
   1189 
   1190             <td class="entry_notes">
   1191               Only effective if android.<wbr>control.<wbr>mode =
   1192           AUTO
   1193             </td>
   1194 
   1195             <td class="entry_tags">
   1196               <ul class="entry_tags">
   1197                   <li><a href="#tag_BC">BC</a></li>
   1198               </ul>
   1199             </td>
   1200 
   1201           </tr> <!-- end of entry -->
   1202         
   1203                 
   1204           <tr class="entry" id="controls_android.control.aeRegions">
   1205             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
   1206             <td class="entry_type">
   1207                 <span class="entry_type_name">int32</span>
   1208                 <span class="entry_type_container">x</span>
   1209 
   1210                 <span class="entry_type_array">
   1211                   5 x area_count
   1212                 </span>
   1213               <span class="entry_type_visibility"> [public]</span>
   1214 
   1215 
   1216             </td> <!-- entry_type -->
   1217 
   1218             <td class="entry_description">
   1219               List of areas to use for
   1220           metering
   1221             </td>
   1222 
   1223             <td class="entry_units">
   1224             </td>
   1225 
   1226             <td class="entry_range">
   1227             </td>
   1228 
   1229             <td class="entry_notes">
   1230               Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   1231           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   1232           specified coordinates.<wbr>
   1233 <br>
   1234 <br>          The coordinate system is based on the active pixel array,<wbr>
   1235           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   1236           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   1237           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   1238           bottom-right pixel in the active pixel array.<wbr> The weight
   1239           should be nonnegative.<wbr>
   1240 <br>
   1241 <br>          If all regions have 0 weight,<wbr> then no specific metering area
   1242           needs to be used by the HAL.<wbr> If the metering region is
   1243           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   1244           should ignore the sections outside the region and output the
   1245           used sections in the frame metadata
   1246             </td>
   1247 
   1248             <td class="entry_tags">
   1249               <ul class="entry_tags">
   1250                   <li><a href="#tag_BC">BC</a></li>
   1251               </ul>
   1252             </td>
   1253 
   1254           </tr> <!-- end of entry -->
   1255         
   1256                 
   1257           <tr class="entry" id="controls_android.control.aeTargetFpsRange">
   1258             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Target<wbr>Fps<wbr>Range</td>
   1259             <td class="entry_type">
   1260                 <span class="entry_type_name">int32</span>
   1261                 <span class="entry_type_container">x</span>
   1262 
   1263                 <span class="entry_type_array">
   1264                   2
   1265                 </span>
   1266               <span class="entry_type_visibility"> [public]</span>
   1267 
   1268 
   1269             </td> <!-- entry_type -->
   1270 
   1271             <td class="entry_description">
   1272               Range over which fps can be adjusted to
   1273           maintain exposure
   1274             </td>
   1275 
   1276             <td class="entry_units">
   1277             </td>
   1278 
   1279             <td class="entry_range">
   1280               android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges
   1281             </td>
   1282 
   1283             <td class="entry_notes">
   1284               Only constrains AE algorithm,<wbr> not manual control
   1285           of android.<wbr>sensor.<wbr>exposure<wbr>Time
   1286             </td>
   1287 
   1288             <td class="entry_tags">
   1289               <ul class="entry_tags">
   1290                   <li><a href="#tag_BC">BC</a></li>
   1291               </ul>
   1292             </td>
   1293 
   1294           </tr> <!-- end of entry -->
   1295         
   1296                 
   1297           <tr class="entry" id="controls_android.control.aePrecaptureTrigger">
   1298             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Trigger</td>
   1299             <td class="entry_type">
   1300                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1301 
   1302               <span class="entry_type_visibility"> [public]</span>
   1303 
   1304                 <ul class="entry_type_enum">
   1305                   <li>
   1306                     <span class="entry_type_enum_name">IDLE</span>
   1307                     <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
   1308                   </li>
   1309                   <li>
   1310                     <span class="entry_type_enum_name">START</span>
   1311                     <span class="entry_type_enum_notes">The precapture metering sequence
   1312               must be started.<wbr> The exact effect of the precapture
   1313               trigger depends on the current AE mode and
   1314               state.<wbr></span>
   1315                   </li>
   1316                 </ul>
   1317 
   1318             </td> <!-- entry_type -->
   1319 
   1320             <td class="entry_description">
   1321               Whether the HAL must trigger precapture
   1322           metering.<wbr>
   1323             </td>
   1324 
   1325             <td class="entry_units">
   1326             </td>
   1327 
   1328             <td class="entry_range">
   1329             </td>
   1330 
   1331             <td class="entry_notes">
   1332               This entry is normally set to IDLE,<wbr> or is not
   1333           included at all in the request settings.<wbr> When included and
   1334           set to START,<wbr> the HAL must trigger the autoexposure
   1335           precapture metering sequence.<wbr>
   1336 <br>
   1337 <br>          The effect of AE precapture trigger depends on the current
   1338           AE mode and state; see the camera HAL device v3 header for
   1339           details.<wbr>
   1340             </td>
   1341 
   1342             <td class="entry_tags">
   1343               <ul class="entry_tags">
   1344                   <li><a href="#tag_BC">BC</a></li>
   1345               </ul>
   1346             </td>
   1347 
   1348           </tr> <!-- end of entry -->
   1349         
   1350                 
   1351           <tr class="entry" id="controls_android.control.afMode">
   1352             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
   1353             <td class="entry_type">
   1354                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1355 
   1356               <span class="entry_type_visibility"> [public]</span>
   1357 
   1358                 <ul class="entry_type_enum">
   1359                   <li>
   1360                     <span class="entry_type_enum_name">OFF</span>
   1361                     <span class="entry_type_enum_notes">The 3A routines do not control the lens;
   1362             android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
   1363             application</span>
   1364                   </li>
   1365                   <li>
   1366                     <span class="entry_type_enum_name">AUTO</span>
   1367                     <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
   1368 
   1369             Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
   1370             is fixed focus In this mode,<wbr> the lens does not move unless
   1371             the autofocus trigger action is called.<wbr> When that trigger
   1372             is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
   1373             the outcome of the scan (FOCUSED or
   1374             NOT_<wbr>FOCUSED).<wbr>
   1375 
   1376             Triggering cancel AF resets the lens position to default,<wbr>
   1377             and sets the AF state to INACTIVE.<wbr></span>
   1378                   </li>
   1379                   <li>
   1380                     <span class="entry_type_enum_name">MACRO</span>
   1381                     <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
   1382             autofocus trigger action is called.<wbr>
   1383 
   1384             When that trigger is activated,<wbr> AF must transition to
   1385             ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
   1386             NOT_<wbr>FOCUSED).<wbr>  Triggering cancel AF resets the lens
   1387             position to default,<wbr> and sets the AF state to
   1388             INACTIVE.<wbr></span>
   1389                   </li>
   1390                   <li>
   1391                     <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
   1392                     <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
   1393             position continually to attempt to provide a
   1394             constantly-in-focus image stream.<wbr>
   1395 
   1396             The focusing behavior should be suitable for good quality
   1397             video recording; typically this means slower focus
   1398             movement and no overshoots.<wbr> When the AF trigger is not
   1399             involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
   1400             and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
   1401             states as appropriate.<wbr> When the AF trigger is activated,<wbr>
   1402             the algorithm should immediately transition into
   1403             AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
   1404             lens position until a cancel AF trigger is received.<wbr>
   1405 
   1406             Once cancel is received,<wbr> the algorithm should transition
   1407             back to INACTIVE and resume passive scan.<wbr> Note that this
   1408             behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
   1409             ongoing PASSIVE_<wbr>SCAN must immediately be
   1410             canceled.<wbr></span>
   1411                   </li>
   1412                   <li>
   1413                     <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
   1414                     <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
   1415             position continually to attempt to provide a
   1416             constantly-in-focus image stream.<wbr>
   1417 
   1418             The focusing behavior should be suitable for still image
   1419             capture; typically this means focusing as fast as
   1420             possible.<wbr> When the AF trigger is not involved,<wbr> the AF
   1421             algorithm should start in INACTIVE state,<wbr> and then
   1422             transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
   1423             appropriate as it attempts to maintain focus.<wbr> When the AF
   1424             trigger is activated,<wbr> the algorithm should finish its
   1425             PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
   1426             AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
   1427             lens position until a cancel AF trigger is received.<wbr>
   1428 
   1429             When the AF cancel trigger is activated,<wbr> the algorithm
   1430             should transition back to INACTIVE and then act as if it
   1431             has just been started.<wbr></span>
   1432                   </li>
   1433                   <li>
   1434                     <span class="entry_type_enum_name">EDOF</span>
   1435                     <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
   1436             trigger is ignored,<wbr> AF state should always be
   1437             INACTIVE.<wbr></span>
   1438                   </li>
   1439                 </ul>
   1440 
   1441             </td> <!-- entry_type -->
   1442 
   1443             <td class="entry_description">
   1444               Whether AF is currently enabled,<wbr> and what
   1445           mode it is set to
   1446             </td>
   1447 
   1448             <td class="entry_units">
   1449             </td>
   1450 
   1451             <td class="entry_range">
   1452             </td>
   1453 
   1454             <td class="entry_notes">
   1455             </td>
   1456 
   1457             <td class="entry_tags">
   1458               <ul class="entry_tags">
   1459                   <li><a href="#tag_BC">BC</a></li>
   1460               </ul>
   1461             </td>
   1462 
   1463           </tr> <!-- end of entry -->
   1464         
   1465                 
   1466           <tr class="entry" id="controls_android.control.afRegions">
   1467             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
   1468             <td class="entry_type">
   1469                 <span class="entry_type_name">int32</span>
   1470                 <span class="entry_type_container">x</span>
   1471 
   1472                 <span class="entry_type_array">
   1473                   5 x area_count
   1474                 </span>
   1475               <span class="entry_type_visibility"> [public]</span>
   1476 
   1477 
   1478             </td> <!-- entry_type -->
   1479 
   1480             <td class="entry_description">
   1481               List of areas to use for focus
   1482           estimation
   1483             </td>
   1484 
   1485             <td class="entry_units">
   1486             </td>
   1487 
   1488             <td class="entry_range">
   1489             </td>
   1490 
   1491             <td class="entry_notes">
   1492               Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   1493           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   1494           specified coordinates.<wbr>
   1495 <br>
   1496 <br>          The coordinate system is based on the active pixel array,<wbr>
   1497           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   1498           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   1499           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   1500           bottom-right pixel in the active pixel array.<wbr> The weight
   1501           should be nonnegative.<wbr>
   1502 <br>
   1503 <br>          If all regions have 0 weight,<wbr> then no specific focus area
   1504           needs to be used by the HAL.<wbr> If the focusing region is
   1505           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   1506           should ignore the sections outside the region and output the
   1507           used sections in the frame metadata
   1508             </td>
   1509 
   1510             <td class="entry_tags">
   1511               <ul class="entry_tags">
   1512                   <li><a href="#tag_BC">BC</a></li>
   1513               </ul>
   1514             </td>
   1515 
   1516           </tr> <!-- end of entry -->
   1517         
   1518                 
   1519           <tr class="entry" id="controls_android.control.afTrigger">
   1520             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger</td>
   1521             <td class="entry_type">
   1522                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1523 
   1524               <span class="entry_type_visibility"> [public]</span>
   1525 
   1526                 <ul class="entry_type_enum">
   1527                   <li>
   1528                     <span class="entry_type_enum_name">IDLE</span>
   1529                     <span class="entry_type_enum_notes">The trigger is idle.<wbr></span>
   1530                   </li>
   1531                   <li>
   1532                     <span class="entry_type_enum_name">START</span>
   1533                     <span class="entry_type_enum_notes">Autofocus must trigger now.<wbr></span>
   1534                   </li>
   1535                   <li>
   1536                     <span class="entry_type_enum_name">CANCEL</span>
   1537                     <span class="entry_type_enum_notes">Autofocus must return to initial
   1538               state,<wbr> and cancel any active trigger.<wbr></span>
   1539                   </li>
   1540                 </ul>
   1541 
   1542             </td> <!-- entry_type -->
   1543 
   1544             <td class="entry_description">
   1545               Whether the HAL must trigger autofocus.<wbr>
   1546             </td>
   1547 
   1548             <td class="entry_units">
   1549             </td>
   1550 
   1551             <td class="entry_range">
   1552             </td>
   1553 
   1554             <td class="entry_notes">
   1555               This entry is normally set to IDLE,<wbr> or is not
   1556           included at all in the request settings.<wbr>
   1557 <br>
   1558 <br>          When included and set to START,<wbr> the HAL must trigger the
   1559           autofocus algorithm.<wbr> The effect of AF trigger depends on the
   1560           current AF mode and state; see the camera HAL device v3
   1561           header for details.<wbr> When set to CANCEL,<wbr> the HAL must cancel
   1562           any active trigger,<wbr> and return to initial AF state.<wbr>
   1563             </td>
   1564 
   1565             <td class="entry_tags">
   1566               <ul class="entry_tags">
   1567                   <li><a href="#tag_BC">BC</a></li>
   1568               </ul>
   1569             </td>
   1570 
   1571           </tr> <!-- end of entry -->
   1572         
   1573                 
   1574           <tr class="entry" id="controls_android.control.awbLock">
   1575             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Lock</td>
   1576             <td class="entry_type">
   1577                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1578 
   1579               <span class="entry_type_visibility"> [public as boolean]</span>
   1580 
   1581                 <ul class="entry_type_enum">
   1582                   <li>
   1583                     <span class="entry_type_enum_name">OFF</span>
   1584                     <span class="entry_type_enum_notes">Auto-whitebalance lock is disabled; the AWB
   1585             algorithm is free to update its parameters if in AUTO
   1586             mode.<wbr></span>
   1587                   </li>
   1588                   <li>
   1589                     <span class="entry_type_enum_name">ON</span>
   1590                     <span class="entry_type_enum_notes">Auto-whitebalance lock is enabled; the AWB
   1591             algorithm must not update the exposure and sensitivity
   1592             parameters while the lock is active</span>
   1593                   </li>
   1594                 </ul>
   1595 
   1596             </td> <!-- entry_type -->
   1597 
   1598             <td class="entry_description">
   1599               Whether AWB is currently locked to its
   1600           latest calculated values
   1601             </td>
   1602 
   1603             <td class="entry_units">
   1604             </td>
   1605 
   1606             <td class="entry_range">
   1607             </td>
   1608 
   1609             <td class="entry_notes">
   1610               Note that AWB lock is only meaningful for AUTO
   1611           mode; in other modes,<wbr> AWB is already fixed to a specific
   1612           setting
   1613             </td>
   1614 
   1615             <td class="entry_tags">
   1616               <ul class="entry_tags">
   1617                   <li><a href="#tag_BC">BC</a></li>
   1618               </ul>
   1619             </td>
   1620 
   1621           </tr> <!-- end of entry -->
   1622         
   1623                 
   1624           <tr class="entry" id="controls_android.control.awbMode">
   1625             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
   1626             <td class="entry_type">
   1627                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1628 
   1629               <span class="entry_type_visibility"> [public]</span>
   1630 
   1631                 <ul class="entry_type_enum">
   1632                   <li>
   1633                     <span class="entry_type_enum_name">OFF</span>
   1634                   </li>
   1635                   <li>
   1636                     <span class="entry_type_enum_name">AUTO</span>
   1637                   </li>
   1638                   <li>
   1639                     <span class="entry_type_enum_name">INCANDESCENT</span>
   1640                   </li>
   1641                   <li>
   1642                     <span class="entry_type_enum_name">FLUORESCENT</span>
   1643                   </li>
   1644                   <li>
   1645                     <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
   1646                   </li>
   1647                   <li>
   1648                     <span class="entry_type_enum_name">DAYLIGHT</span>
   1649                   </li>
   1650                   <li>
   1651                     <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
   1652                   </li>
   1653                   <li>
   1654                     <span class="entry_type_enum_name">TWILIGHT</span>
   1655                   </li>
   1656                   <li>
   1657                     <span class="entry_type_enum_name">SHADE</span>
   1658                   </li>
   1659                 </ul>
   1660 
   1661             </td> <!-- entry_type -->
   1662 
   1663             <td class="entry_description">
   1664               Whether AWB is currently setting the color
   1665           transform fields,<wbr> and what its illumination target
   1666           is
   1667             </td>
   1668 
   1669             <td class="entry_units">
   1670             </td>
   1671 
   1672             <td class="entry_range">
   1673             </td>
   1674 
   1675             <td class="entry_notes">
   1676               [BC - AWB lock,<wbr>AWB modes]
   1677             </td>
   1678 
   1679             <td class="entry_tags">
   1680               <ul class="entry_tags">
   1681                   <li><a href="#tag_BC">BC</a></li>
   1682                   <li><a href="#tag_AWB">AWB</a></li>
   1683               </ul>
   1684             </td>
   1685 
   1686           </tr> <!-- end of entry -->
   1687         
   1688                 
   1689           <tr class="entry" id="controls_android.control.awbRegions">
   1690             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
   1691             <td class="entry_type">
   1692                 <span class="entry_type_name">int32</span>
   1693                 <span class="entry_type_container">x</span>
   1694 
   1695                 <span class="entry_type_array">
   1696                   5 x area_count
   1697                 </span>
   1698               <span class="entry_type_visibility"> [public]</span>
   1699 
   1700 
   1701             </td> <!-- entry_type -->
   1702 
   1703             <td class="entry_description">
   1704               List of areas to use for illuminant
   1705           estimation
   1706             </td>
   1707 
   1708             <td class="entry_units">
   1709             </td>
   1710 
   1711             <td class="entry_range">
   1712             </td>
   1713 
   1714             <td class="entry_notes">
   1715               Only used in AUTO mode.<wbr>
   1716 <br>
   1717 <br>          Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   1718           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   1719           specified coordinates.<wbr>
   1720 <br>
   1721 <br>          The coordinate system is based on the active pixel array,<wbr>
   1722           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   1723           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   1724           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   1725           bottom-right pixel in the active pixel array.<wbr> The weight
   1726           should be nonnegative.<wbr>
   1727 <br>
   1728 <br>          If all regions have 0 weight,<wbr> then no specific metering area
   1729           needs to be used by the HAL.<wbr> If the metering region is
   1730           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   1731           should ignore the sections outside the region and output the
   1732           used sections in the frame metadata
   1733             </td>
   1734 
   1735             <td class="entry_tags">
   1736               <ul class="entry_tags">
   1737                   <li><a href="#tag_BC">BC</a></li>
   1738               </ul>
   1739             </td>
   1740 
   1741           </tr> <!-- end of entry -->
   1742         
   1743                 
   1744           <tr class="entry" id="controls_android.control.captureIntent">
   1745             <td class="entry_name">android.<wbr>control.<wbr>capture<wbr>Intent</td>
   1746             <td class="entry_type">
   1747                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1748 
   1749               <span class="entry_type_visibility"> [public]</span>
   1750 
   1751                 <ul class="entry_type_enum">
   1752                   <li>
   1753                     <span class="entry_type_enum_name">CUSTOM</span>
   1754                     <span class="entry_type_enum_notes">This request doesn't fall into the other
   1755             categories.<wbr> Default to preview-like
   1756             behavior.<wbr></span>
   1757                   </li>
   1758                   <li>
   1759                     <span class="entry_type_enum_name">PREVIEW</span>
   1760                     <span class="entry_type_enum_notes">This request is for a preview-like usecase.<wbr> The
   1761             precapture trigger may be used to start off a metering
   1762             w/<wbr>flash sequence</span>
   1763                   </li>
   1764                   <li>
   1765                     <span class="entry_type_enum_name">STILL_CAPTURE</span>
   1766                     <span class="entry_type_enum_notes">This request is for a still capture-type
   1767             usecase.<wbr></span>
   1768                   </li>
   1769                   <li>
   1770                     <span class="entry_type_enum_name">VIDEO_RECORD</span>
   1771                     <span class="entry_type_enum_notes">This request is for a video recording
   1772             usecase.<wbr></span>
   1773                   </li>
   1774                   <li>
   1775                     <span class="entry_type_enum_name">VIDEO_SNAPSHOT</span>
   1776                     <span class="entry_type_enum_notes">This request is for a video snapshot (still
   1777             image while recording video) usecase</span>
   1778                   </li>
   1779                   <li>
   1780                     <span class="entry_type_enum_name">ZERO_SHUTTER_LAG</span>
   1781                     <span class="entry_type_enum_notes">This request is for a ZSL usecase; the
   1782             application will stream full-resolution images and
   1783             reprocess one or several later for a final
   1784             capture</span>
   1785                   </li>
   1786                 </ul>
   1787 
   1788             </td> <!-- entry_type -->
   1789 
   1790             <td class="entry_description">
   1791               Information to 3A routines about the purpose
   1792           of this capture,<wbr> to help decide optimal 3A
   1793           strategy
   1794             </td>
   1795 
   1796             <td class="entry_units">
   1797             </td>
   1798 
   1799             <td class="entry_range">
   1800               all must be supported
   1801             </td>
   1802 
   1803             <td class="entry_notes">
   1804               Only used if android.<wbr>control.<wbr>mode != OFF.<wbr>
   1805             </td>
   1806 
   1807             <td class="entry_tags">
   1808               <ul class="entry_tags">
   1809                   <li><a href="#tag_BC">BC</a></li>
   1810               </ul>
   1811             </td>
   1812 
   1813           </tr> <!-- end of entry -->
   1814         
   1815                 
   1816           <tr class="entry" id="controls_android.control.effectMode">
   1817             <td class="entry_name">android.<wbr>control.<wbr>effect<wbr>Mode</td>
   1818             <td class="entry_type">
   1819                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1820 
   1821               <span class="entry_type_visibility"> [public]</span>
   1822 
   1823                 <ul class="entry_type_enum">
   1824                   <li>
   1825                     <span class="entry_type_enum_name">OFF</span>
   1826                   </li>
   1827                   <li>
   1828                     <span class="entry_type_enum_name">MONO</span>
   1829                     <span class="entry_type_enum_optional">optional</span>
   1830                   </li>
   1831                   <li>
   1832                     <span class="entry_type_enum_name">NEGATIVE</span>
   1833                     <span class="entry_type_enum_optional">optional</span>
   1834                   </li>
   1835                   <li>
   1836                     <span class="entry_type_enum_name">SOLARIZE</span>
   1837                     <span class="entry_type_enum_optional">optional</span>
   1838                   </li>
   1839                   <li>
   1840                     <span class="entry_type_enum_name">SEPIA</span>
   1841                     <span class="entry_type_enum_optional">optional</span>
   1842                   </li>
   1843                   <li>
   1844                     <span class="entry_type_enum_name">POSTERIZE</span>
   1845                     <span class="entry_type_enum_optional">optional</span>
   1846                   </li>
   1847                   <li>
   1848                     <span class="entry_type_enum_name">WHITEBOARD</span>
   1849                     <span class="entry_type_enum_optional">optional</span>
   1850                   </li>
   1851                   <li>
   1852                     <span class="entry_type_enum_name">BLACKBOARD</span>
   1853                     <span class="entry_type_enum_optional">optional</span>
   1854                   </li>
   1855                   <li>
   1856                     <span class="entry_type_enum_name">AQUA</span>
   1857                     <span class="entry_type_enum_optional">optional</span>
   1858                   </li>
   1859                 </ul>
   1860 
   1861             </td> <!-- entry_type -->
   1862 
   1863             <td class="entry_description">
   1864               Whether any special color effect is in use.<wbr>
   1865           Only used if android.<wbr>control.<wbr>mode != OFF
   1866             </td>
   1867 
   1868             <td class="entry_units">
   1869             </td>
   1870 
   1871             <td class="entry_range">
   1872               android.<wbr>control.<wbr>available<wbr>Effects
   1873             </td>
   1874 
   1875             <td class="entry_notes">
   1876             </td>
   1877 
   1878             <td class="entry_tags">
   1879               <ul class="entry_tags">
   1880                   <li><a href="#tag_BC">BC</a></li>
   1881               </ul>
   1882             </td>
   1883 
   1884           </tr> <!-- end of entry -->
   1885         
   1886                 
   1887           <tr class="entry" id="controls_android.control.mode">
   1888             <td class="entry_name">android.<wbr>control.<wbr>mode</td>
   1889             <td class="entry_type">
   1890                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1891 
   1892               <span class="entry_type_visibility"> [public]</span>
   1893 
   1894                 <ul class="entry_type_enum">
   1895                   <li>
   1896                     <span class="entry_type_enum_name">OFF</span>
   1897                     <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
   1898             routines are disabled,<wbr> no other settings in
   1899             android.<wbr>control.<wbr>* have any effect</span>
   1900                   </li>
   1901                   <li>
   1902                     <span class="entry_type_enum_name">AUTO</span>
   1903                     <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
   1904             Manual control of capture parameters is disabled.<wbr> All
   1905             controls in android.<wbr>control.<wbr>* besides sceneMode take
   1906             effect</span>
   1907                   </li>
   1908                   <li>
   1909                     <span class="entry_type_enum_name">USE_SCENE_MODE</span>
   1910                     <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
   1911             control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
   1912             controls; the HAL must ignore those settings while
   1913             USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
   1914             scene mode).<wbr> Other control entries are still active.<wbr>
   1915             This setting can only be used if availableSceneModes !=
   1916             UNSUPPORTED</span>
   1917                   </li>
   1918                 </ul>
   1919 
   1920             </td> <!-- entry_type -->
   1921 
   1922             <td class="entry_description">
   1923               Overall mode of 3A control
   1924           routines
   1925             </td>
   1926 
   1927             <td class="entry_units">
   1928             </td>
   1929 
   1930             <td class="entry_range">
   1931               all must be supported
   1932             </td>
   1933 
   1934             <td class="entry_notes">
   1935             </td>
   1936 
   1937             <td class="entry_tags">
   1938               <ul class="entry_tags">
   1939                   <li><a href="#tag_BC">BC</a></li>
   1940               </ul>
   1941             </td>
   1942 
   1943           </tr> <!-- end of entry -->
   1944         
   1945                 
   1946           <tr class="entry" id="controls_android.control.sceneMode">
   1947             <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode</td>
   1948             <td class="entry_type">
   1949                 <span class="entry_type_name entry_type_name_enum">byte</span>
   1950 
   1951               <span class="entry_type_visibility"> [public]</span>
   1952 
   1953                 <ul class="entry_type_enum">
   1954                   <li>
   1955                     <span class="entry_type_enum_name">UNSUPPORTED</span>
   1956                     <span class="entry_type_enum_value">0</span>
   1957                   </li>
   1958                   <li>
   1959                     <span class="entry_type_enum_name">FACE_PRIORITY</span>
   1960                     <span class="entry_type_enum_notes">if face detection support exists Use face
   1961             detection data to drive 3A routines.<wbr> If face detection
   1962             statistics are disabled,<wbr> should still operate correctly
   1963             (but not return face detection statistics to the
   1964             framework).<wbr>
   1965 
   1966             Unlike the other scene modes,<wbr> aeMode,<wbr> awbMode,<wbr> and afMode
   1967             remain active when FACE_<wbr>PRIORITY is set.<wbr> This is due to
   1968             compatibility concerns with the old camera
   1969             API</span>
   1970                   </li>
   1971                   <li>
   1972                     <span class="entry_type_enum_name">ACTION</span>
   1973                     <span class="entry_type_enum_optional">optional</span>
   1974                   </li>
   1975                   <li>
   1976                     <span class="entry_type_enum_name">PORTRAIT</span>
   1977                     <span class="entry_type_enum_optional">optional</span>
   1978                   </li>
   1979                   <li>
   1980                     <span class="entry_type_enum_name">LANDSCAPE</span>
   1981                     <span class="entry_type_enum_optional">optional</span>
   1982                   </li>
   1983                   <li>
   1984                     <span class="entry_type_enum_name">NIGHT</span>
   1985                     <span class="entry_type_enum_optional">optional</span>
   1986                   </li>
   1987                   <li>
   1988                     <span class="entry_type_enum_name">NIGHT_PORTRAIT</span>
   1989                     <span class="entry_type_enum_optional">optional</span>
   1990                   </li>
   1991                   <li>
   1992                     <span class="entry_type_enum_name">THEATRE</span>
   1993                     <span class="entry_type_enum_optional">optional</span>
   1994                   </li>
   1995                   <li>
   1996                     <span class="entry_type_enum_name">BEACH</span>
   1997                     <span class="entry_type_enum_optional">optional</span>
   1998                   </li>
   1999                   <li>
   2000                     <span class="entry_type_enum_name">SNOW</span>
   2001                     <span class="entry_type_enum_optional">optional</span>
   2002                   </li>
   2003                   <li>
   2004                     <span class="entry_type_enum_name">SUNSET</span>
   2005                     <span class="entry_type_enum_optional">optional</span>
   2006                   </li>
   2007                   <li>
   2008                     <span class="entry_type_enum_name">STEADYPHOTO</span>
   2009                     <span class="entry_type_enum_optional">optional</span>
   2010                   </li>
   2011                   <li>
   2012                     <span class="entry_type_enum_name">FIREWORKS</span>
   2013                     <span class="entry_type_enum_optional">optional</span>
   2014                   </li>
   2015                   <li>
   2016                     <span class="entry_type_enum_name">SPORTS</span>
   2017                     <span class="entry_type_enum_optional">optional</span>
   2018                   </li>
   2019                   <li>
   2020                     <span class="entry_type_enum_name">PARTY</span>
   2021                     <span class="entry_type_enum_optional">optional</span>
   2022                   </li>
   2023                   <li>
   2024                     <span class="entry_type_enum_name">CANDLELIGHT</span>
   2025                     <span class="entry_type_enum_optional">optional</span>
   2026                   </li>
   2027                   <li>
   2028                     <span class="entry_type_enum_name">BARCODE</span>
   2029                     <span class="entry_type_enum_optional">optional</span>
   2030                   </li>
   2031                 </ul>
   2032 
   2033             </td> <!-- entry_type -->
   2034 
   2035             <td class="entry_description">
   2036               Which scene mode is active when
   2037           android.<wbr>control.<wbr>mode = SCENE_<wbr>MODE
   2038             </td>
   2039 
   2040             <td class="entry_units">
   2041             </td>
   2042 
   2043             <td class="entry_range">
   2044               android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes
   2045             </td>
   2046 
   2047             <td class="entry_notes">
   2048             </td>
   2049 
   2050             <td class="entry_tags">
   2051               <ul class="entry_tags">
   2052                   <li><a href="#tag_BC">BC</a></li>
   2053               </ul>
   2054             </td>
   2055 
   2056           </tr> <!-- end of entry -->
   2057         
   2058                 
   2059           <tr class="entry" id="controls_android.control.videoStabilizationMode">
   2060             <td class="entry_name">android.<wbr>control.<wbr>video<wbr>Stabilization<wbr>Mode</td>
   2061             <td class="entry_type">
   2062                 <span class="entry_type_name entry_type_name_enum">byte</span>
   2063 
   2064               <span class="entry_type_visibility"> [public as boolean]</span>
   2065 
   2066                 <ul class="entry_type_enum">
   2067                   <li>
   2068                     <span class="entry_type_enum_name">OFF</span>
   2069                   </li>
   2070                   <li>
   2071                     <span class="entry_type_enum_name">ON</span>
   2072                   </li>
   2073                 </ul>
   2074 
   2075             </td> <!-- entry_type -->
   2076 
   2077             <td class="entry_description">
   2078               Whether video stabilization is
   2079           active
   2080             </td>
   2081 
   2082             <td class="entry_units">
   2083             </td>
   2084 
   2085             <td class="entry_range">
   2086             </td>
   2087 
   2088             <td class="entry_notes">
   2089               If enabled,<wbr> video stabilization can modify the
   2090           android.<wbr>scaler.<wbr>crop<wbr>Region to keep the video stream
   2091           stabilized
   2092             </td>
   2093 
   2094             <td class="entry_tags">
   2095               <ul class="entry_tags">
   2096                   <li><a href="#tag_BC">BC</a></li>
   2097               </ul>
   2098             </td>
   2099 
   2100           </tr> <!-- end of entry -->
   2101         
   2102         
   2103 
   2104       <!-- end of kind -->
   2105       </tbody>
   2106       <tr><td colspan="7" class="kind">static</td></tr>
   2107 
   2108       <thead class="entries_header">
   2109         <tr>
   2110           <th class="th_name">Property Name</th>
   2111           <th class="th_type">Type</th>
   2112           <th class="th_description">Description</th>
   2113           <th class="th_units">Units</th>
   2114           <th class="th_range">Range</th>
   2115           <th class="th_notes">Notes</th>
   2116           <th class="th_tags">Tags</th>
   2117         </tr>
   2118       </thead>
   2119 
   2120       <tbody>
   2121 
   2122         
   2123 
   2124         
   2125 
   2126         
   2127 
   2128         
   2129 
   2130                 
   2131           <tr class="entry" id="static_android.control.aeAvailableAntibandingModes">
   2132             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Antibanding<wbr>Modes</td>
   2133             <td class="entry_type">
   2134                 <span class="entry_type_name">byte</span>
   2135                 <span class="entry_type_container">x</span>
   2136 
   2137                 <span class="entry_type_array">
   2138                   n
   2139                 </span>
   2140               <span class="entry_type_visibility"> [public]</span>
   2141                 <div class="entry_type_notes">list of enums</div>
   2142 
   2143 
   2144             </td> <!-- entry_type -->
   2145 
   2146             <td class="entry_description">
   2147               Which set of antibanding modes are
   2148           supported
   2149             </td>
   2150 
   2151             <td class="entry_units">
   2152             </td>
   2153 
   2154             <td class="entry_range">
   2155             </td>
   2156 
   2157             <td class="entry_notes">
   2158             </td>
   2159 
   2160             <td class="entry_tags">
   2161             </td>
   2162 
   2163           </tr> <!-- end of entry -->
   2164         
   2165                 
   2166           <tr class="entry" id="static_android.control.aeAvailableModes">
   2167             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Modes</td>
   2168             <td class="entry_type">
   2169                 <span class="entry_type_name">byte</span>
   2170                 <span class="entry_type_container">x</span>
   2171 
   2172                 <span class="entry_type_array">
   2173                   n
   2174                 </span>
   2175               <span class="entry_type_visibility"> [system]</span>
   2176                 <div class="entry_type_notes">list of enums</div>
   2177 
   2178 
   2179             </td> <!-- entry_type -->
   2180 
   2181             <td class="entry_description">
   2182               Which subset of AE modes is
   2183           supported
   2184             </td>
   2185 
   2186             <td class="entry_units">
   2187             </td>
   2188 
   2189             <td class="entry_range">
   2190               OFF,<wbr> ON must be supported.<wbr>
   2191           ON_<wbr>AUTO_<wbr>FLASH/<wbr>ON_<wbr>ALWAYS_<wbr>FLASH must be supported if flash
   2192           unit is available
   2193             </td>
   2194 
   2195             <td class="entry_notes">
   2196             </td>
   2197 
   2198             <td class="entry_tags">
   2199             </td>
   2200 
   2201           </tr> <!-- end of entry -->
   2202         
   2203                 
   2204           <tr class="entry" id="static_android.control.aeAvailableTargetFpsRanges">
   2205             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Available<wbr>Target<wbr>Fps<wbr>Ranges</td>
   2206             <td class="entry_type">
   2207                 <span class="entry_type_name">int32</span>
   2208                 <span class="entry_type_container">x</span>
   2209 
   2210                 <span class="entry_type_array">
   2211                   2 x n
   2212                 </span>
   2213               <span class="entry_type_visibility"> [public]</span>
   2214                 <div class="entry_type_notes">list of pairs of frame rates</div>
   2215 
   2216 
   2217             </td> <!-- entry_type -->
   2218 
   2219             <td class="entry_description">
   2220               List of frame rate ranges supported by the
   2221           AE algorithm/<wbr>hardware
   2222             </td>
   2223 
   2224             <td class="entry_units">
   2225             </td>
   2226 
   2227             <td class="entry_range">
   2228             </td>
   2229 
   2230             <td class="entry_notes">
   2231             </td>
   2232 
   2233             <td class="entry_tags">
   2234             </td>
   2235 
   2236           </tr> <!-- end of entry -->
   2237         
   2238                 
   2239           <tr class="entry" id="static_android.control.aeCompensationRange">
   2240             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Range</td>
   2241             <td class="entry_type">
   2242                 <span class="entry_type_name">int32</span>
   2243                 <span class="entry_type_container">x</span>
   2244 
   2245                 <span class="entry_type_array">
   2246                   2
   2247                 </span>
   2248               <span class="entry_type_visibility"> [public]</span>
   2249 
   2250 
   2251             </td> <!-- entry_type -->
   2252 
   2253             <td class="entry_description">
   2254               Maximum and minimum exposure compensation
   2255           setting,<wbr> in counts of
   2256           android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step<wbr>Size
   2257             </td>
   2258 
   2259             <td class="entry_units">
   2260             </td>
   2261 
   2262             <td class="entry_range">
   2263               At least (-2,<wbr>2)/<wbr>(exp compensation step
   2264           size)
   2265             </td>
   2266 
   2267             <td class="entry_notes">
   2268             </td>
   2269 
   2270             <td class="entry_tags">
   2271               <ul class="entry_tags">
   2272                   <li><a href="#tag_BC">BC</a></li>
   2273               </ul>
   2274             </td>
   2275 
   2276           </tr> <!-- end of entry -->
   2277         
   2278                 
   2279           <tr class="entry" id="static_android.control.aeCompensationStep">
   2280             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Compensation<wbr>Step</td>
   2281             <td class="entry_type">
   2282                 <span class="entry_type_name">rational</span>
   2283 
   2284               <span class="entry_type_visibility"> [public]</span>
   2285 
   2286 
   2287             </td> <!-- entry_type -->
   2288 
   2289             <td class="entry_description">
   2290               Smallest step by which exposure compensation
   2291           can be changed
   2292             </td>
   2293 
   2294             <td class="entry_units">
   2295             </td>
   2296 
   2297             <td class="entry_range">
   2298               <= 1/<wbr>2
   2299             </td>
   2300 
   2301             <td class="entry_notes">
   2302             </td>
   2303 
   2304             <td class="entry_tags">
   2305               <ul class="entry_tags">
   2306                   <li><a href="#tag_BC">BC</a></li>
   2307               </ul>
   2308             </td>
   2309 
   2310           </tr> <!-- end of entry -->
   2311         
   2312                 
   2313           <tr class="entry" id="static_android.control.afAvailableModes">
   2314             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Available<wbr>Modes</td>
   2315             <td class="entry_type">
   2316                 <span class="entry_type_name">byte</span>
   2317                 <span class="entry_type_container">x</span>
   2318 
   2319                 <span class="entry_type_array">
   2320                   n
   2321                 </span>
   2322               <span class="entry_type_visibility"> [public]</span>
   2323                 <div class="entry_type_notes">List of enums</div>
   2324 
   2325 
   2326             </td> <!-- entry_type -->
   2327 
   2328             <td class="entry_description">
   2329               List of AF modes that can be
   2330           selected
   2331             </td>
   2332 
   2333             <td class="entry_units">
   2334             </td>
   2335 
   2336             <td class="entry_range">
   2337               OFF must be included.<wbr> AUTO must be supported if
   2338           lens allows for changing focus
   2339             </td>
   2340 
   2341             <td class="entry_notes">
   2342             </td>
   2343 
   2344             <td class="entry_tags">
   2345               <ul class="entry_tags">
   2346                   <li><a href="#tag_BC">BC</a></li>
   2347               </ul>
   2348             </td>
   2349 
   2350           </tr> <!-- end of entry -->
   2351         
   2352                 
   2353           <tr class="entry" id="static_android.control.availableEffects">
   2354             <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Effects</td>
   2355             <td class="entry_type">
   2356                 <span class="entry_type_name">byte</span>
   2357                 <span class="entry_type_container">x</span>
   2358 
   2359                 <span class="entry_type_array">
   2360                   n
   2361                 </span>
   2362               <span class="entry_type_visibility"> [public]</span>
   2363                 <div class="entry_type_notes">list of enums</div>
   2364 
   2365 
   2366             </td> <!-- entry_type -->
   2367 
   2368             <td class="entry_description">
   2369               what subset of the full color effect enum
   2370           list is supported
   2371             </td>
   2372 
   2373             <td class="entry_units">
   2374             </td>
   2375 
   2376             <td class="entry_range">
   2377               OFF must be listed
   2378             </td>
   2379 
   2380             <td class="entry_notes">
   2381             </td>
   2382 
   2383             <td class="entry_tags">
   2384               <ul class="entry_tags">
   2385                   <li><a href="#tag_BC">BC</a></li>
   2386               </ul>
   2387             </td>
   2388 
   2389           </tr> <!-- end of entry -->
   2390         
   2391                 
   2392           <tr class="entry" id="static_android.control.availableSceneModes">
   2393             <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Scene<wbr>Modes</td>
   2394             <td class="entry_type">
   2395                 <span class="entry_type_name">byte</span>
   2396                 <span class="entry_type_container">x</span>
   2397 
   2398                 <span class="entry_type_array">
   2399                   n
   2400                 </span>
   2401               <span class="entry_type_visibility"> [public]</span>
   2402                 <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>
   2403 
   2404 
   2405             </td> <!-- entry_type -->
   2406 
   2407             <td class="entry_description">
   2408               what subset of the scene mode enum list is
   2409           supported.<wbr>
   2410             </td>
   2411 
   2412             <td class="entry_units">
   2413             </td>
   2414 
   2415             <td class="entry_range">
   2416               SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY must be supported if face
   2417           detection is supported
   2418             </td>
   2419 
   2420             <td class="entry_notes">
   2421             </td>
   2422 
   2423             <td class="entry_tags">
   2424               <ul class="entry_tags">
   2425                   <li><a href="#tag_BC">BC</a></li>
   2426               </ul>
   2427             </td>
   2428 
   2429           </tr> <!-- end of entry -->
   2430         
   2431                 
   2432           <tr class="entry" id="static_android.control.availableVideoStabilizationModes">
   2433             <td class="entry_name">android.<wbr>control.<wbr>available<wbr>Video<wbr>Stabilization<wbr>Modes</td>
   2434             <td class="entry_type">
   2435                 <span class="entry_type_name">byte</span>
   2436                 <span class="entry_type_container">x</span>
   2437 
   2438                 <span class="entry_type_array">
   2439                   n
   2440                 </span>
   2441               <span class="entry_type_visibility"> [public]</span>
   2442                 <div class="entry_type_notes">List of enums.<wbr></div>
   2443 
   2444 
   2445             </td> <!-- entry_type -->
   2446 
   2447             <td class="entry_description">
   2448               List of video stabilization modes that can
   2449           be supported
   2450             </td>
   2451 
   2452             <td class="entry_units">
   2453             </td>
   2454 
   2455             <td class="entry_range">
   2456               OFF must be included
   2457             </td>
   2458 
   2459             <td class="entry_notes">
   2460             </td>
   2461 
   2462             <td class="entry_tags">
   2463               <ul class="entry_tags">
   2464                   <li><a href="#tag_BC">BC</a></li>
   2465               </ul>
   2466             </td>
   2467 
   2468           </tr> <!-- end of entry -->
   2469         
   2470                 
   2471           <tr class="entry" id="static_android.control.awbAvailableModes">
   2472             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Available<wbr>Modes</td>
   2473             <td class="entry_type">
   2474                 <span class="entry_type_name">byte</span>
   2475                 <span class="entry_type_container">x</span>
   2476 
   2477                 <span class="entry_type_array">
   2478                   n
   2479                 </span>
   2480               <span class="entry_type_visibility"> [public]</span>
   2481                 <div class="entry_type_notes">List of enums (android.<wbr>control.<wbr>awb<wbr>Mode)</div>
   2482 
   2483 
   2484             </td> <!-- entry_type -->
   2485 
   2486             <td class="entry_description">
   2487             </td>
   2488 
   2489             <td class="entry_units">
   2490             </td>
   2491 
   2492             <td class="entry_range">
   2493               OFF,<wbr> AUTO must be included
   2494             </td>
   2495 
   2496             <td class="entry_notes">
   2497             </td>
   2498 
   2499             <td class="entry_tags">
   2500               <ul class="entry_tags">
   2501                   <li><a href="#tag_BC">BC</a></li>
   2502               </ul>
   2503             </td>
   2504 
   2505           </tr> <!-- end of entry -->
   2506         
   2507                 
   2508           <tr class="entry" id="static_android.control.maxRegions">
   2509             <td class="entry_name">android.<wbr>control.<wbr>max<wbr>Regions</td>
   2510             <td class="entry_type">
   2511                 <span class="entry_type_name">int32</span>
   2512 
   2513               <span class="entry_type_visibility"> [public]</span>
   2514 
   2515 
   2516             </td> <!-- entry_type -->
   2517 
   2518             <td class="entry_description">
   2519               For AE,<wbr> AWB,<wbr> and AF,<wbr> how many individual
   2520           regions can be listed for metering?
   2521             </td>
   2522 
   2523             <td class="entry_units">
   2524             </td>
   2525 
   2526             <td class="entry_range">
   2527               >= 1
   2528             </td>
   2529 
   2530             <td class="entry_notes">
   2531             </td>
   2532 
   2533             <td class="entry_tags">
   2534               <ul class="entry_tags">
   2535                   <li><a href="#tag_BC">BC</a></li>
   2536               </ul>
   2537             </td>
   2538 
   2539           </tr> <!-- end of entry -->
   2540         
   2541                 
   2542           <tr class="entry" id="static_android.control.sceneModeOverrides">
   2543             <td class="entry_name">android.<wbr>control.<wbr>scene<wbr>Mode<wbr>Overrides</td>
   2544             <td class="entry_type">
   2545                 <span class="entry_type_name">byte</span>
   2546                 <span class="entry_type_container">x</span>
   2547 
   2548                 <span class="entry_type_array">
   2549                   3 x length(availableSceneModes)
   2550                 </span>
   2551               <span class="entry_type_visibility"> [system]</span>
   2552 
   2553 
   2554             </td> <!-- entry_type -->
   2555 
   2556             <td class="entry_description">
   2557               List of AE,<wbr> AWB,<wbr> and AF modes to use for
   2558           each available scene mode
   2559             </td>
   2560 
   2561             <td class="entry_units">
   2562             </td>
   2563 
   2564             <td class="entry_range">
   2565               For each listed scene mode,<wbr> lists the aeMode,<wbr>
   2566           awbMode,<wbr> and afMode that the HAL wants to use for that
   2567           scene mode.<wbr>
   2568 
   2569           For each entry,<wbr> the order is {aeMode,<wbr> awbMode,<wbr> afMode} in
   2570           order of increasing index
   2571             </td>
   2572 
   2573             <td class="entry_notes">
   2574               When a scene mode is enabled,<wbr> the HAL is expected
   2575           to override aeMode,<wbr> awbMode,<wbr> and afMode with its
   2576           preferred settings for that scene mode.<wbr>
   2577 <br>
   2578 <br>          To simplify communication with old camera API applications,<wbr>
   2579           the service wants this override list in the static metadata.<wbr>
   2580           The order of this list matches that of availableSceneModes,<wbr>
   2581           with 3 entires for each scene mode.<wbr>  The overrides listed
   2582           for SCENE_<wbr>MODE_<wbr>FACE_<wbr>PRIORITY are ignored,<wbr> since for that
   2583           mode,<wbr> the application-set aeMode,<wbr> awbMode,<wbr> and afMode are
   2584           used instead,<wbr> like they are when android.<wbr>control.<wbr>mode is
   2585           AUTO.<wbr>
   2586 <br>
   2587 <br>          It is recommended that for FACE_<wbr>PRIORITY,<wbr> the overrides
   2588           should be set to 0.<wbr> As an example,<wbr> if availableSceneModes is
   2589           { FACE_<wbr>PRIORITY,<wbr> ACTION,<wbr> NIGHT },<wbr> then the service expects
   2590           this field to have 9 entries; for example { 0 ,<wbr> 0,<wbr> 0,<wbr>
   2591           ON_<wbr>AUTO_<wbr>FLASH,<wbr> AUTO,<wbr> CONTINUOUS_<wbr>PICTURE,<wbr> ON_<wbr>AUTO_<wbr>FLASH,<wbr>
   2592           INCANDESCENT,<wbr> AUTO }
   2593             </td>
   2594 
   2595             <td class="entry_tags">
   2596               <ul class="entry_tags">
   2597                   <li><a href="#tag_BC">BC</a></li>
   2598               </ul>
   2599             </td>
   2600 
   2601           </tr> <!-- end of entry -->
   2602         
   2603         
   2604 
   2605       <!-- end of kind -->
   2606       </tbody>
   2607       <tr><td colspan="7" class="kind">dynamic</td></tr>
   2608 
   2609       <thead class="entries_header">
   2610         <tr>
   2611           <th class="th_name">Property Name</th>
   2612           <th class="th_type">Type</th>
   2613           <th class="th_description">Description</th>
   2614           <th class="th_units">Units</th>
   2615           <th class="th_range">Range</th>
   2616           <th class="th_notes">Notes</th>
   2617           <th class="th_tags">Tags</th>
   2618         </tr>
   2619       </thead>
   2620 
   2621       <tbody>
   2622 
   2623         
   2624 
   2625         
   2626 
   2627         
   2628 
   2629         
   2630 
   2631                 
   2632           <tr class="entry" id="dynamic_android.control.aePrecaptureId">
   2633             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Precapture<wbr>Id</td>
   2634             <td class="entry_type">
   2635                 <span class="entry_type_name">int32</span>
   2636 
   2637               <span class="entry_type_visibility"> [hidden]</span>
   2638 
   2639 
   2640             </td> <!-- entry_type -->
   2641 
   2642             <td class="entry_description">
   2643               The ID sent with the latest
   2644           CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING call
   2645             </td>
   2646 
   2647             <td class="entry_units">
   2648             </td>
   2649 
   2650             <td class="entry_range">
   2651             </td>
   2652 
   2653             <td class="entry_notes">
   2654               Must be 0 if no
   2655           CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING trigger received yet
   2656           by HAL.<wbr> Always updated even if AE algorithm ignores the
   2657           trigger
   2658             </td>
   2659 
   2660             <td class="entry_tags">
   2661             </td>
   2662 
   2663           </tr> <!-- end of entry -->
   2664         
   2665                 
   2666           <tr class="entry" id="dynamic_android.control.aeRegions">
   2667             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>Regions</td>
   2668             <td class="entry_type">
   2669                 <span class="entry_type_name">int32</span>
   2670                 <span class="entry_type_container">x</span>
   2671 
   2672                 <span class="entry_type_array">
   2673                   5 x area_count
   2674                 </span>
   2675               <span class="entry_type_visibility"> [public]</span>
   2676 
   2677 
   2678             </td> <!-- entry_type -->
   2679 
   2680             <td class="entry_description">
   2681               List of areas to use for
   2682           metering
   2683             </td>
   2684 
   2685             <td class="entry_units">
   2686             </td>
   2687 
   2688             <td class="entry_range">
   2689             </td>
   2690 
   2691             <td class="entry_notes">
   2692               Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   2693           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   2694           specified coordinates.<wbr>
   2695 <br>
   2696 <br>          The coordinate system is based on the active pixel array,<wbr>
   2697           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   2698           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   2699           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   2700           bottom-right pixel in the active pixel array.<wbr> The weight
   2701           should be nonnegative.<wbr>
   2702 <br>
   2703 <br>          If all regions have 0 weight,<wbr> then no specific metering area
   2704           needs to be used by the HAL.<wbr> If the metering region is
   2705           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   2706           should ignore the sections outside the region and output the
   2707           used sections in the frame metadata
   2708             </td>
   2709 
   2710             <td class="entry_tags">
   2711               <ul class="entry_tags">
   2712                   <li><a href="#tag_BC">BC</a></li>
   2713               </ul>
   2714             </td>
   2715 
   2716           </tr> <!-- end of entry -->
   2717         
   2718                 
   2719           <tr class="entry" id="dynamic_android.control.aeState">
   2720             <td class="entry_name">android.<wbr>control.<wbr>ae<wbr>State</td>
   2721             <td class="entry_type">
   2722                 <span class="entry_type_name entry_type_name_enum">byte</span>
   2723 
   2724               <span class="entry_type_visibility"> [public]</span>
   2725 
   2726                 <ul class="entry_type_enum">
   2727                   <li>
   2728                     <span class="entry_type_enum_name">INACTIVE</span>
   2729                     <span class="entry_type_enum_notes">AE is off.<wbr>  When a camera device is opened,<wbr> it starts in
   2730             this state.<wbr></span>
   2731                   </li>
   2732                   <li>
   2733                     <span class="entry_type_enum_name">SEARCHING</span>
   2734                     <span class="entry_type_enum_notes">AE doesn't yet have a good set of control values
   2735             for the current scene</span>
   2736                   </li>
   2737                   <li>
   2738                     <span class="entry_type_enum_name">CONVERGED</span>
   2739                     <span class="entry_type_enum_notes">AE has a good set of control values for the
   2740             current scene</span>
   2741                   </li>
   2742                   <li>
   2743                     <span class="entry_type_enum_name">LOCKED</span>
   2744                     <span class="entry_type_enum_notes">AE has been locked (aeMode =
   2745             LOCKED)</span>
   2746                   </li>
   2747                   <li>
   2748                     <span class="entry_type_enum_name">FLASH_REQUIRED</span>
   2749                     <span class="entry_type_enum_notes">AE has a good set of control values,<wbr> but flash
   2750             needs to be fired for good quality still
   2751             capture</span>
   2752                   </li>
   2753                   <li>
   2754                     <span class="entry_type_enum_name">PRECAPTURE</span>
   2755                     <span class="entry_type_enum_notes">AE has been asked to do a precapture sequence
   2756             (through the
   2757             trigger_<wbr>action(CAMERA2_<wbr>TRIGGER_<wbr>PRECAPTURE_<wbr>METERING)
   2758             call),<wbr> and is currently executing it.<wbr> Once PRECAPTURE
   2759             completes,<wbr> AE will transition to CONVERGED or
   2760             FLASH_<wbr>REQUIRED as appropriate</span>
   2761                   </li>
   2762                 </ul>
   2763 
   2764             </td> <!-- entry_type -->
   2765 
   2766             <td class="entry_description">
   2767               Current state of AE algorithm
   2768             </td>
   2769 
   2770             <td class="entry_units">
   2771             </td>
   2772 
   2773             <td class="entry_range">
   2774             </td>
   2775 
   2776             <td class="entry_notes">
   2777               Whenever the AE algorithm state changes,<wbr> a
   2778           MSG_<wbr>AUTOEXPOSURE notification must be send if a
   2779           notification callback is registered.<wbr>
   2780             </td>
   2781 
   2782             <td class="entry_tags">
   2783             </td>
   2784 
   2785           </tr> <!-- end of entry -->
   2786         
   2787                 
   2788           <tr class="entry" id="dynamic_android.control.afMode">
   2789             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Mode</td>
   2790             <td class="entry_type">
   2791                 <span class="entry_type_name entry_type_name_enum">byte</span>
   2792 
   2793               <span class="entry_type_visibility"> [public]</span>
   2794 
   2795                 <ul class="entry_type_enum">
   2796                   <li>
   2797                     <span class="entry_type_enum_name">OFF</span>
   2798                     <span class="entry_type_enum_notes">The 3A routines do not control the lens;
   2799             android.<wbr>lens.<wbr>focus<wbr>Distance is controlled by the
   2800             application</span>
   2801                   </li>
   2802                   <li>
   2803                     <span class="entry_type_enum_name">AUTO</span>
   2804                     <span class="entry_type_enum_notes">if lens is not fixed focus.<wbr>
   2805 
   2806             Use android.<wbr>lens.<wbr>minimum<wbr>Focus<wbr>Distance to determine if lens
   2807             is fixed focus In this mode,<wbr> the lens does not move unless
   2808             the autofocus trigger action is called.<wbr> When that trigger
   2809             is activated,<wbr> AF must transition to ACTIVE_<wbr>SCAN,<wbr> then to
   2810             the outcome of the scan (FOCUSED or
   2811             NOT_<wbr>FOCUSED).<wbr>
   2812 
   2813             Triggering cancel AF resets the lens position to default,<wbr>
   2814             and sets the AF state to INACTIVE.<wbr></span>
   2815                   </li>
   2816                   <li>
   2817                     <span class="entry_type_enum_name">MACRO</span>
   2818                     <span class="entry_type_enum_notes">In this mode,<wbr> the lens does not move unless the
   2819             autofocus trigger action is called.<wbr>
   2820 
   2821             When that trigger is activated,<wbr> AF must transition to
   2822             ACTIVE_<wbr>SCAN,<wbr> then to the outcome of the scan (FOCUSED or
   2823             NOT_<wbr>FOCUSED).<wbr>  Triggering cancel AF resets the lens
   2824             position to default,<wbr> and sets the AF state to
   2825             INACTIVE.<wbr></span>
   2826                   </li>
   2827                   <li>
   2828                     <span class="entry_type_enum_name">CONTINUOUS_VIDEO</span>
   2829                     <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
   2830             position continually to attempt to provide a
   2831             constantly-in-focus image stream.<wbr>
   2832 
   2833             The focusing behavior should be suitable for good quality
   2834             video recording; typically this means slower focus
   2835             movement and no overshoots.<wbr> When the AF trigger is not
   2836             involved,<wbr> the AF algorithm should start in INACTIVE state,<wbr>
   2837             and then transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED
   2838             states as appropriate.<wbr> When the AF trigger is activated,<wbr>
   2839             the algorithm should immediately transition into
   2840             AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
   2841             lens position until a cancel AF trigger is received.<wbr>
   2842 
   2843             Once cancel is received,<wbr> the algorithm should transition
   2844             back to INACTIVE and resume passive scan.<wbr> Note that this
   2845             behavior is not identical to CONTINUOUS_<wbr>PICTURE,<wbr> since an
   2846             ongoing PASSIVE_<wbr>SCAN must immediately be
   2847             canceled.<wbr></span>
   2848                   </li>
   2849                   <li>
   2850                     <span class="entry_type_enum_name">CONTINUOUS_PICTURE</span>
   2851                     <span class="entry_type_enum_notes">In this mode,<wbr> the AF algorithm modifies the lens
   2852             position continually to attempt to provide a
   2853             constantly-in-focus image stream.<wbr>
   2854 
   2855             The focusing behavior should be suitable for still image
   2856             capture; typically this means focusing as fast as
   2857             possible.<wbr> When the AF trigger is not involved,<wbr> the AF
   2858             algorithm should start in INACTIVE state,<wbr> and then
   2859             transition into PASSIVE_<wbr>SCAN and PASSIVE_<wbr>FOCUSED states as
   2860             appropriate as it attempts to maintain focus.<wbr> When the AF
   2861             trigger is activated,<wbr> the algorithm should finish its
   2862             PASSIVE_<wbr>SCAN if active,<wbr> and then transition into
   2863             AF_<wbr>FOCUSED or AF_<wbr>NOT_<wbr>FOCUSED as appropriate,<wbr> and lock the
   2864             lens position until a cancel AF trigger is received.<wbr>
   2865 
   2866             When the AF cancel trigger is activated,<wbr> the algorithm
   2867             should transition back to INACTIVE and then act as if it
   2868             has just been started.<wbr></span>
   2869                   </li>
   2870                   <li>
   2871                     <span class="entry_type_enum_name">EDOF</span>
   2872                     <span class="entry_type_enum_notes">Extended depth of field (digital focus).<wbr> AF
   2873             trigger is ignored,<wbr> AF state should always be
   2874             INACTIVE.<wbr></span>
   2875                   </li>
   2876                 </ul>
   2877 
   2878             </td> <!-- entry_type -->
   2879 
   2880             <td class="entry_description">
   2881               Whether AF is currently enabled,<wbr> and what
   2882           mode it is set to
   2883             </td>
   2884 
   2885             <td class="entry_units">
   2886             </td>
   2887 
   2888             <td class="entry_range">
   2889             </td>
   2890 
   2891             <td class="entry_notes">
   2892             </td>
   2893 
   2894             <td class="entry_tags">
   2895               <ul class="entry_tags">
   2896                   <li><a href="#tag_BC">BC</a></li>
   2897               </ul>
   2898             </td>
   2899 
   2900           </tr> <!-- end of entry -->
   2901         
   2902                 
   2903           <tr class="entry" id="dynamic_android.control.afRegions">
   2904             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Regions</td>
   2905             <td class="entry_type">
   2906                 <span class="entry_type_name">int32</span>
   2907                 <span class="entry_type_container">x</span>
   2908 
   2909                 <span class="entry_type_array">
   2910                   5 x area_count
   2911                 </span>
   2912               <span class="entry_type_visibility"> [public]</span>
   2913 
   2914 
   2915             </td> <!-- entry_type -->
   2916 
   2917             <td class="entry_description">
   2918               List of areas to use for focus
   2919           estimation
   2920             </td>
   2921 
   2922             <td class="entry_units">
   2923             </td>
   2924 
   2925             <td class="entry_range">
   2926             </td>
   2927 
   2928             <td class="entry_notes">
   2929               Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   2930           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   2931           specified coordinates.<wbr>
   2932 <br>
   2933 <br>          The coordinate system is based on the active pixel array,<wbr>
   2934           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   2935           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   2936           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   2937           bottom-right pixel in the active pixel array.<wbr> The weight
   2938           should be nonnegative.<wbr>
   2939 <br>
   2940 <br>          If all regions have 0 weight,<wbr> then no specific focus area
   2941           needs to be used by the HAL.<wbr> If the focusing region is
   2942           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   2943           should ignore the sections outside the region and output the
   2944           used sections in the frame metadata
   2945             </td>
   2946 
   2947             <td class="entry_tags">
   2948               <ul class="entry_tags">
   2949                   <li><a href="#tag_BC">BC</a></li>
   2950               </ul>
   2951             </td>
   2952 
   2953           </tr> <!-- end of entry -->
   2954         
   2955                 
   2956           <tr class="entry" id="dynamic_android.control.afState">
   2957             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>State</td>
   2958             <td class="entry_type">
   2959                 <span class="entry_type_name entry_type_name_enum">byte</span>
   2960 
   2961               <span class="entry_type_visibility"> [public]</span>
   2962 
   2963                 <ul class="entry_type_enum">
   2964                   <li>
   2965                     <span class="entry_type_enum_name">INACTIVE</span>
   2966                     <span class="entry_type_enum_notes">AF off or has not yet tried to scan/<wbr>been asked
   2967             to scan.<wbr>  When a camera device is opened,<wbr> it starts in
   2968             this state.<wbr></span>
   2969                   </li>
   2970                   <li>
   2971                     <span class="entry_type_enum_name">PASSIVE_SCAN</span>
   2972                     <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported.<wbr> AF is
   2973             currently doing an AF scan initiated by a continuous
   2974             autofocus mode</span>
   2975                   </li>
   2976                   <li>
   2977                     <span class="entry_type_enum_name">PASSIVE_FOCUSED</span>
   2978                     <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported.<wbr> AF currently
   2979             believes it is in focus,<wbr> but may restart scanning at
   2980             any time.<wbr></span>
   2981                   </li>
   2982                   <li>
   2983                     <span class="entry_type_enum_name">ACTIVE_SCAN</span>
   2984                     <span class="entry_type_enum_notes">if AUTO or MACRO modes are supported.<wbr> AF is doing
   2985             an AF scan because it was triggered by AF
   2986             trigger</span>
   2987                   </li>
   2988                   <li>
   2989                     <span class="entry_type_enum_name">FOCUSED_LOCKED</span>
   2990                     <span class="entry_type_enum_notes">if any AF mode besides OFF is supported.<wbr> AF
   2991             believes it is focused correctly and is
   2992             locked</span>
   2993                   </li>
   2994                   <li>
   2995                     <span class="entry_type_enum_name">NOT_FOCUSED_LOCKED</span>
   2996                     <span class="entry_type_enum_notes">if any AF mode besides OFF is supported.<wbr> AF has
   2997             failed to focus successfully and is
   2998             locked</span>
   2999                   </li>
   3000                   <li>
   3001                     <span class="entry_type_enum_name">PASSIVE_UNFOCUSED</span>
   3002                     <span class="entry_type_enum_notes">if CONTINUOUS_<wbr>* modes are supported.<wbr> AF finished a
   3003             passive scan without finding focus,<wbr> and may restart
   3004             scanning at any time.<wbr></span>
   3005                   </li>
   3006                 </ul>
   3007 
   3008             </td> <!-- entry_type -->
   3009 
   3010             <td class="entry_description">
   3011               Current state of AF algorithm
   3012             </td>
   3013 
   3014             <td class="entry_units">
   3015             </td>
   3016 
   3017             <td class="entry_range">
   3018             </td>
   3019 
   3020             <td class="entry_notes">
   3021               Whenever the AF algorithm state changes,<wbr> a
   3022           MSG_<wbr>AUTOFOCUS notification must be send if a notification
   3023           callback is registered.<wbr>
   3024             </td>
   3025 
   3026             <td class="entry_tags">
   3027             </td>
   3028 
   3029           </tr> <!-- end of entry -->
   3030         
   3031                 
   3032           <tr class="entry" id="dynamic_android.control.afTriggerId">
   3033             <td class="entry_name">android.<wbr>control.<wbr>af<wbr>Trigger<wbr>Id</td>
   3034             <td class="entry_type">
   3035                 <span class="entry_type_name">int32</span>
   3036 
   3037               <span class="entry_type_visibility"> [hidden]</span>
   3038 
   3039 
   3040             </td> <!-- entry_type -->
   3041 
   3042             <td class="entry_description">
   3043               The ID sent with the latest
   3044           CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS call
   3045             </td>
   3046 
   3047             <td class="entry_units">
   3048             </td>
   3049 
   3050             <td class="entry_range">
   3051             </td>
   3052 
   3053             <td class="entry_notes">
   3054               Must be 0 if no CAMERA2_<wbr>TRIGGER_<wbr>AUTOFOCUS trigger
   3055           received yet by HAL.<wbr> Always updated even if AF algorithm
   3056           ignores the trigger
   3057             </td>
   3058 
   3059             <td class="entry_tags">
   3060             </td>
   3061 
   3062           </tr> <!-- end of entry -->
   3063         
   3064                 
   3065           <tr class="entry" id="dynamic_android.control.awbMode">
   3066             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Mode</td>
   3067             <td class="entry_type">
   3068                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3069 
   3070               <span class="entry_type_visibility"> [public]</span>
   3071 
   3072                 <ul class="entry_type_enum">
   3073                   <li>
   3074                     <span class="entry_type_enum_name">OFF</span>
   3075                   </li>
   3076                   <li>
   3077                     <span class="entry_type_enum_name">AUTO</span>
   3078                   </li>
   3079                   <li>
   3080                     <span class="entry_type_enum_name">INCANDESCENT</span>
   3081                   </li>
   3082                   <li>
   3083                     <span class="entry_type_enum_name">FLUORESCENT</span>
   3084                   </li>
   3085                   <li>
   3086                     <span class="entry_type_enum_name">WARM_FLUORESCENT</span>
   3087                   </li>
   3088                   <li>
   3089                     <span class="entry_type_enum_name">DAYLIGHT</span>
   3090                   </li>
   3091                   <li>
   3092                     <span class="entry_type_enum_name">CLOUDY_DAYLIGHT</span>
   3093                   </li>
   3094                   <li>
   3095                     <span class="entry_type_enum_name">TWILIGHT</span>
   3096                   </li>
   3097                   <li>
   3098                     <span class="entry_type_enum_name">SHADE</span>
   3099                   </li>
   3100                 </ul>
   3101 
   3102             </td> <!-- entry_type -->
   3103 
   3104             <td class="entry_description">
   3105               Whether AWB is currently setting the color
   3106           transform fields,<wbr> and what its illumination target
   3107           is
   3108             </td>
   3109 
   3110             <td class="entry_units">
   3111             </td>
   3112 
   3113             <td class="entry_range">
   3114             </td>
   3115 
   3116             <td class="entry_notes">
   3117               [BC - AWB lock,<wbr>AWB modes]
   3118             </td>
   3119 
   3120             <td class="entry_tags">
   3121               <ul class="entry_tags">
   3122                   <li><a href="#tag_BC">BC</a></li>
   3123                   <li><a href="#tag_AWB">AWB</a></li>
   3124               </ul>
   3125             </td>
   3126 
   3127           </tr> <!-- end of entry -->
   3128         
   3129                 
   3130           <tr class="entry" id="dynamic_android.control.awbRegions">
   3131             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>Regions</td>
   3132             <td class="entry_type">
   3133                 <span class="entry_type_name">int32</span>
   3134                 <span class="entry_type_container">x</span>
   3135 
   3136                 <span class="entry_type_array">
   3137                   5 x area_count
   3138                 </span>
   3139               <span class="entry_type_visibility"> [public]</span>
   3140 
   3141 
   3142             </td> <!-- entry_type -->
   3143 
   3144             <td class="entry_description">
   3145               List of areas to use for illuminant
   3146           estimation
   3147             </td>
   3148 
   3149             <td class="entry_units">
   3150             </td>
   3151 
   3152             <td class="entry_range">
   3153             </td>
   3154 
   3155             <td class="entry_notes">
   3156               Only used in AUTO mode.<wbr>
   3157 <br>
   3158 <br>          Each area is a rectangle plus weight: xmin,<wbr> ymin,<wbr>
   3159           xmax,<wbr> ymax,<wbr> weight.<wbr> The rectangle is defined inclusive of the
   3160           specified coordinates.<wbr>
   3161 <br>
   3162 <br>          The coordinate system is based on the active pixel array,<wbr>
   3163           with (0,<wbr>0) being the top-left pixel in the active pixel array,<wbr> and
   3164           (android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>width - 1,<wbr>
   3165           android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size.<wbr>height - 1) being the
   3166           bottom-right pixel in the active pixel array.<wbr> The weight
   3167           should be nonnegative.<wbr>
   3168 <br>
   3169 <br>          If all regions have 0 weight,<wbr> then no specific metering area
   3170           needs to be used by the HAL.<wbr> If the metering region is
   3171           outside the current android.<wbr>scaler.<wbr>crop<wbr>Region,<wbr> the HAL
   3172           should ignore the sections outside the region and output the
   3173           used sections in the frame metadata
   3174             </td>
   3175 
   3176             <td class="entry_tags">
   3177               <ul class="entry_tags">
   3178                   <li><a href="#tag_BC">BC</a></li>
   3179               </ul>
   3180             </td>
   3181 
   3182           </tr> <!-- end of entry -->
   3183         
   3184                 
   3185           <tr class="entry" id="dynamic_android.control.awbState">
   3186             <td class="entry_name">android.<wbr>control.<wbr>awb<wbr>State</td>
   3187             <td class="entry_type">
   3188                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3189 
   3190               <span class="entry_type_visibility"> [public]</span>
   3191 
   3192                 <ul class="entry_type_enum">
   3193                   <li>
   3194                     <span class="entry_type_enum_name">INACTIVE</span>
   3195                     <span class="entry_type_enum_notes">AWB is not in auto mode.<wbr>  When a camera device is opened,<wbr> it
   3196             starts in this state.<wbr></span>
   3197                   </li>
   3198                   <li>
   3199                     <span class="entry_type_enum_name">SEARCHING</span>
   3200                     <span class="entry_type_enum_notes">AWB doesn't yet have a good set of control
   3201             values for the current scene</span>
   3202                   </li>
   3203                   <li>
   3204                     <span class="entry_type_enum_name">CONVERGED</span>
   3205                     <span class="entry_type_enum_notes">AWB has a good set of control values for the
   3206             current scene</span>
   3207                   </li>
   3208                   <li>
   3209                     <span class="entry_type_enum_name">LOCKED</span>
   3210                     <span class="entry_type_enum_notes">AE has been locked (aeMode =
   3211             LOCKED)</span>
   3212                   </li>
   3213                 </ul>
   3214 
   3215             </td> <!-- entry_type -->
   3216 
   3217             <td class="entry_description">
   3218               Current state of AWB algorithm
   3219             </td>
   3220 
   3221             <td class="entry_units">
   3222             </td>
   3223 
   3224             <td class="entry_range">
   3225             </td>
   3226 
   3227             <td class="entry_notes">
   3228               Whenever the AWB algorithm state changes,<wbr> a
   3229           MSG_<wbr>AUTOWHITEBALANCE notification must be send if a
   3230           notification callback is registered.<wbr>
   3231             </td>
   3232 
   3233             <td class="entry_tags">
   3234             </td>
   3235 
   3236           </tr> <!-- end of entry -->
   3237         
   3238                 
   3239           <tr class="entry" id="dynamic_android.control.mode">
   3240             <td class="entry_name">android.<wbr>control.<wbr>mode</td>
   3241             <td class="entry_type">
   3242                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3243 
   3244               <span class="entry_type_visibility"> [public]</span>
   3245 
   3246                 <ul class="entry_type_enum">
   3247                   <li>
   3248                     <span class="entry_type_enum_name">OFF</span>
   3249                     <span class="entry_type_enum_notes">Full application control of pipeline.<wbr> All 3A
   3250             routines are disabled,<wbr> no other settings in
   3251             android.<wbr>control.<wbr>* have any effect</span>
   3252                   </li>
   3253                   <li>
   3254                     <span class="entry_type_enum_name">AUTO</span>
   3255                     <span class="entry_type_enum_notes">Use settings for each individual 3A routine.<wbr>
   3256             Manual control of capture parameters is disabled.<wbr> All
   3257             controls in android.<wbr>control.<wbr>* besides sceneMode take
   3258             effect</span>
   3259                   </li>
   3260                   <li>
   3261                     <span class="entry_type_enum_name">USE_SCENE_MODE</span>
   3262                     <span class="entry_type_enum_notes">Use specific scene mode.<wbr> Enabling this disables
   3263             control.<wbr>aeMode,<wbr> control.<wbr>awbMode and control.<wbr>afMode
   3264             controls; the HAL must ignore those settings while
   3265             USE_<wbr>SCENE_<wbr>MODE is active (except for FACE_<wbr>PRIORITY
   3266             scene mode).<wbr> Other control entries are still active.<wbr>
   3267             This setting can only be used if availableSceneModes !=
   3268             UNSUPPORTED</span>
   3269                   </li>
   3270                 </ul>
   3271 
   3272             </td> <!-- entry_type -->
   3273 
   3274             <td class="entry_description">
   3275               Overall mode of 3A control
   3276           routines
   3277             </td>
   3278 
   3279             <td class="entry_units">
   3280             </td>
   3281 
   3282             <td class="entry_range">
   3283               all must be supported
   3284             </td>
   3285 
   3286             <td class="entry_notes">
   3287             </td>
   3288 
   3289             <td class="entry_tags">
   3290               <ul class="entry_tags">
   3291                   <li><a href="#tag_BC">BC</a></li>
   3292               </ul>
   3293             </td>
   3294 
   3295           </tr> <!-- end of entry -->
   3296         
   3297         
   3298 
   3299       <!-- end of kind -->
   3300       </tbody>
   3301 
   3302   <!-- end of section -->
   3303   <tr><td colspan="7" id="section_demosaic" class="section">demosaic</td></tr>
   3304 
   3305 
   3306       <tr><td colspan="7" class="kind">controls</td></tr>
   3307 
   3308       <thead class="entries_header">
   3309         <tr>
   3310           <th class="th_name">Property Name</th>
   3311           <th class="th_type">Type</th>
   3312           <th class="th_description">Description</th>
   3313           <th class="th_units">Units</th>
   3314           <th class="th_range">Range</th>
   3315           <th class="th_notes">Notes</th>
   3316           <th class="th_tags">Tags</th>
   3317         </tr>
   3318       </thead>
   3319 
   3320       <tbody>
   3321 
   3322         
   3323 
   3324         
   3325 
   3326         
   3327 
   3328         
   3329 
   3330                 
   3331           <tr class="entry" id="controls_android.demosaic.mode">
   3332             <td class="entry_name">android.<wbr>demosaic.<wbr>mode</td>
   3333             <td class="entry_type">
   3334                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3335 
   3336               <span class="entry_type_visibility"> [system]</span>
   3337 
   3338                 <ul class="entry_type_enum">
   3339                   <li>
   3340                     <span class="entry_type_enum_name">FAST</span>
   3341                     <span class="entry_type_enum_notes">Minimal or no slowdown of frame rate compared to
   3342             Bayer RAW output</span>
   3343                   </li>
   3344                   <li>
   3345                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   3346                     <span class="entry_type_enum_notes">High-quality may reduce output frame
   3347             rate</span>
   3348                   </li>
   3349                 </ul>
   3350 
   3351             </td> <!-- entry_type -->
   3352 
   3353             <td class="entry_description">
   3354               Controls the quality of the demosaicing
   3355           processing
   3356             </td>
   3357 
   3358             <td class="entry_units">
   3359             </td>
   3360 
   3361             <td class="entry_range">
   3362             </td>
   3363 
   3364             <td class="entry_notes">
   3365             </td>
   3366 
   3367             <td class="entry_tags">
   3368               <ul class="entry_tags">
   3369                   <li><a href="#tag_V1">V1</a></li>
   3370               </ul>
   3371             </td>
   3372 
   3373           </tr> <!-- end of entry -->
   3374         
   3375         
   3376 
   3377       <!-- end of kind -->
   3378       </tbody>
   3379 
   3380   <!-- end of section -->
   3381   <tr><td colspan="7" id="section_edge" class="section">edge</td></tr>
   3382 
   3383 
   3384       <tr><td colspan="7" class="kind">controls</td></tr>
   3385 
   3386       <thead class="entries_header">
   3387         <tr>
   3388           <th class="th_name">Property Name</th>
   3389           <th class="th_type">Type</th>
   3390           <th class="th_description">Description</th>
   3391           <th class="th_units">Units</th>
   3392           <th class="th_range">Range</th>
   3393           <th class="th_notes">Notes</th>
   3394           <th class="th_tags">Tags</th>
   3395         </tr>
   3396       </thead>
   3397 
   3398       <tbody>
   3399 
   3400         
   3401 
   3402         
   3403 
   3404         
   3405 
   3406         
   3407 
   3408                 
   3409           <tr class="entry" id="controls_android.edge.mode">
   3410             <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
   3411             <td class="entry_type">
   3412                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3413 
   3414               <span class="entry_type_visibility"> [public]</span>
   3415 
   3416                 <ul class="entry_type_enum">
   3417                   <li>
   3418                     <span class="entry_type_enum_name">OFF</span>
   3419                     <span class="entry_type_enum_notes">No edge enhancement is applied</span>
   3420                   </li>
   3421                   <li>
   3422                     <span class="entry_type_enum_name">FAST</span>
   3423                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   3424             bayer output</span>
   3425                   </li>
   3426                   <li>
   3427                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   3428                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   3429             quality</span>
   3430                   </li>
   3431                 </ul>
   3432 
   3433             </td> <!-- entry_type -->
   3434 
   3435             <td class="entry_description">
   3436               Operation mode for edge
   3437           enhancement
   3438             </td>
   3439 
   3440             <td class="entry_units">
   3441             </td>
   3442 
   3443             <td class="entry_range">
   3444             </td>
   3445 
   3446             <td class="entry_notes">
   3447             </td>
   3448 
   3449             <td class="entry_tags">
   3450             </td>
   3451 
   3452           </tr> <!-- end of entry -->
   3453         
   3454                 
   3455           <tr class="entry" id="controls_android.edge.strength">
   3456             <td class="entry_name">android.<wbr>edge.<wbr>strength</td>
   3457             <td class="entry_type">
   3458                 <span class="entry_type_name">byte</span>
   3459 
   3460               <span class="entry_type_visibility"> [system]</span>
   3461 
   3462 
   3463             </td> <!-- entry_type -->
   3464 
   3465             <td class="entry_description">
   3466               Control the amount of edge enhancement
   3467           applied to the images
   3468             </td>
   3469 
   3470             <td class="entry_units">
   3471               1-10; 10 is maximum sharpening
   3472             </td>
   3473 
   3474             <td class="entry_range">
   3475             </td>
   3476 
   3477             <td class="entry_notes">
   3478             </td>
   3479 
   3480             <td class="entry_tags">
   3481             </td>
   3482 
   3483           </tr> <!-- end of entry -->
   3484         
   3485         
   3486 
   3487       <!-- end of kind -->
   3488       </tbody>
   3489       <tr><td colspan="7" class="kind">dynamic</td></tr>
   3490 
   3491       <thead class="entries_header">
   3492         <tr>
   3493           <th class="th_name">Property Name</th>
   3494           <th class="th_type">Type</th>
   3495           <th class="th_description">Description</th>
   3496           <th class="th_units">Units</th>
   3497           <th class="th_range">Range</th>
   3498           <th class="th_notes">Notes</th>
   3499           <th class="th_tags">Tags</th>
   3500         </tr>
   3501       </thead>
   3502 
   3503       <tbody>
   3504 
   3505         
   3506 
   3507         
   3508 
   3509         
   3510 
   3511         
   3512 
   3513                 
   3514           <tr class="entry" id="dynamic_android.edge.mode">
   3515             <td class="entry_name">android.<wbr>edge.<wbr>mode</td>
   3516             <td class="entry_type">
   3517                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3518 
   3519               <span class="entry_type_visibility"> [public]</span>
   3520 
   3521                 <ul class="entry_type_enum">
   3522                   <li>
   3523                     <span class="entry_type_enum_name">OFF</span>
   3524                     <span class="entry_type_enum_notes">No edge enhancement is applied</span>
   3525                   </li>
   3526                   <li>
   3527                     <span class="entry_type_enum_name">FAST</span>
   3528                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   3529             bayer output</span>
   3530                   </li>
   3531                   <li>
   3532                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   3533                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   3534             quality</span>
   3535                   </li>
   3536                 </ul>
   3537 
   3538             </td> <!-- entry_type -->
   3539 
   3540             <td class="entry_description">
   3541               Operation mode for edge
   3542           enhancement
   3543             </td>
   3544 
   3545             <td class="entry_units">
   3546             </td>
   3547 
   3548             <td class="entry_range">
   3549             </td>
   3550 
   3551             <td class="entry_notes">
   3552             </td>
   3553 
   3554             <td class="entry_tags">
   3555             </td>
   3556 
   3557           </tr> <!-- end of entry -->
   3558         
   3559         
   3560 
   3561       <!-- end of kind -->
   3562       </tbody>
   3563 
   3564   <!-- end of section -->
   3565   <tr><td colspan="7" id="section_flash" class="section">flash</td></tr>
   3566 
   3567 
   3568       <tr><td colspan="7" class="kind">controls</td></tr>
   3569 
   3570       <thead class="entries_header">
   3571         <tr>
   3572           <th class="th_name">Property Name</th>
   3573           <th class="th_type">Type</th>
   3574           <th class="th_description">Description</th>
   3575           <th class="th_units">Units</th>
   3576           <th class="th_range">Range</th>
   3577           <th class="th_notes">Notes</th>
   3578           <th class="th_tags">Tags</th>
   3579         </tr>
   3580       </thead>
   3581 
   3582       <tbody>
   3583 
   3584         
   3585 
   3586         
   3587 
   3588         
   3589 
   3590         
   3591 
   3592                 
   3593           <tr class="entry" id="controls_android.flash.firingPower">
   3594             <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
   3595             <td class="entry_type">
   3596                 <span class="entry_type_name">byte</span>
   3597 
   3598               <span class="entry_type_visibility"> [system]</span>
   3599 
   3600 
   3601             </td> <!-- entry_type -->
   3602 
   3603             <td class="entry_description">
   3604               Power for flash firing/<wbr>torch
   3605             </td>
   3606 
   3607             <td class="entry_units">
   3608               10 is max power; 0 is no flash.<wbr> Linear
   3609             </td>
   3610 
   3611             <td class="entry_range">
   3612               0 - 10
   3613             </td>
   3614 
   3615             <td class="entry_notes">
   3616               Power for snapshot may use a different scale than
   3617           for torch mode.<wbr> Only one entry for torch mode will be
   3618           used
   3619             </td>
   3620 
   3621             <td class="entry_tags">
   3622               <ul class="entry_tags">
   3623                   <li><a href="#tag_V1">V1</a></li>
   3624               </ul>
   3625             </td>
   3626 
   3627           </tr> <!-- end of entry -->
   3628         
   3629                 
   3630           <tr class="entry" id="controls_android.flash.firingTime">
   3631             <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
   3632             <td class="entry_type">
   3633                 <span class="entry_type_name">int64</span>
   3634 
   3635               <span class="entry_type_visibility"> [system]</span>
   3636 
   3637 
   3638             </td> <!-- entry_type -->
   3639 
   3640             <td class="entry_description">
   3641               Firing time of flash relative to start of
   3642           exposure
   3643             </td>
   3644 
   3645             <td class="entry_units">
   3646               nanoseconds
   3647             </td>
   3648 
   3649             <td class="entry_range">
   3650               0-(exposure time-flash duration)
   3651             </td>
   3652 
   3653             <td class="entry_notes">
   3654               Clamped to (0,<wbr> exposure time - flash
   3655           duration).<wbr>
   3656             </td>
   3657 
   3658             <td class="entry_tags">
   3659               <ul class="entry_tags">
   3660                   <li><a href="#tag_V1">V1</a></li>
   3661               </ul>
   3662             </td>
   3663 
   3664           </tr> <!-- end of entry -->
   3665         
   3666                 
   3667           <tr class="entry" id="controls_android.flash.mode">
   3668             <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
   3669             <td class="entry_type">
   3670                 <span class="entry_type_name entry_type_name_enum">byte</span>
   3671 
   3672               <span class="entry_type_visibility"> [public]</span>
   3673 
   3674                 <ul class="entry_type_enum">
   3675                   <li>
   3676                     <span class="entry_type_enum_name">OFF</span>
   3677                     <span class="entry_type_enum_notes">Do not fire the flash for this
   3678             capture</span>
   3679                   </li>
   3680                   <li>
   3681                     <span class="entry_type_enum_name">SINGLE</span>
   3682                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
   3683             for this capture based on firingPower,<wbr>
   3684             firingTime.<wbr></span>
   3685                   </li>
   3686                   <li>
   3687                     <span class="entry_type_enum_name">TORCH</span>
   3688                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
   3689             continuously on,<wbr> power set by
   3690             firingPower</span>
   3691                   </li>
   3692                 </ul>
   3693 
   3694             </td> <!-- entry_type -->
   3695 
   3696             <td class="entry_description">
   3697               Select flash operation mode
   3698             </td>
   3699 
   3700             <td class="entry_units">
   3701             </td>
   3702 
   3703             <td class="entry_range">
   3704             </td>
   3705 
   3706             <td class="entry_notes">
   3707             </td>
   3708 
   3709             <td class="entry_tags">
   3710               <ul class="entry_tags">
   3711                   <li><a href="#tag_BC">BC</a></li>
   3712               </ul>
   3713             </td>
   3714 
   3715           </tr> <!-- end of entry -->
   3716         
   3717         
   3718 
   3719       <!-- end of kind -->
   3720       </tbody>
   3721       <tr><td colspan="7" class="kind">static</td></tr>
   3722 
   3723       <thead class="entries_header">
   3724         <tr>
   3725           <th class="th_name">Property Name</th>
   3726           <th class="th_type">Type</th>
   3727           <th class="th_description">Description</th>
   3728           <th class="th_units">Units</th>
   3729           <th class="th_range">Range</th>
   3730           <th class="th_notes">Notes</th>
   3731           <th class="th_tags">Tags</th>
   3732         </tr>
   3733       </thead>
   3734 
   3735       <tbody>
   3736 
   3737         
   3738 
   3739         
   3740 
   3741         
   3742 
   3743         
   3744                 
   3745             
   3746 
   3747                 
   3748           <tr class="entry" id="static_android.flash.info.available">
   3749             <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>available</td>
   3750             <td class="entry_type">
   3751                 <span class="entry_type_name">byte</span>
   3752 
   3753               <span class="entry_type_visibility"> [public]</span>
   3754 
   3755 
   3756             </td> <!-- entry_type -->
   3757 
   3758             <td class="entry_description">
   3759               Whether this camera has a
   3760             flash
   3761             </td>
   3762 
   3763             <td class="entry_units">
   3764               boolean (0 = false,<wbr> otherwise true)
   3765             </td>
   3766 
   3767             <td class="entry_range">
   3768             </td>
   3769 
   3770             <td class="entry_notes">
   3771               If no flash,<wbr> none of the flash controls do
   3772             anything.<wbr> All other metadata should return 0
   3773             </td>
   3774 
   3775             <td class="entry_tags">
   3776               <ul class="entry_tags">
   3777                   <li><a href="#tag_BC">BC</a></li>
   3778               </ul>
   3779             </td>
   3780 
   3781           </tr> <!-- end of entry -->
   3782         
   3783                 
   3784           <tr class="entry" id="static_android.flash.info.chargeDuration">
   3785             <td class="entry_name">android.<wbr>flash.<wbr>info.<wbr>charge<wbr>Duration</td>
   3786             <td class="entry_type">
   3787                 <span class="entry_type_name">int64</span>
   3788 
   3789               <span class="entry_type_visibility"> [system]</span>
   3790 
   3791 
   3792             </td> <!-- entry_type -->
   3793 
   3794             <td class="entry_description">
   3795               Time taken before flash can fire
   3796             again
   3797             </td>
   3798 
   3799             <td class="entry_units">
   3800               nanoseconds
   3801             </td>
   3802 
   3803             <td class="entry_range">
   3804               0-1e9
   3805             </td>
   3806 
   3807             <td class="entry_notes">
   3808               1 second too long/<wbr>too short for recharge? Should
   3809             this be power-dependent?
   3810             </td>
   3811 
   3812             <td class="entry_tags">
   3813               <ul class="entry_tags">
   3814                   <li><a href="#tag_V1">V1</a></li>
   3815               </ul>
   3816             </td>
   3817 
   3818           </tr> <!-- end of entry -->
   3819         
   3820         
   3821         
   3822 
   3823                 
   3824           <tr class="entry" id="static_android.flash.colorTemperature">
   3825             <td class="entry_name">android.<wbr>flash.<wbr>color<wbr>Temperature</td>
   3826             <td class="entry_type">
   3827                 <span class="entry_type_name">byte</span>
   3828 
   3829               <span class="entry_type_visibility"> [system]</span>
   3830 
   3831 
   3832             </td> <!-- entry_type -->
   3833 
   3834             <td class="entry_description">
   3835               The x,<wbr>y whitepoint of the
   3836           flash
   3837             </td>
   3838 
   3839             <td class="entry_units">
   3840               pair of floats
   3841             </td>
   3842 
   3843             <td class="entry_range">
   3844               0-1 for both
   3845             </td>
   3846 
   3847             <td class="entry_notes">
   3848             </td>
   3849 
   3850             <td class="entry_tags">
   3851               <ul class="entry_tags">
   3852                   <li><a href="#tag_ADV">ADV</a></li>
   3853               </ul>
   3854             </td>
   3855 
   3856           </tr> <!-- end of entry -->
   3857         
   3858                 
   3859           <tr class="entry" id="static_android.flash.maxEnergy">
   3860             <td class="entry_name">android.<wbr>flash.<wbr>max<wbr>Energy</td>
   3861             <td class="entry_type">
   3862                 <span class="entry_type_name">byte</span>
   3863 
   3864               <span class="entry_type_visibility"> [system]</span>
   3865 
   3866 
   3867             </td> <!-- entry_type -->
   3868 
   3869             <td class="entry_description">
   3870               Max energy output of the flash for a full
   3871           power single flash
   3872             </td>
   3873 
   3874             <td class="entry_units">
   3875               lumen-seconds
   3876             </td>
   3877 
   3878             <td class="entry_range">
   3879               >= 0
   3880             </td>
   3881 
   3882             <td class="entry_notes">
   3883             </td>
   3884 
   3885             <td class="entry_tags">
   3886               <ul class="entry_tags">
   3887                   <li><a href="#tag_ADV">ADV</a></li>
   3888               </ul>
   3889             </td>
   3890 
   3891           </tr> <!-- end of entry -->
   3892         
   3893         
   3894 
   3895       <!-- end of kind -->
   3896       </tbody>
   3897       <tr><td colspan="7" class="kind">dynamic</td></tr>
   3898 
   3899       <thead class="entries_header">
   3900         <tr>
   3901           <th class="th_name">Property Name</th>
   3902           <th class="th_type">Type</th>
   3903           <th class="th_description">Description</th>
   3904           <th class="th_units">Units</th>
   3905           <th class="th_range">Range</th>
   3906           <th class="th_notes">Notes</th>
   3907           <th class="th_tags">Tags</th>
   3908         </tr>
   3909       </thead>
   3910 
   3911       <tbody>
   3912 
   3913         
   3914 
   3915         
   3916 
   3917         
   3918 
   3919         
   3920 
   3921                 
   3922           <tr class="entry" id="dynamic_android.flash.firingPower">
   3923             <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Power</td>
   3924             <td class="entry_type">
   3925                 <span class="entry_type_name">byte</span>
   3926 
   3927               <span class="entry_type_visibility"> [system]</span>
   3928 
   3929 
   3930             </td> <!-- entry_type -->
   3931 
   3932             <td class="entry_description">
   3933               Power for flash firing/<wbr>torch
   3934             </td>
   3935 
   3936             <td class="entry_units">
   3937               10 is max power; 0 is no flash.<wbr> Linear
   3938             </td>
   3939 
   3940             <td class="entry_range">
   3941               0 - 10
   3942             </td>
   3943 
   3944             <td class="entry_notes">
   3945               Power for snapshot may use a different scale than
   3946           for torch mode.<wbr> Only one entry for torch mode will be
   3947           used
   3948             </td>
   3949 
   3950             <td class="entry_tags">
   3951               <ul class="entry_tags">
   3952                   <li><a href="#tag_V1">V1</a></li>
   3953               </ul>
   3954             </td>
   3955 
   3956           </tr> <!-- end of entry -->
   3957         
   3958                 
   3959           <tr class="entry" id="dynamic_android.flash.firingTime">
   3960             <td class="entry_name">android.<wbr>flash.<wbr>firing<wbr>Time</td>
   3961             <td class="entry_type">
   3962                 <span class="entry_type_name">int64</span>
   3963 
   3964               <span class="entry_type_visibility"> [system]</span>
   3965 
   3966 
   3967             </td> <!-- entry_type -->
   3968 
   3969             <td class="entry_description">
   3970               Firing time of flash relative to start of
   3971           exposure
   3972             </td>
   3973 
   3974             <td class="entry_units">
   3975               nanoseconds
   3976             </td>
   3977 
   3978             <td class="entry_range">
   3979               0-(exposure time-flash duration)
   3980             </td>
   3981 
   3982             <td class="entry_notes">
   3983               Clamped to (0,<wbr> exposure time - flash
   3984           duration).<wbr>
   3985             </td>
   3986 
   3987             <td class="entry_tags">
   3988               <ul class="entry_tags">
   3989                   <li><a href="#tag_V1">V1</a></li>
   3990               </ul>
   3991             </td>
   3992 
   3993           </tr> <!-- end of entry -->
   3994         
   3995                 
   3996           <tr class="entry" id="dynamic_android.flash.mode">
   3997             <td class="entry_name">android.<wbr>flash.<wbr>mode</td>
   3998             <td class="entry_type">
   3999                 <span class="entry_type_name entry_type_name_enum">byte</span>
   4000 
   4001               <span class="entry_type_visibility"> [public]</span>
   4002 
   4003                 <ul class="entry_type_enum">
   4004                   <li>
   4005                     <span class="entry_type_enum_name">OFF</span>
   4006                     <span class="entry_type_enum_notes">Do not fire the flash for this
   4007             capture</span>
   4008                   </li>
   4009                   <li>
   4010                     <span class="entry_type_enum_name">SINGLE</span>
   4011                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Fire flash
   4012             for this capture based on firingPower,<wbr>
   4013             firingTime.<wbr></span>
   4014                   </li>
   4015                   <li>
   4016                     <span class="entry_type_enum_name">TORCH</span>
   4017                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash
   4018             continuously on,<wbr> power set by
   4019             firingPower</span>
   4020                   </li>
   4021                 </ul>
   4022 
   4023             </td> <!-- entry_type -->
   4024 
   4025             <td class="entry_description">
   4026               Select flash operation mode
   4027             </td>
   4028 
   4029             <td class="entry_units">
   4030             </td>
   4031 
   4032             <td class="entry_range">
   4033             </td>
   4034 
   4035             <td class="entry_notes">
   4036             </td>
   4037 
   4038             <td class="entry_tags">
   4039               <ul class="entry_tags">
   4040                   <li><a href="#tag_BC">BC</a></li>
   4041               </ul>
   4042             </td>
   4043 
   4044           </tr> <!-- end of entry -->
   4045         
   4046                 
   4047           <tr class="entry" id="dynamic_android.flash.state">
   4048             <td class="entry_name">android.<wbr>flash.<wbr>state</td>
   4049             <td class="entry_type">
   4050                 <span class="entry_type_name entry_type_name_enum">byte</span>
   4051 
   4052               <span class="entry_type_visibility"> [public]</span>
   4053 
   4054                 <ul class="entry_type_enum">
   4055                   <li>
   4056                     <span class="entry_type_enum_name">UNAVAILABLE</span>
   4057                     <span class="entry_type_enum_notes">No flash on camera</span>
   4058                   </li>
   4059                   <li>
   4060                     <span class="entry_type_enum_name">CHARGING</span>
   4061                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
   4062             charging and cannot be fired</span>
   4063                   </li>
   4064                   <li>
   4065                     <span class="entry_type_enum_name">READY</span>
   4066                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash is
   4067             ready to fire</span>
   4068                   </li>
   4069                   <li>
   4070                     <span class="entry_type_enum_name">FIRED</span>
   4071                     <span class="entry_type_enum_notes">if android.<wbr>flash.<wbr>available is true Flash fired
   4072             for this capture</span>
   4073                   </li>
   4074                 </ul>
   4075 
   4076             </td> <!-- entry_type -->
   4077 
   4078             <td class="entry_description">
   4079               Current state of the flash
   4080           unit
   4081             </td>
   4082 
   4083             <td class="entry_units">
   4084             </td>
   4085 
   4086             <td class="entry_range">
   4087             </td>
   4088 
   4089             <td class="entry_notes">
   4090             </td>
   4091 
   4092             <td class="entry_tags">
   4093             </td>
   4094 
   4095           </tr> <!-- end of entry -->
   4096         
   4097         
   4098 
   4099       <!-- end of kind -->
   4100       </tbody>
   4101 
   4102   <!-- end of section -->
   4103   <tr><td colspan="7" id="section_geometric" class="section">geometric</td></tr>
   4104 
   4105 
   4106       <tr><td colspan="7" class="kind">controls</td></tr>
   4107 
   4108       <thead class="entries_header">
   4109         <tr>
   4110           <th class="th_name">Property Name</th>
   4111           <th class="th_type">Type</th>
   4112           <th class="th_description">Description</th>
   4113           <th class="th_units">Units</th>
   4114           <th class="th_range">Range</th>
   4115           <th class="th_notes">Notes</th>
   4116           <th class="th_tags">Tags</th>
   4117         </tr>
   4118       </thead>
   4119 
   4120       <tbody>
   4121 
   4122         
   4123 
   4124         
   4125 
   4126         
   4127 
   4128         
   4129 
   4130                 
   4131           <tr class="entry" id="controls_android.geometric.mode">
   4132             <td class="entry_name">android.<wbr>geometric.<wbr>mode</td>
   4133             <td class="entry_type">
   4134                 <span class="entry_type_name entry_type_name_enum">byte</span>
   4135 
   4136               <span class="entry_type_visibility"> [system]</span>
   4137 
   4138                 <ul class="entry_type_enum">
   4139                   <li>
   4140                     <span class="entry_type_enum_name">OFF</span>
   4141                     <span class="entry_type_enum_notes">No geometric correction is
   4142             applied</span>
   4143                   </li>
   4144                   <li>
   4145                     <span class="entry_type_enum_name">FAST</span>
   4146                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   4147             bayer output</span>
   4148                   </li>
   4149                   <li>
   4150                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   4151                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   4152             quality</span>
   4153                   </li>
   4154                 </ul>
   4155 
   4156             </td> <!-- entry_type -->
   4157 
   4158             <td class="entry_description">
   4159               Operating mode of geometric
   4160           correction
   4161             </td>
   4162 
   4163             <td class="entry_units">
   4164             </td>
   4165 
   4166             <td class="entry_range">
   4167             </td>
   4168 
   4169             <td class="entry_notes">
   4170             </td>
   4171 
   4172             <td class="entry_tags">
   4173             </td>
   4174 
   4175           </tr> <!-- end of entry -->
   4176         
   4177                 
   4178           <tr class="entry" id="controls_android.geometric.strength">
   4179             <td class="entry_name">android.<wbr>geometric.<wbr>strength</td>
   4180             <td class="entry_type">
   4181                 <span class="entry_type_name">byte</span>
   4182 
   4183               <span class="entry_type_visibility"> [system]</span>
   4184 
   4185 
   4186             </td> <!-- entry_type -->
   4187 
   4188             <td class="entry_description">
   4189               Control the amount of shading correction
   4190           applied to the images
   4191             </td>
   4192 
   4193             <td class="entry_units">
   4194               unitless: 1-10; 10 is full shading
   4195           compensation
   4196             </td>
   4197 
   4198             <td class="entry_range">
   4199             </td>
   4200 
   4201             <td class="entry_notes">
   4202             </td>
   4203 
   4204             <td class="entry_tags">
   4205               <ul class="entry_tags">
   4206                   <li><a href="#tag_ADV">ADV</a></li>
   4207               </ul>
   4208             </td>
   4209 
   4210           </tr> <!-- end of entry -->
   4211         
   4212         
   4213 
   4214       <!-- end of kind -->
   4215       </tbody>
   4216 
   4217   <!-- end of section -->
   4218   <tr><td colspan="7" id="section_hotPixel" class="section">hotPixel</td></tr>
   4219 
   4220 
   4221       <tr><td colspan="7" class="kind">controls</td></tr>
   4222 
   4223       <thead class="entries_header">
   4224         <tr>
   4225           <th class="th_name">Property Name</th>
   4226           <th class="th_type">Type</th>
   4227           <th class="th_description">Description</th>
   4228           <th class="th_units">Units</th>
   4229           <th class="th_range">Range</th>
   4230           <th class="th_notes">Notes</th>
   4231           <th class="th_tags">Tags</th>
   4232         </tr>
   4233       </thead>
   4234 
   4235       <tbody>
   4236 
   4237         
   4238 
   4239         
   4240 
   4241         
   4242 
   4243         
   4244 
   4245                 
   4246           <tr class="entry" id="controls_android.hotPixel.mode">
   4247             <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
   4248             <td class="entry_type">
   4249                 <span class="entry_type_name entry_type_name_enum">byte</span>
   4250 
   4251               <span class="entry_type_visibility"> [system]</span>
   4252 
   4253                 <ul class="entry_type_enum">
   4254                   <li>
   4255                     <span class="entry_type_enum_name">OFF</span>
   4256                     <span class="entry_type_enum_notes">No hot pixel correction can be
   4257             applied</span>
   4258                   </li>
   4259                   <li>
   4260                     <span class="entry_type_enum_name">FAST</span>
   4261                     <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
   4262             Bayer output</span>
   4263                   </li>
   4264                   <li>
   4265                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   4266                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   4267             quality</span>
   4268                   </li>
   4269                 </ul>
   4270 
   4271             </td> <!-- entry_type -->
   4272 
   4273             <td class="entry_description">
   4274               Set operational mode for hot pixel
   4275           correction
   4276             </td>
   4277 
   4278             <td class="entry_units">
   4279             </td>
   4280 
   4281             <td class="entry_range">
   4282             </td>
   4283 
   4284             <td class="entry_notes">
   4285             </td>
   4286 
   4287             <td class="entry_tags">
   4288               <ul class="entry_tags">
   4289                   <li><a href="#tag_V1">V1</a></li>
   4290               </ul>
   4291             </td>
   4292 
   4293           </tr> <!-- end of entry -->
   4294         
   4295         
   4296 
   4297       <!-- end of kind -->
   4298       </tbody>
   4299       <tr><td colspan="7" class="kind">static</td></tr>
   4300 
   4301       <thead class="entries_header">
   4302         <tr>
   4303           <th class="th_name">Property Name</th>
   4304           <th class="th_type">Type</th>
   4305           <th class="th_description">Description</th>
   4306           <th class="th_units">Units</th>
   4307           <th class="th_range">Range</th>
   4308           <th class="th_notes">Notes</th>
   4309           <th class="th_tags">Tags</th>
   4310         </tr>
   4311       </thead>
   4312 
   4313       <tbody>
   4314 
   4315         
   4316 
   4317         
   4318 
   4319         
   4320 
   4321         
   4322                 
   4323             
   4324 
   4325                 
   4326           <tr class="entry" id="static_android.hotPixel.info.map">
   4327             <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>info.<wbr>map</td>
   4328             <td class="entry_type">
   4329                 <span class="entry_type_name">int32</span>
   4330                 <span class="entry_type_container">x</span>
   4331 
   4332                 <span class="entry_type_array">
   4333                   2 x n
   4334                 </span>
   4335               <span class="entry_type_visibility"> [system]</span>
   4336                 <div class="entry_type_notes">list of coordinates based on android.<wbr>sensor.<wbr>pixel<wbr>Array<wbr>Size</div>
   4337 
   4338 
   4339             </td> <!-- entry_type -->
   4340 
   4341             <td class="entry_description">
   4342               Location of hot/<wbr>defective pixels on
   4343             sensor
   4344             </td>
   4345 
   4346             <td class="entry_units">
   4347             </td>
   4348 
   4349             <td class="entry_range">
   4350             </td>
   4351 
   4352             <td class="entry_notes">
   4353             </td>
   4354 
   4355             <td class="entry_tags">
   4356               <ul class="entry_tags">
   4357                   <li><a href="#tag_ADV">ADV</a></li>
   4358               </ul>
   4359             </td>
   4360 
   4361           </tr> <!-- end of entry -->
   4362         
   4363         
   4364         
   4365 
   4366         
   4367 
   4368       <!-- end of kind -->
   4369       </tbody>
   4370       <tr><td colspan="7" class="kind">dynamic</td></tr>
   4371 
   4372       <thead class="entries_header">
   4373         <tr>
   4374           <th class="th_name">Property Name</th>
   4375           <th class="th_type">Type</th>
   4376           <th class="th_description">Description</th>
   4377           <th class="th_units">Units</th>
   4378           <th class="th_range">Range</th>
   4379           <th class="th_notes">Notes</th>
   4380           <th class="th_tags">Tags</th>
   4381         </tr>
   4382       </thead>
   4383 
   4384       <tbody>
   4385 
   4386         
   4387 
   4388         
   4389 
   4390         
   4391 
   4392         
   4393 
   4394                 
   4395           <tr class="entry" id="dynamic_android.hotPixel.mode">
   4396             <td class="entry_name">android.<wbr>hot<wbr>Pixel.<wbr>mode</td>
   4397             <td class="entry_type">
   4398                 <span class="entry_type_name entry_type_name_enum">byte</span>
   4399 
   4400               <span class="entry_type_visibility"> [system]</span>
   4401 
   4402                 <ul class="entry_type_enum">
   4403                   <li>
   4404                     <span class="entry_type_enum_name">OFF</span>
   4405                     <span class="entry_type_enum_notes">No hot pixel correction can be
   4406             applied</span>
   4407                   </li>
   4408                   <li>
   4409                     <span class="entry_type_enum_name">FAST</span>
   4410                     <span class="entry_type_enum_notes">Frame rate must not be reduced compared to raw
   4411             Bayer output</span>
   4412                   </li>
   4413                   <li>
   4414                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   4415                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   4416             quality</span>
   4417                   </li>
   4418                 </ul>
   4419 
   4420             </td> <!-- entry_type -->
   4421 
   4422             <td class="entry_description">
   4423               Set operational mode for hot pixel
   4424           correction
   4425             </td>
   4426 
   4427             <td class="entry_units">
   4428             </td>
   4429 
   4430             <td class="entry_range">
   4431             </td>
   4432 
   4433             <td class="entry_notes">
   4434             </td>
   4435 
   4436             <td class="entry_tags">
   4437               <ul class="entry_tags">
   4438                   <li><a href="#tag_V1">V1</a></li>
   4439               </ul>
   4440             </td>
   4441 
   4442           </tr> <!-- end of entry -->
   4443         
   4444         
   4445 
   4446       <!-- end of kind -->
   4447       </tbody>
   4448 
   4449   <!-- end of section -->
   4450   <tr><td colspan="7" id="section_jpeg" class="section">jpeg</td></tr>
   4451 
   4452 
   4453       <tr><td colspan="7" class="kind">controls</td></tr>
   4454 
   4455       <thead class="entries_header">
   4456         <tr>
   4457           <th class="th_name">Property Name</th>
   4458           <th class="th_type">Type</th>
   4459           <th class="th_description">Description</th>
   4460           <th class="th_units">Units</th>
   4461           <th class="th_range">Range</th>
   4462           <th class="th_notes">Notes</th>
   4463           <th class="th_tags">Tags</th>
   4464         </tr>
   4465       </thead>
   4466 
   4467       <tbody>
   4468 
   4469         
   4470 
   4471         
   4472 
   4473         
   4474 
   4475         
   4476 
   4477                 
   4478           <tr class="entry" id="controls_android.jpeg.gpsCoordinates">
   4479             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
   4480             <td class="entry_type">
   4481                 <span class="entry_type_name">double</span>
   4482                 <span class="entry_type_container">x</span>
   4483 
   4484                 <span class="entry_type_array">
   4485                   3
   4486                 </span>
   4487               <span class="entry_type_visibility"> [public]</span>
   4488                 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
   4489 
   4490 
   4491             </td> <!-- entry_type -->
   4492 
   4493             <td class="entry_description">
   4494               GPS coordinates to include in output JPEG
   4495           EXIF
   4496             </td>
   4497 
   4498             <td class="entry_units">
   4499             </td>
   4500 
   4501             <td class="entry_range">
   4502               (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
   4503             </td>
   4504 
   4505             <td class="entry_notes">
   4506             </td>
   4507 
   4508             <td class="entry_tags">
   4509               <ul class="entry_tags">
   4510                   <li><a href="#tag_BC">BC</a></li>
   4511               </ul>
   4512             </td>
   4513 
   4514           </tr> <!-- end of entry -->
   4515         
   4516                 
   4517           <tr class="entry" id="controls_android.jpeg.gpsProcessingMethod">
   4518             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
   4519             <td class="entry_type">
   4520                 <span class="entry_type_name">byte</span>
   4521 
   4522               <span class="entry_type_visibility"> [public as string]</span>
   4523 
   4524 
   4525             </td> <!-- entry_type -->
   4526 
   4527             <td class="entry_description">
   4528               32 characters describing GPS algorithm to
   4529           include in EXIF
   4530             </td>
   4531 
   4532             <td class="entry_units">
   4533               UTF-8 null-terminated string
   4534             </td>
   4535 
   4536             <td class="entry_range">
   4537             </td>
   4538 
   4539             <td class="entry_notes">
   4540             </td>
   4541 
   4542             <td class="entry_tags">
   4543               <ul class="entry_tags">
   4544                   <li><a href="#tag_BC">BC</a></li>
   4545               </ul>
   4546             </td>
   4547 
   4548           </tr> <!-- end of entry -->
   4549         
   4550                 
   4551           <tr class="entry" id="controls_android.jpeg.gpsTimestamp">
   4552             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
   4553             <td class="entry_type">
   4554                 <span class="entry_type_name">int64</span>
   4555 
   4556               <span class="entry_type_visibility"> [public]</span>
   4557 
   4558 
   4559             </td> <!-- entry_type -->
   4560 
   4561             <td class="entry_description">
   4562               Time GPS fix was made to include in
   4563           EXIF
   4564             </td>
   4565 
   4566             <td class="entry_units">
   4567               UTC in seconds since January 1,<wbr> 1970
   4568             </td>
   4569 
   4570             <td class="entry_range">
   4571             </td>
   4572 
   4573             <td class="entry_notes">
   4574             </td>
   4575 
   4576             <td class="entry_tags">
   4577               <ul class="entry_tags">
   4578                   <li><a href="#tag_BC">BC</a></li>
   4579               </ul>
   4580             </td>
   4581 
   4582           </tr> <!-- end of entry -->
   4583         
   4584                 
   4585           <tr class="entry" id="controls_android.jpeg.orientation">
   4586             <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
   4587             <td class="entry_type">
   4588                 <span class="entry_type_name">int32</span>
   4589 
   4590               <span class="entry_type_visibility"> [public]</span>
   4591 
   4592 
   4593             </td> <!-- entry_type -->
   4594 
   4595             <td class="entry_description">
   4596               Orientation of JPEG image to
   4597           write
   4598             </td>
   4599 
   4600             <td class="entry_units">
   4601               Degrees in multiples of 90
   4602             </td>
   4603 
   4604             <td class="entry_range">
   4605               0,<wbr> 90,<wbr> 180,<wbr> 270
   4606             </td>
   4607 
   4608             <td class="entry_notes">
   4609             </td>
   4610 
   4611             <td class="entry_tags">
   4612               <ul class="entry_tags">
   4613                   <li><a href="#tag_BC">BC</a></li>
   4614               </ul>
   4615             </td>
   4616 
   4617           </tr> <!-- end of entry -->
   4618         
   4619                 
   4620           <tr class="entry" id="controls_android.jpeg.quality">
   4621             <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
   4622             <td class="entry_type">
   4623                 <span class="entry_type_name">byte</span>
   4624 
   4625               <span class="entry_type_visibility"> [public]</span>
   4626 
   4627 
   4628             </td> <!-- entry_type -->
   4629 
   4630             <td class="entry_description">
   4631               Compression quality of the final JPEG
   4632           image
   4633             </td>
   4634 
   4635             <td class="entry_units">
   4636             </td>
   4637 
   4638             <td class="entry_range">
   4639               1-100; larger is higher quality
   4640             </td>
   4641 
   4642             <td class="entry_notes">
   4643               85-95 is typical usage range
   4644             </td>
   4645 
   4646             <td class="entry_tags">
   4647               <ul class="entry_tags">
   4648                   <li><a href="#tag_BC">BC</a></li>
   4649               </ul>
   4650             </td>
   4651 
   4652           </tr> <!-- end of entry -->
   4653         
   4654                 
   4655           <tr class="entry" id="controls_android.jpeg.thumbnailQuality">
   4656             <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
   4657             <td class="entry_type">
   4658                 <span class="entry_type_name">byte</span>
   4659 
   4660               <span class="entry_type_visibility"> [public]</span>
   4661 
   4662 
   4663             </td> <!-- entry_type -->
   4664 
   4665             <td class="entry_description">
   4666               Compression quality of JPEG
   4667           thumbnail
   4668             </td>
   4669 
   4670             <td class="entry_units">
   4671             </td>
   4672 
   4673             <td class="entry_range">
   4674               1-100; larger is higher quality
   4675             </td>
   4676 
   4677             <td class="entry_notes">
   4678             </td>
   4679 
   4680             <td class="entry_tags">
   4681               <ul class="entry_tags">
   4682                   <li><a href="#tag_BC">BC</a></li>
   4683               </ul>
   4684             </td>
   4685 
   4686           </tr> <!-- end of entry -->
   4687         
   4688                 
   4689           <tr class="entry" id="controls_android.jpeg.thumbnailSize">
   4690             <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
   4691             <td class="entry_type">
   4692                 <span class="entry_type_name">int32</span>
   4693                 <span class="entry_type_container">x</span>
   4694 
   4695                 <span class="entry_type_array">
   4696                   2
   4697                 </span>
   4698               <span class="entry_type_visibility"> [public as size]</span>
   4699 
   4700 
   4701             </td> <!-- entry_type -->
   4702 
   4703             <td class="entry_description">
   4704               Resolution of embedded JPEG
   4705           thumbnail
   4706             </td>
   4707 
   4708             <td class="entry_units">
   4709             </td>
   4710 
   4711             <td class="entry_range">
   4712               from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
   4713             </td>
   4714 
   4715             <td class="entry_notes">
   4716             </td>
   4717 
   4718             <td class="entry_tags">
   4719               <ul class="entry_tags">
   4720                   <li><a href="#tag_BC">BC</a></li>
   4721               </ul>
   4722             </td>
   4723 
   4724           </tr> <!-- end of entry -->
   4725         
   4726         
   4727 
   4728       <!-- end of kind -->
   4729       </tbody>
   4730       <tr><td colspan="7" class="kind">static</td></tr>
   4731 
   4732       <thead class="entries_header">
   4733         <tr>
   4734           <th class="th_name">Property Name</th>
   4735           <th class="th_type">Type</th>
   4736           <th class="th_description">Description</th>
   4737           <th class="th_units">Units</th>
   4738           <th class="th_range">Range</th>
   4739           <th class="th_notes">Notes</th>
   4740           <th class="th_tags">Tags</th>
   4741         </tr>
   4742       </thead>
   4743 
   4744       <tbody>
   4745 
   4746         
   4747 
   4748         
   4749 
   4750         
   4751 
   4752         
   4753 
   4754                 
   4755           <tr class="entry" id="static_android.jpeg.availableThumbnailSizes">
   4756             <td class="entry_name">android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes</td>
   4757             <td class="entry_type">
   4758                 <span class="entry_type_name">int32</span>
   4759                 <span class="entry_type_container">x</span>
   4760 
   4761                 <span class="entry_type_array">
   4762                   2 x n
   4763                 </span>
   4764               <span class="entry_type_visibility"> [public as size]</span>
   4765                 <div class="entry_type_notes">list of resolution pairs</div>
   4766 
   4767 
   4768             </td> <!-- entry_type -->
   4769 
   4770             <td class="entry_description">
   4771               Supported resolutions for the JPEG
   4772           thumbnail
   4773             </td>
   4774 
   4775             <td class="entry_units">
   4776             </td>
   4777 
   4778             <td class="entry_range">
   4779               Must include at least one valid resolution,<wbr> plus
   4780           (0,<wbr>0) for no thumbnail generation
   4781             </td>
   4782 
   4783             <td class="entry_notes">
   4784             </td>
   4785 
   4786             <td class="entry_tags">
   4787               <ul class="entry_tags">
   4788                   <li><a href="#tag_BC">BC</a></li>
   4789               </ul>
   4790             </td>
   4791 
   4792           </tr> <!-- end of entry -->
   4793         
   4794                 
   4795           <tr class="entry" id="static_android.jpeg.maxSize">
   4796             <td class="entry_name">android.<wbr>jpeg.<wbr>max<wbr>Size</td>
   4797             <td class="entry_type">
   4798                 <span class="entry_type_name">int32</span>
   4799 
   4800               <span class="entry_type_visibility"> [system]</span>
   4801 
   4802 
   4803             </td> <!-- entry_type -->
   4804 
   4805             <td class="entry_description">
   4806               Maximum size in bytes for the compressed
   4807           JPEG buffer
   4808             </td>
   4809 
   4810             <td class="entry_units">
   4811             </td>
   4812 
   4813             <td class="entry_range">
   4814               Must be large enough to fit any JPEG produced by
   4815           the camera
   4816             </td>
   4817 
   4818             <td class="entry_notes">
   4819               This is used for sizing the gralloc buffers for
   4820           JPEG
   4821             </td>
   4822 
   4823             <td class="entry_tags">
   4824             </td>
   4825 
   4826           </tr> <!-- end of entry -->
   4827         
   4828         
   4829 
   4830       <!-- end of kind -->
   4831       </tbody>
   4832       <tr><td colspan="7" class="kind">dynamic</td></tr>
   4833 
   4834       <thead class="entries_header">
   4835         <tr>
   4836           <th class="th_name">Property Name</th>
   4837           <th class="th_type">Type</th>
   4838           <th class="th_description">Description</th>
   4839           <th class="th_units">Units</th>
   4840           <th class="th_range">Range</th>
   4841           <th class="th_notes">Notes</th>
   4842           <th class="th_tags">Tags</th>
   4843         </tr>
   4844       </thead>
   4845 
   4846       <tbody>
   4847 
   4848         
   4849 
   4850         
   4851 
   4852         
   4853 
   4854         
   4855 
   4856                 
   4857           <tr class="entry" id="dynamic_android.jpeg.gpsCoordinates">
   4858             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Coordinates</td>
   4859             <td class="entry_type">
   4860                 <span class="entry_type_name">double</span>
   4861                 <span class="entry_type_container">x</span>
   4862 
   4863                 <span class="entry_type_array">
   4864                   3
   4865                 </span>
   4866               <span class="entry_type_visibility"> [public]</span>
   4867                 <div class="entry_type_notes">latitude,<wbr> longitude,<wbr> altitude.<wbr> First two in degrees,<wbr> the third in meters</div>
   4868 
   4869 
   4870             </td> <!-- entry_type -->
   4871 
   4872             <td class="entry_description">
   4873               GPS coordinates to include in output JPEG
   4874           EXIF
   4875             </td>
   4876 
   4877             <td class="entry_units">
   4878             </td>
   4879 
   4880             <td class="entry_range">
   4881               (-180 - 180],<wbr> [-90,<wbr>90],<wbr> [-inf,<wbr> inf]
   4882             </td>
   4883 
   4884             <td class="entry_notes">
   4885             </td>
   4886 
   4887             <td class="entry_tags">
   4888               <ul class="entry_tags">
   4889                   <li><a href="#tag_BC">BC</a></li>
   4890               </ul>
   4891             </td>
   4892 
   4893           </tr> <!-- end of entry -->
   4894         
   4895                 
   4896           <tr class="entry" id="dynamic_android.jpeg.gpsProcessingMethod">
   4897             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Processing<wbr>Method</td>
   4898             <td class="entry_type">
   4899                 <span class="entry_type_name">byte</span>
   4900 
   4901               <span class="entry_type_visibility"> [public as string]</span>
   4902 
   4903 
   4904             </td> <!-- entry_type -->
   4905 
   4906             <td class="entry_description">
   4907               32 characters describing GPS algorithm to
   4908           include in EXIF
   4909             </td>
   4910 
   4911             <td class="entry_units">
   4912               UTF-8 null-terminated string
   4913             </td>
   4914 
   4915             <td class="entry_range">
   4916             </td>
   4917 
   4918             <td class="entry_notes">
   4919             </td>
   4920 
   4921             <td class="entry_tags">
   4922               <ul class="entry_tags">
   4923                   <li><a href="#tag_BC">BC</a></li>
   4924               </ul>
   4925             </td>
   4926 
   4927           </tr> <!-- end of entry -->
   4928         
   4929                 
   4930           <tr class="entry" id="dynamic_android.jpeg.gpsTimestamp">
   4931             <td class="entry_name">android.<wbr>jpeg.<wbr>gps<wbr>Timestamp</td>
   4932             <td class="entry_type">
   4933                 <span class="entry_type_name">int64</span>
   4934 
   4935               <span class="entry_type_visibility"> [public]</span>
   4936 
   4937 
   4938             </td> <!-- entry_type -->
   4939 
   4940             <td class="entry_description">
   4941               Time GPS fix was made to include in
   4942           EXIF
   4943             </td>
   4944 
   4945             <td class="entry_units">
   4946               UTC in seconds since January 1,<wbr> 1970
   4947             </td>
   4948 
   4949             <td class="entry_range">
   4950             </td>
   4951 
   4952             <td class="entry_notes">
   4953             </td>
   4954 
   4955             <td class="entry_tags">
   4956               <ul class="entry_tags">
   4957                   <li><a href="#tag_BC">BC</a></li>
   4958               </ul>
   4959             </td>
   4960 
   4961           </tr> <!-- end of entry -->
   4962         
   4963                 
   4964           <tr class="entry" id="dynamic_android.jpeg.orientation">
   4965             <td class="entry_name">android.<wbr>jpeg.<wbr>orientation</td>
   4966             <td class="entry_type">
   4967                 <span class="entry_type_name">int32</span>
   4968 
   4969               <span class="entry_type_visibility"> [public]</span>
   4970 
   4971 
   4972             </td> <!-- entry_type -->
   4973 
   4974             <td class="entry_description">
   4975               Orientation of JPEG image to
   4976           write
   4977             </td>
   4978 
   4979             <td class="entry_units">
   4980               Degrees in multiples of 90
   4981             </td>
   4982 
   4983             <td class="entry_range">
   4984               0,<wbr> 90,<wbr> 180,<wbr> 270
   4985             </td>
   4986 
   4987             <td class="entry_notes">
   4988             </td>
   4989 
   4990             <td class="entry_tags">
   4991               <ul class="entry_tags">
   4992                   <li><a href="#tag_BC">BC</a></li>
   4993               </ul>
   4994             </td>
   4995 
   4996           </tr> <!-- end of entry -->
   4997         
   4998                 
   4999           <tr class="entry" id="dynamic_android.jpeg.quality">
   5000             <td class="entry_name">android.<wbr>jpeg.<wbr>quality</td>
   5001             <td class="entry_type">
   5002                 <span class="entry_type_name">byte</span>
   5003 
   5004               <span class="entry_type_visibility"> [public]</span>
   5005 
   5006 
   5007             </td> <!-- entry_type -->
   5008 
   5009             <td class="entry_description">
   5010               Compression quality of the final JPEG
   5011           image
   5012             </td>
   5013 
   5014             <td class="entry_units">
   5015             </td>
   5016 
   5017             <td class="entry_range">
   5018               1-100; larger is higher quality
   5019             </td>
   5020 
   5021             <td class="entry_notes">
   5022               85-95 is typical usage range
   5023             </td>
   5024 
   5025             <td class="entry_tags">
   5026               <ul class="entry_tags">
   5027                   <li><a href="#tag_BC">BC</a></li>
   5028               </ul>
   5029             </td>
   5030 
   5031           </tr> <!-- end of entry -->
   5032         
   5033                 
   5034           <tr class="entry" id="dynamic_android.jpeg.size">
   5035             <td class="entry_name">android.<wbr>jpeg.<wbr>size</td>
   5036             <td class="entry_type">
   5037                 <span class="entry_type_name">int32</span>
   5038 
   5039               <span class="entry_type_visibility"> [system]</span>
   5040 
   5041 
   5042             </td> <!-- entry_type -->
   5043 
   5044             <td class="entry_description">
   5045               The size of the compressed JPEG image,<wbr> in
   5046           bytes
   5047             </td>
   5048 
   5049             <td class="entry_units">
   5050             </td>
   5051 
   5052             <td class="entry_range">
   5053               >= 0
   5054             </td>
   5055 
   5056             <td class="entry_notes">
   5057               If no JPEG output is produced for the request,<wbr>
   5058           this must be 0.<wbr>
   5059 <br>
   5060 <br>          Otherwise,<wbr> this describes the real size of the compressed
   5061           JPEG image placed in the output stream.<wbr>  More specifically,<wbr>
   5062           if android.<wbr>jpeg.<wbr>max<wbr>Size = 1000000,<wbr> and a specific capture
   5063           has android.<wbr>jpeg.<wbr>size = 500000,<wbr> then the output buffer from
   5064           the JPEG stream will be 1000000 bytes,<wbr> of which the first
   5065           500000 make up the real data.<wbr>
   5066             </td>
   5067 
   5068             <td class="entry_tags">
   5069             </td>
   5070 
   5071           </tr> <!-- end of entry -->
   5072         
   5073                 
   5074           <tr class="entry" id="dynamic_android.jpeg.thumbnailQuality">
   5075             <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Quality</td>
   5076             <td class="entry_type">
   5077                 <span class="entry_type_name">byte</span>
   5078 
   5079               <span class="entry_type_visibility"> [public]</span>
   5080 
   5081 
   5082             </td> <!-- entry_type -->
   5083 
   5084             <td class="entry_description">
   5085               Compression quality of JPEG
   5086           thumbnail
   5087             </td>
   5088 
   5089             <td class="entry_units">
   5090             </td>
   5091 
   5092             <td class="entry_range">
   5093               1-100; larger is higher quality
   5094             </td>
   5095 
   5096             <td class="entry_notes">
   5097             </td>
   5098 
   5099             <td class="entry_tags">
   5100               <ul class="entry_tags">
   5101                   <li><a href="#tag_BC">BC</a></li>
   5102               </ul>
   5103             </td>
   5104 
   5105           </tr> <!-- end of entry -->
   5106         
   5107                 
   5108           <tr class="entry" id="dynamic_android.jpeg.thumbnailSize">
   5109             <td class="entry_name">android.<wbr>jpeg.<wbr>thumbnail<wbr>Size</td>
   5110             <td class="entry_type">
   5111                 <span class="entry_type_name">int32</span>
   5112                 <span class="entry_type_container">x</span>
   5113 
   5114                 <span class="entry_type_array">
   5115                   2
   5116                 </span>
   5117               <span class="entry_type_visibility"> [public as size]</span>
   5118 
   5119 
   5120             </td> <!-- entry_type -->
   5121 
   5122             <td class="entry_description">
   5123               Resolution of embedded JPEG
   5124           thumbnail
   5125             </td>
   5126 
   5127             <td class="entry_units">
   5128             </td>
   5129 
   5130             <td class="entry_range">
   5131               from android.<wbr>jpeg.<wbr>available<wbr>Thumbnail<wbr>Sizes
   5132             </td>
   5133 
   5134             <td class="entry_notes">
   5135             </td>
   5136 
   5137             <td class="entry_tags">
   5138               <ul class="entry_tags">
   5139                   <li><a href="#tag_BC">BC</a></li>
   5140               </ul>
   5141             </td>
   5142 
   5143           </tr> <!-- end of entry -->
   5144         
   5145         
   5146 
   5147       <!-- end of kind -->
   5148       </tbody>
   5149 
   5150   <!-- end of section -->
   5151   <tr><td colspan="7" id="section_lens" class="section">lens</td></tr>
   5152 
   5153 
   5154       <tr><td colspan="7" class="kind">controls</td></tr>
   5155 
   5156       <thead class="entries_header">
   5157         <tr>
   5158           <th class="th_name">Property Name</th>
   5159           <th class="th_type">Type</th>
   5160           <th class="th_description">Description</th>
   5161           <th class="th_units">Units</th>
   5162           <th class="th_range">Range</th>
   5163           <th class="th_notes">Notes</th>
   5164           <th class="th_tags">Tags</th>
   5165         </tr>
   5166       </thead>
   5167 
   5168       <tbody>
   5169 
   5170         
   5171 
   5172         
   5173 
   5174         
   5175 
   5176         
   5177 
   5178                 
   5179           <tr class="entry" id="controls_android.lens.aperture">
   5180             <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
   5181             <td class="entry_type">
   5182                 <span class="entry_type_name">float</span>
   5183 
   5184               <span class="entry_type_visibility"> [public]</span>
   5185 
   5186 
   5187             </td> <!-- entry_type -->
   5188 
   5189             <td class="entry_description">
   5190               Size of the lens aperture
   5191             </td>
   5192 
   5193             <td class="entry_units">
   5194               f-number (f/<wbr>NNN)
   5195             </td>
   5196 
   5197             <td class="entry_range">
   5198               android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
   5199             </td>
   5200 
   5201             <td class="entry_notes">
   5202               Will not be supported on most devices.<wbr> Can only
   5203           pick from supported list
   5204             </td>
   5205 
   5206             <td class="entry_tags">
   5207               <ul class="entry_tags">
   5208                   <li><a href="#tag_V1">V1</a></li>
   5209               </ul>
   5210             </td>
   5211 
   5212           </tr> <!-- end of entry -->
   5213         
   5214                 
   5215           <tr class="entry" id="controls_android.lens.filterDensity">
   5216             <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
   5217             <td class="entry_type">
   5218                 <span class="entry_type_name">float</span>
   5219 
   5220               <span class="entry_type_visibility"> [public]</span>
   5221 
   5222 
   5223             </td> <!-- entry_type -->
   5224 
   5225             <td class="entry_description">
   5226               State of lens neutral density
   5227           filter(s)
   5228             </td>
   5229 
   5230             <td class="entry_units">
   5231               number of stops of filtering
   5232             </td>
   5233 
   5234             <td class="entry_range">
   5235               android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
   5236             </td>
   5237 
   5238             <td class="entry_notes">
   5239               Will not be supported on most devices.<wbr> Can only
   5240           pick from supported list
   5241             </td>
   5242 
   5243             <td class="entry_tags">
   5244               <ul class="entry_tags">
   5245                   <li><a href="#tag_V1">V1</a></li>
   5246               </ul>
   5247             </td>
   5248 
   5249           </tr> <!-- end of entry -->
   5250         
   5251                 
   5252           <tr class="entry" id="controls_android.lens.focalLength">
   5253             <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
   5254             <td class="entry_type">
   5255                 <span class="entry_type_name">float</span>
   5256 
   5257               <span class="entry_type_visibility"> [public]</span>
   5258 
   5259 
   5260             </td> <!-- entry_type -->
   5261 
   5262             <td class="entry_description">
   5263               Lens optical zoom setting
   5264             </td>
   5265 
   5266             <td class="entry_units">
   5267               focal length in mm
   5268             </td>
   5269 
   5270             <td class="entry_range">
   5271               > 0
   5272             </td>
   5273 
   5274             <td class="entry_notes">
   5275               Will not be supported on most devices.<wbr>
   5276             </td>
   5277 
   5278             <td class="entry_tags">
   5279               <ul class="entry_tags">
   5280                   <li><a href="#tag_V1">V1</a></li>
   5281               </ul>
   5282             </td>
   5283 
   5284           </tr> <!-- end of entry -->
   5285         
   5286                 
   5287           <tr class="entry" id="controls_android.lens.focusDistance">
   5288             <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
   5289             <td class="entry_type">
   5290                 <span class="entry_type_name">float</span>
   5291 
   5292               <span class="entry_type_visibility"> [public]</span>
   5293 
   5294 
   5295             </td> <!-- entry_type -->
   5296 
   5297             <td class="entry_description">
   5298               Distance to plane of sharpest focus,<wbr>
   5299           measured from frontmost surface of the lens
   5300             </td>
   5301 
   5302             <td class="entry_units">
   5303               diopters (1/<wbr>m)
   5304             </td>
   5305 
   5306             <td class="entry_range">
   5307               >= 0
   5308             </td>
   5309 
   5310             <td class="entry_notes">
   5311               0 = infinity focus.<wbr> Used value should be clamped
   5312           to (0,<wbr>minimum focus distance)
   5313             </td>
   5314 
   5315             <td class="entry_tags">
   5316               <ul class="entry_tags">
   5317                   <li><a href="#tag_BC">BC</a></li>
   5318                   <li><a href="#tag_V1">V1</a></li>
   5319               </ul>
   5320             </td>
   5321 
   5322           </tr> <!-- end of entry -->
   5323         
   5324                 
   5325           <tr class="entry" id="controls_android.lens.opticalStabilizationMode">
   5326             <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
   5327             <td class="entry_type">
   5328                 <span class="entry_type_name entry_type_name_enum">byte</span>
   5329 
   5330               <span class="entry_type_visibility"> [public]</span>
   5331 
   5332                 <ul class="entry_type_enum">
   5333                   <li>
   5334                     <span class="entry_type_enum_name">OFF</span>
   5335                   </li>
   5336                   <li>
   5337                     <span class="entry_type_enum_name">ON</span>
   5338                     <span class="entry_type_enum_optional">optional</span>
   5339                   </li>
   5340                 </ul>
   5341 
   5342             </td> <!-- entry_type -->
   5343 
   5344             <td class="entry_description">
   5345               Whether optical image stabilization is
   5346           enabled.<wbr>
   5347             </td>
   5348 
   5349             <td class="entry_units">
   5350             </td>
   5351 
   5352             <td class="entry_range">
   5353               android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
   5354             </td>
   5355 
   5356             <td class="entry_notes">
   5357               Will not be supported on most devices.<wbr>
   5358             </td>
   5359 
   5360             <td class="entry_tags">
   5361               <ul class="entry_tags">
   5362                   <li><a href="#tag_V1">V1</a></li>
   5363               </ul>
   5364             </td>
   5365 
   5366           </tr> <!-- end of entry -->
   5367         
   5368         
   5369 
   5370       <!-- end of kind -->
   5371       </tbody>
   5372       <tr><td colspan="7" class="kind">static</td></tr>
   5373 
   5374       <thead class="entries_header">
   5375         <tr>
   5376           <th class="th_name">Property Name</th>
   5377           <th class="th_type">Type</th>
   5378           <th class="th_description">Description</th>
   5379           <th class="th_units">Units</th>
   5380           <th class="th_range">Range</th>
   5381           <th class="th_notes">Notes</th>
   5382           <th class="th_tags">Tags</th>
   5383         </tr>
   5384       </thead>
   5385 
   5386       <tbody>
   5387 
   5388         
   5389 
   5390         
   5391 
   5392         
   5393 
   5394         
   5395                 
   5396             
   5397 
   5398                 
   5399           <tr class="entry" id="static_android.lens.info.availableApertures">
   5400             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures</td>
   5401             <td class="entry_type">
   5402                 <span class="entry_type_name">float</span>
   5403                 <span class="entry_type_container">x</span>
   5404 
   5405                 <span class="entry_type_array">
   5406                   n
   5407                 </span>
   5408               <span class="entry_type_visibility"> [public]</span>
   5409 
   5410 
   5411             </td> <!-- entry_type -->
   5412 
   5413             <td class="entry_description">
   5414               List of supported aperture
   5415             values
   5416             </td>
   5417 
   5418             <td class="entry_units">
   5419             </td>
   5420 
   5421             <td class="entry_range">
   5422               one entry required,<wbr> > 0
   5423             </td>
   5424 
   5425             <td class="entry_notes">
   5426               If variable aperture not available,<wbr> only setting
   5427             should be for the fixed aperture
   5428             </td>
   5429 
   5430             <td class="entry_tags">
   5431               <ul class="entry_tags">
   5432                   <li><a href="#tag_V1">V1</a></li>
   5433               </ul>
   5434             </td>
   5435 
   5436           </tr> <!-- end of entry -->
   5437         
   5438                 
   5439           <tr class="entry" id="static_android.lens.info.availableFilterDensities">
   5440             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities</td>
   5441             <td class="entry_type">
   5442                 <span class="entry_type_name">float</span>
   5443                 <span class="entry_type_container">x</span>
   5444 
   5445                 <span class="entry_type_array">
   5446                   n
   5447                 </span>
   5448               <span class="entry_type_visibility"> [public]</span>
   5449 
   5450 
   5451             </td> <!-- entry_type -->
   5452 
   5453             <td class="entry_description">
   5454               List of supported ND filter
   5455             values
   5456             </td>
   5457 
   5458             <td class="entry_units">
   5459             </td>
   5460 
   5461             <td class="entry_range">
   5462               one entry required,<wbr> >= 0
   5463             </td>
   5464 
   5465             <td class="entry_notes">
   5466               If not available,<wbr> only setting is 0.<wbr> Otherwise,<wbr>
   5467             lists the available exposure index values for dimming
   5468             (2 would mean the filter is set to reduce incoming
   5469             light by two stops)
   5470             </td>
   5471 
   5472             <td class="entry_tags">
   5473               <ul class="entry_tags">
   5474                   <li><a href="#tag_V1">V1</a></li>
   5475               </ul>
   5476             </td>
   5477 
   5478           </tr> <!-- end of entry -->
   5479         
   5480                 
   5481           <tr class="entry" id="static_android.lens.info.availableFocalLengths">
   5482             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Focal<wbr>Lengths</td>
   5483             <td class="entry_type">
   5484                 <span class="entry_type_name">float</span>
   5485                 <span class="entry_type_container">x</span>
   5486 
   5487                 <span class="entry_type_array">
   5488                   n
   5489                 </span>
   5490               <span class="entry_type_visibility"> [public]</span>
   5491                 <div class="entry_type_notes">the list of available focal lengths</div>
   5492 
   5493 
   5494             </td> <!-- entry_type -->
   5495 
   5496             <td class="entry_description">
   5497               If fitted with optical zoom,<wbr> what focal
   5498             lengths are available.<wbr> If not,<wbr> the static focal
   5499             length
   5500             </td>
   5501 
   5502             <td class="entry_units">
   5503             </td>
   5504 
   5505             <td class="entry_range">
   5506               > 0
   5507             </td>
   5508 
   5509             <td class="entry_notes">
   5510               If optical zoom not supported,<wbr> only one value
   5511             should be reported
   5512             </td>
   5513 
   5514             <td class="entry_tags">
   5515               <ul class="entry_tags">
   5516                   <li><a href="#tag_BC">BC</a></li>
   5517                   <li><a href="#tag_V1">V1</a></li>
   5518               </ul>
   5519             </td>
   5520 
   5521           </tr> <!-- end of entry -->
   5522         
   5523                 
   5524           <tr class="entry" id="static_android.lens.info.availableOpticalStabilization">
   5525             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>available<wbr>Optical<wbr>Stabilization</td>
   5526             <td class="entry_type">
   5527                 <span class="entry_type_name">byte</span>
   5528                 <span class="entry_type_container">x</span>
   5529 
   5530                 <span class="entry_type_array">
   5531                   n
   5532                 </span>
   5533               <span class="entry_type_visibility"> [public]</span>
   5534                 <div class="entry_type_notes">list of enums</div>
   5535 
   5536 
   5537             </td> <!-- entry_type -->
   5538 
   5539             <td class="entry_description">
   5540               List of supported optical image
   5541             stabilization modes
   5542             </td>
   5543 
   5544             <td class="entry_units">
   5545             </td>
   5546 
   5547             <td class="entry_range">
   5548             </td>
   5549 
   5550             <td class="entry_notes">
   5551             </td>
   5552 
   5553             <td class="entry_tags">
   5554               <ul class="entry_tags">
   5555                   <li><a href="#tag_V1">V1</a></li>
   5556               </ul>
   5557             </td>
   5558 
   5559           </tr> <!-- end of entry -->
   5560         
   5561                 
   5562           <tr class="entry" id="static_android.lens.info.geometricCorrectionMap">
   5563             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map</td>
   5564             <td class="entry_type">
   5565                 <span class="entry_type_name">float</span>
   5566                 <span class="entry_type_container">x</span>
   5567 
   5568                 <span class="entry_type_array">
   5569                   2 x 3 x n x m
   5570                 </span>
   5571               <span class="entry_type_visibility"> [system]</span>
   5572                 <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>
   5573 
   5574 
   5575             </td> <!-- entry_type -->
   5576 
   5577             <td class="entry_description">
   5578               A low-resolution map for correction of
   5579             geometric distortions and chromatic aberrations,<wbr> per
   5580             color channel
   5581             </td>
   5582 
   5583             <td class="entry_units">
   5584             </td>
   5585 
   5586             <td class="entry_range">
   5587               N,<wbr> M >= 2
   5588             </td>
   5589 
   5590             <td class="entry_notes">
   5591               [DNG wants a function instead].<wbr> What's easiest
   5592             for implementers? With an array size (M,<wbr> N),<wbr> entry (i,<wbr>
   5593             j) provides the destination for pixel (i/<wbr>(M-1) * width,<wbr>
   5594             j/<wbr>(N-1) * height).<wbr> Data is row-major,<wbr> with each array
   5595             entry being ( (X,<wbr> Y)_<wbr>r,<wbr> (X,<wbr> Y)_<wbr>g,<wbr> (X,<wbr> Y)_<wbr>b ) )
   5596             </td>
   5597 
   5598             <td class="entry_tags">
   5599               <ul class="entry_tags">
   5600                   <li><a href="#tag_DNG">DNG</a></li>
   5601               </ul>
   5602             </td>
   5603 
   5604           </tr> <!-- end of entry -->
   5605         
   5606                 
   5607           <tr class="entry" id="static_android.lens.info.geometricCorrectionMapSize">
   5608             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>geometric<wbr>Correction<wbr>Map<wbr>Size</td>
   5609             <td class="entry_type">
   5610                 <span class="entry_type_name">int32</span>
   5611                 <span class="entry_type_container">x</span>
   5612 
   5613                 <span class="entry_type_array">
   5614                   2
   5615                 </span>
   5616               <span class="entry_type_visibility"> [system as size]</span>
   5617                 <div class="entry_type_notes">width and height of geometric correction map</div>
   5618 
   5619 
   5620             </td> <!-- entry_type -->
   5621 
   5622             <td class="entry_description">
   5623               Dimensions of geometric correction
   5624             map
   5625             </td>
   5626 
   5627             <td class="entry_units">
   5628             </td>
   5629 
   5630             <td class="entry_range">
   5631               Both values >= 2
   5632             </td>
   5633 
   5634             <td class="entry_notes">
   5635             </td>
   5636 
   5637             <td class="entry_tags">
   5638               <ul class="entry_tags">
   5639                   <li><a href="#tag_V1">V1</a></li>
   5640               </ul>
   5641             </td>
   5642 
   5643           </tr> <!-- end of entry -->
   5644         
   5645                 
   5646           <tr class="entry" id="static_android.lens.info.hyperfocalDistance">
   5647             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>hyperfocal<wbr>Distance</td>
   5648             <td class="entry_type">
   5649                 <span class="entry_type_name">float</span>
   5650 
   5651               <span class="entry_type_visibility"> [public]</span>
   5652 
   5653 
   5654             </td> <!-- entry_type -->
   5655 
   5656             <td class="entry_description">
   5657               Hyperfocal distance for this lens; set to
   5658             0 if fixed focus
   5659             </td>
   5660 
   5661             <td class="entry_units">
   5662               diopters
   5663             </td>
   5664 
   5665             <td class="entry_range">
   5666               >= 0
   5667             </td>
   5668 
   5669             <td class="entry_notes">
   5670               The hyperfocal distance is used for the old
   5671             API's 'fixed' setting
   5672             </td>
   5673 
   5674             <td class="entry_tags">
   5675               <ul class="entry_tags">
   5676                   <li><a href="#tag_BC">BC</a></li>
   5677               </ul>
   5678             </td>
   5679 
   5680           </tr> <!-- end of entry -->
   5681         
   5682                 
   5683           <tr class="entry" id="static_android.lens.info.minimumFocusDistance">
   5684             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>minimum<wbr>Focus<wbr>Distance</td>
   5685             <td class="entry_type">
   5686                 <span class="entry_type_name">float</span>
   5687 
   5688               <span class="entry_type_visibility"> [public]</span>
   5689 
   5690 
   5691             </td> <!-- entry_type -->
   5692 
   5693             <td class="entry_description">
   5694               Shortest distance from frontmost surface
   5695             of the lens that can be focused correctly
   5696             </td>
   5697 
   5698             <td class="entry_units">
   5699               diopters
   5700             </td>
   5701 
   5702             <td class="entry_range">
   5703               >= 0
   5704             </td>
   5705 
   5706             <td class="entry_notes">
   5707               If the lens is fixed-focus,<wbr> this should be
   5708             0
   5709             </td>
   5710 
   5711             <td class="entry_tags">
   5712               <ul class="entry_tags">
   5713                   <li><a href="#tag_V1">V1</a></li>
   5714               </ul>
   5715             </td>
   5716 
   5717           </tr> <!-- end of entry -->
   5718         
   5719                 
   5720           <tr class="entry" id="static_android.lens.info.shadingMapSize">
   5721             <td class="entry_name">android.<wbr>lens.<wbr>info.<wbr>shading<wbr>Map<wbr>Size</td>
   5722             <td class="entry_type">
   5723                 <span class="entry_type_name">int32</span>
   5724                 <span class="entry_type_container">x</span>
   5725 
   5726                 <span class="entry_type_array">
   5727                   2
   5728                 </span>
   5729               <span class="entry_type_visibility"> [public as size]</span>
   5730                 <div class="entry_type_notes">width and height of lens shading map provided by the HAL.<wbr> (N,<wbr> M)</div>
   5731 
   5732 
   5733             </td> <!-- entry_type -->
   5734 
   5735             <td class="entry_description">
   5736               Dimensions of lens shading
   5737             map
   5738             </td>
   5739 
   5740             <td class="entry_units">
   5741             </td>
   5742 
   5743             <td class="entry_range">
   5744               Both values >= 1
   5745             </td>
   5746 
   5747             <td class="entry_notes">
   5748             </td>
   5749 
   5750             <td class="entry_tags">
   5751               <ul class="entry_tags">
   5752                   <li><a href="#tag_V1">V1</a></li>
   5753               </ul>
   5754             </td>
   5755 
   5756           </tr> <!-- end of entry -->
   5757         
   5758         
   5759         
   5760 
   5761                 
   5762           <tr class="entry" id="static_android.lens.facing">
   5763             <td class="entry_name">android.<wbr>lens.<wbr>facing</td>
   5764             <td class="entry_type">
   5765                 <span class="entry_type_name entry_type_name_enum">byte</span>
   5766 
   5767               <span class="entry_type_visibility"> [public]</span>
   5768 
   5769                 <ul class="entry_type_enum">
   5770                   <li>
   5771                     <span class="entry_type_enum_name">FRONT</span>
   5772                   </li>
   5773                   <li>
   5774                     <span class="entry_type_enum_name">BACK</span>
   5775                   </li>
   5776                 </ul>
   5777 
   5778             </td> <!-- entry_type -->
   5779 
   5780             <td class="entry_description">
   5781               Direction the camera faces relative to
   5782           device screen
   5783             </td>
   5784 
   5785             <td class="entry_units">
   5786             </td>
   5787 
   5788             <td class="entry_range">
   5789             </td>
   5790 
   5791             <td class="entry_notes">
   5792             </td>
   5793 
   5794             <td class="entry_tags">
   5795             </td>
   5796 
   5797           </tr> <!-- end of entry -->
   5798         
   5799                 
   5800           <tr class="entry" id="static_android.lens.opticalAxisAngle">
   5801             <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Axis<wbr>Angle</td>
   5802             <td class="entry_type">
   5803                 <span class="entry_type_name">float</span>
   5804                 <span class="entry_type_container">x</span>
   5805 
   5806                 <span class="entry_type_array">
   5807                   2
   5808                 </span>
   5809               <span class="entry_type_visibility"> [system]</span>
   5810                 <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>
   5811 
   5812 
   5813             </td> <!-- entry_type -->
   5814 
   5815             <td class="entry_description">
   5816               Relative angle of camera optical axis to the
   5817           perpendicular axis from the display
   5818             </td>
   5819 
   5820             <td class="entry_units">
   5821             </td>
   5822 
   5823             <td class="entry_range">
   5824               [0-90) for first angle,<wbr> [0-360) for second
   5825             </td>
   5826 
   5827             <td class="entry_notes">
   5828               Examples:
   5829 <br>
   5830 <br>          (0,<wbr>0) means that the camera optical axis
   5831           is perpendicular to the display surface;
   5832 <br>
   5833 <br>          (45,<wbr>0) means that the camera points 45 degrees up when
   5834           device is held upright;
   5835 <br>
   5836 <br>          (45,<wbr>90) means the camera points 45 degrees to the right when
   5837           the device is held upright.<wbr>
   5838 <br>
   5839 <br>          Use FACING field to determine perpendicular outgoing
   5840           direction
   5841             </td>
   5842 
   5843             <td class="entry_tags">
   5844               <ul class="entry_tags">
   5845                   <li><a href="#tag_ADV">ADV</a></li>
   5846               </ul>
   5847             </td>
   5848 
   5849           </tr> <!-- end of entry -->
   5850         
   5851                 
   5852           <tr class="entry" id="static_android.lens.position">
   5853             <td class="entry_name">android.<wbr>lens.<wbr>position</td>
   5854             <td class="entry_type">
   5855                 <span class="entry_type_name">float</span>
   5856                 <span class="entry_type_container">x</span>
   5857 
   5858                 <span class="entry_type_array">
   5859                   3, location in mm, in the sensor coordinate
   5860             system
   5861                 </span>
   5862               <span class="entry_type_visibility"> [system]</span>
   5863 
   5864 
   5865             </td> <!-- entry_type -->
   5866 
   5867             <td class="entry_description">
   5868               Coordinates of camera optical axis on
   5869           device
   5870             </td>
   5871 
   5872             <td class="entry_units">
   5873             </td>
   5874 
   5875             <td class="entry_range">
   5876             </td>
   5877 
   5878             <td class="entry_notes">
   5879             </td>
   5880 
   5881             <td class="entry_tags">
   5882               <ul class="entry_tags">
   5883                   <li><a href="#tag_V1">V1</a></li>
   5884               </ul>
   5885             </td>
   5886 
   5887           </tr> <!-- end of entry -->
   5888         
   5889         
   5890 
   5891       <!-- end of kind -->
   5892       </tbody>
   5893       <tr><td colspan="7" class="kind">dynamic</td></tr>
   5894 
   5895       <thead class="entries_header">
   5896         <tr>
   5897           <th class="th_name">Property Name</th>
   5898           <th class="th_type">Type</th>
   5899           <th class="th_description">Description</th>
   5900           <th class="th_units">Units</th>
   5901           <th class="th_range">Range</th>
   5902           <th class="th_notes">Notes</th>
   5903           <th class="th_tags">Tags</th>
   5904         </tr>
   5905       </thead>
   5906 
   5907       <tbody>
   5908 
   5909         
   5910 
   5911         
   5912 
   5913         
   5914 
   5915         
   5916 
   5917                 
   5918           <tr class="entry" id="dynamic_android.lens.aperture">
   5919             <td class="entry_name">android.<wbr>lens.<wbr>aperture</td>
   5920             <td class="entry_type">
   5921                 <span class="entry_type_name">float</span>
   5922 
   5923               <span class="entry_type_visibility"> [public]</span>
   5924 
   5925 
   5926             </td> <!-- entry_type -->
   5927 
   5928             <td class="entry_description">
   5929               Size of the lens aperture
   5930             </td>
   5931 
   5932             <td class="entry_units">
   5933               f-number (f/<wbr>NNN)
   5934             </td>
   5935 
   5936             <td class="entry_range">
   5937               android.<wbr>lens.<wbr>info.<wbr>available<wbr>Apertures
   5938             </td>
   5939 
   5940             <td class="entry_notes">
   5941               Will not be supported on most devices.<wbr> Can only
   5942           pick from supported list
   5943             </td>
   5944 
   5945             <td class="entry_tags">
   5946               <ul class="entry_tags">
   5947                   <li><a href="#tag_V1">V1</a></li>
   5948               </ul>
   5949             </td>
   5950 
   5951           </tr> <!-- end of entry -->
   5952         
   5953                 
   5954           <tr class="entry" id="dynamic_android.lens.filterDensity">
   5955             <td class="entry_name">android.<wbr>lens.<wbr>filter<wbr>Density</td>
   5956             <td class="entry_type">
   5957                 <span class="entry_type_name">float</span>
   5958 
   5959               <span class="entry_type_visibility"> [public]</span>
   5960 
   5961 
   5962             </td> <!-- entry_type -->
   5963 
   5964             <td class="entry_description">
   5965               State of lens neutral density
   5966           filter(s)
   5967             </td>
   5968 
   5969             <td class="entry_units">
   5970               number of stops of filtering
   5971             </td>
   5972 
   5973             <td class="entry_range">
   5974               android.<wbr>lens.<wbr>info.<wbr>available<wbr>Filter<wbr>Densities
   5975             </td>
   5976 
   5977             <td class="entry_notes">
   5978               Will not be supported on most devices.<wbr> Can only
   5979           pick from supported list
   5980             </td>
   5981 
   5982             <td class="entry_tags">
   5983               <ul class="entry_tags">
   5984                   <li><a href="#tag_V1">V1</a></li>
   5985               </ul>
   5986             </td>
   5987 
   5988           </tr> <!-- end of entry -->
   5989         
   5990                 
   5991           <tr class="entry" id="dynamic_android.lens.focalLength">
   5992             <td class="entry_name">android.<wbr>lens.<wbr>focal<wbr>Length</td>
   5993             <td class="entry_type">
   5994                 <span class="entry_type_name">float</span>
   5995 
   5996               <span class="entry_type_visibility"> [public]</span>
   5997 
   5998 
   5999             </td> <!-- entry_type -->
   6000 
   6001             <td class="entry_description">
   6002               Lens optical zoom setting
   6003             </td>
   6004 
   6005             <td class="entry_units">
   6006               focal length in mm
   6007             </td>
   6008 
   6009             <td class="entry_range">
   6010               > 0
   6011             </td>
   6012 
   6013             <td class="entry_notes">
   6014               Will not be supported on most devices.<wbr>
   6015             </td>
   6016 
   6017             <td class="entry_tags">
   6018               <ul class="entry_tags">
   6019                   <li><a href="#tag_BC">BC</a></li>
   6020               </ul>
   6021             </td>
   6022 
   6023           </tr> <!-- end of entry -->
   6024         
   6025                 
   6026           <tr class="entry" id="dynamic_android.lens.focusDistance">
   6027             <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Distance</td>
   6028             <td class="entry_type">
   6029                 <span class="entry_type_name">float</span>
   6030 
   6031               <span class="entry_type_visibility"> [public]</span>
   6032 
   6033 
   6034             </td> <!-- entry_type -->
   6035 
   6036             <td class="entry_description">
   6037               Distance to plane of sharpest focus,<wbr>
   6038           measured from frontmost surface of the lens
   6039             </td>
   6040 
   6041             <td class="entry_units">
   6042               diopters (1/<wbr>m)
   6043             </td>
   6044 
   6045             <td class="entry_range">
   6046               >= 0
   6047             </td>
   6048 
   6049             <td class="entry_notes">
   6050               Should be zero for fixed-focus cameras
   6051             </td>
   6052 
   6053             <td class="entry_tags">
   6054               <ul class="entry_tags">
   6055                   <li><a href="#tag_BC">BC</a></li>
   6056               </ul>
   6057             </td>
   6058 
   6059           </tr> <!-- end of entry -->
   6060         
   6061                 
   6062           <tr class="entry" id="dynamic_android.lens.focusRange">
   6063             <td class="entry_name">android.<wbr>lens.<wbr>focus<wbr>Range</td>
   6064             <td class="entry_type">
   6065                 <span class="entry_type_name">float</span>
   6066                 <span class="entry_type_container">x</span>
   6067 
   6068                 <span class="entry_type_array">
   6069                   2
   6070                 </span>
   6071               <span class="entry_type_visibility"> [public]</span>
   6072                 <div class="entry_type_notes">Range of scene distances that are in focus</div>
   6073 
   6074 
   6075             </td> <!-- entry_type -->
   6076 
   6077             <td class="entry_description">
   6078               The range of scene distances that are in
   6079           sharp focus (depth of field)
   6080             </td>
   6081 
   6082             <td class="entry_units">
   6083               pair of focus distances in diopters: (near,<wbr>
   6084           far)
   6085             </td>
   6086 
   6087             <td class="entry_range">
   6088               >=0
   6089             </td>
   6090 
   6091             <td class="entry_notes">
   6092               If variable focus not supported,<wbr> can still report
   6093           fixed depth of field range
   6094             </td>
   6095 
   6096             <td class="entry_tags">
   6097               <ul class="entry_tags">
   6098                   <li><a href="#tag_BC">BC</a></li>
   6099               </ul>
   6100             </td>
   6101 
   6102           </tr> <!-- end of entry -->
   6103         
   6104                 
   6105           <tr class="entry" id="dynamic_android.lens.opticalStabilizationMode">
   6106             <td class="entry_name">android.<wbr>lens.<wbr>optical<wbr>Stabilization<wbr>Mode</td>
   6107             <td class="entry_type">
   6108                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6109 
   6110               <span class="entry_type_visibility"> [public]</span>
   6111 
   6112                 <ul class="entry_type_enum">
   6113                   <li>
   6114                     <span class="entry_type_enum_name">OFF</span>
   6115                   </li>
   6116                   <li>
   6117                     <span class="entry_type_enum_name">ON</span>
   6118                     <span class="entry_type_enum_optional">optional</span>
   6119                   </li>
   6120                 </ul>
   6121 
   6122             </td> <!-- entry_type -->
   6123 
   6124             <td class="entry_description">
   6125               Whether optical image stabilization is
   6126           enabled.<wbr>
   6127             </td>
   6128 
   6129             <td class="entry_units">
   6130             </td>
   6131 
   6132             <td class="entry_range">
   6133               android.<wbr>lens.<wbr>available<wbr>Optical<wbr>Stabilization
   6134             </td>
   6135 
   6136             <td class="entry_notes">
   6137               Will not be supported on most devices.<wbr>
   6138             </td>
   6139 
   6140             <td class="entry_tags">
   6141               <ul class="entry_tags">
   6142                   <li><a href="#tag_V1">V1</a></li>
   6143               </ul>
   6144             </td>
   6145 
   6146           </tr> <!-- end of entry -->
   6147         
   6148                 
   6149           <tr class="entry" id="dynamic_android.lens.state">
   6150             <td class="entry_name">android.<wbr>lens.<wbr>state</td>
   6151             <td class="entry_type">
   6152                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6153 
   6154               <span class="entry_type_visibility"> [public]</span>
   6155 
   6156                 <ul class="entry_type_enum">
   6157                   <li>
   6158                     <span class="entry_type_enum_name">STATIONARY</span>
   6159                   </li>
   6160                   <li>
   6161                     <span class="entry_type_enum_name">MOVING</span>
   6162                   </li>
   6163                 </ul>
   6164 
   6165             </td> <!-- entry_type -->
   6166 
   6167             <td class="entry_description">
   6168               Current lens status
   6169             </td>
   6170 
   6171             <td class="entry_units">
   6172             </td>
   6173 
   6174             <td class="entry_range">
   6175             </td>
   6176 
   6177             <td class="entry_notes">
   6178             </td>
   6179 
   6180             <td class="entry_tags">
   6181               <ul class="entry_tags">
   6182                   <li><a href="#tag_V1">V1</a></li>
   6183               </ul>
   6184             </td>
   6185 
   6186           </tr> <!-- end of entry -->
   6187         
   6188         
   6189 
   6190       <!-- end of kind -->
   6191       </tbody>
   6192 
   6193   <!-- end of section -->
   6194   <tr><td colspan="7" id="section_noiseReduction" class="section">noiseReduction</td></tr>
   6195 
   6196 
   6197       <tr><td colspan="7" class="kind">controls</td></tr>
   6198 
   6199       <thead class="entries_header">
   6200         <tr>
   6201           <th class="th_name">Property Name</th>
   6202           <th class="th_type">Type</th>
   6203           <th class="th_description">Description</th>
   6204           <th class="th_units">Units</th>
   6205           <th class="th_range">Range</th>
   6206           <th class="th_notes">Notes</th>
   6207           <th class="th_tags">Tags</th>
   6208         </tr>
   6209       </thead>
   6210 
   6211       <tbody>
   6212 
   6213         
   6214 
   6215         
   6216 
   6217         
   6218 
   6219         
   6220 
   6221                 
   6222           <tr class="entry" id="controls_android.noiseReduction.mode">
   6223             <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
   6224             <td class="entry_type">
   6225                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6226 
   6227               <span class="entry_type_visibility"> [public]</span>
   6228 
   6229                 <ul class="entry_type_enum">
   6230                   <li>
   6231                     <span class="entry_type_enum_name">OFF</span>
   6232                     <span class="entry_type_enum_notes">No noise reduction is applied</span>
   6233                   </li>
   6234                   <li>
   6235                     <span class="entry_type_enum_name">FAST</span>
   6236                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   6237             bayer output</span>
   6238                   </li>
   6239                   <li>
   6240                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   6241                     <span class="entry_type_enum_notes">May slow down frame rate to provide highest
   6242             quality</span>
   6243                   </li>
   6244                 </ul>
   6245 
   6246             </td> <!-- entry_type -->
   6247 
   6248             <td class="entry_description">
   6249               Mode of operation for the noise reduction
   6250           algorithm
   6251             </td>
   6252 
   6253             <td class="entry_units">
   6254             </td>
   6255 
   6256             <td class="entry_range">
   6257               android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
   6258             </td>
   6259 
   6260             <td class="entry_notes">
   6261             </td>
   6262 
   6263             <td class="entry_tags">
   6264               <ul class="entry_tags">
   6265                   <li><a href="#tag_V1">V1</a></li>
   6266               </ul>
   6267             </td>
   6268 
   6269           </tr> <!-- end of entry -->
   6270         
   6271                 
   6272           <tr class="entry" id="controls_android.noiseReduction.strength">
   6273             <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>strength</td>
   6274             <td class="entry_type">
   6275                 <span class="entry_type_name">byte</span>
   6276 
   6277               <span class="entry_type_visibility"> [system]</span>
   6278 
   6279 
   6280             </td> <!-- entry_type -->
   6281 
   6282             <td class="entry_description">
   6283               Control the amount of noise reduction
   6284           applied to the images
   6285             </td>
   6286 
   6287             <td class="entry_units">
   6288               1-10; 10 is max noise reduction
   6289             </td>
   6290 
   6291             <td class="entry_range">
   6292               1 - 10
   6293             </td>
   6294 
   6295             <td class="entry_notes">
   6296             </td>
   6297 
   6298             <td class="entry_tags">
   6299             </td>
   6300 
   6301           </tr> <!-- end of entry -->
   6302         
   6303         
   6304 
   6305       <!-- end of kind -->
   6306       </tbody>
   6307       <tr><td colspan="7" class="kind">dynamic</td></tr>
   6308 
   6309       <thead class="entries_header">
   6310         <tr>
   6311           <th class="th_name">Property Name</th>
   6312           <th class="th_type">Type</th>
   6313           <th class="th_description">Description</th>
   6314           <th class="th_units">Units</th>
   6315           <th class="th_range">Range</th>
   6316           <th class="th_notes">Notes</th>
   6317           <th class="th_tags">Tags</th>
   6318         </tr>
   6319       </thead>
   6320 
   6321       <tbody>
   6322 
   6323         
   6324 
   6325         
   6326 
   6327         
   6328 
   6329         
   6330 
   6331                 
   6332           <tr class="entry" id="dynamic_android.noiseReduction.mode">
   6333             <td class="entry_name">android.<wbr>noise<wbr>Reduction.<wbr>mode</td>
   6334             <td class="entry_type">
   6335                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6336 
   6337               <span class="entry_type_visibility"> [public]</span>
   6338 
   6339                 <ul class="entry_type_enum">
   6340                   <li>
   6341                     <span class="entry_type_enum_name">OFF</span>
   6342                     <span class="entry_type_enum_notes">No noise reduction is applied</span>
   6343                   </li>
   6344                   <li>
   6345                     <span class="entry_type_enum_name">FAST</span>
   6346                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   6347             bayer output</span>
   6348                   </li>
   6349                   <li>
   6350                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   6351                     <span class="entry_type_enum_notes">May slow down frame rate to provide highest
   6352             quality</span>
   6353                   </li>
   6354                 </ul>
   6355 
   6356             </td> <!-- entry_type -->
   6357 
   6358             <td class="entry_description">
   6359               Mode of operation for the noise reduction
   6360           algorithm
   6361             </td>
   6362 
   6363             <td class="entry_units">
   6364             </td>
   6365 
   6366             <td class="entry_range">
   6367               android.<wbr>noise<wbr>Reduction.<wbr>available<wbr>Modes
   6368             </td>
   6369 
   6370             <td class="entry_notes">
   6371             </td>
   6372 
   6373             <td class="entry_tags">
   6374               <ul class="entry_tags">
   6375                   <li><a href="#tag_V1">V1</a></li>
   6376               </ul>
   6377             </td>
   6378 
   6379           </tr> <!-- end of entry -->
   6380         
   6381         
   6382 
   6383       <!-- end of kind -->
   6384       </tbody>
   6385 
   6386   <!-- end of section -->
   6387   <tr><td colspan="7" id="section_quirks" class="section">quirks</td></tr>
   6388 
   6389 
   6390       <tr><td colspan="7" class="kind">static</td></tr>
   6391 
   6392       <thead class="entries_header">
   6393         <tr>
   6394           <th class="th_name">Property Name</th>
   6395           <th class="th_type">Type</th>
   6396           <th class="th_description">Description</th>
   6397           <th class="th_units">Units</th>
   6398           <th class="th_range">Range</th>
   6399           <th class="th_notes">Notes</th>
   6400           <th class="th_tags">Tags</th>
   6401         </tr>
   6402       </thead>
   6403 
   6404       <tbody>
   6405 
   6406         
   6407 
   6408         
   6409 
   6410         
   6411 
   6412         
   6413 
   6414                 
   6415           <tr class="entry" id="static_android.quirks.meteringCropRegion">
   6416             <td class="entry_name">android.<wbr>quirks.<wbr>metering<wbr>Crop<wbr>Region</td>
   6417             <td class="entry_type">
   6418                 <span class="entry_type_name">byte</span>
   6419 
   6420               <span class="entry_type_visibility"> [system]</span>
   6421 
   6422 
   6423             </td> <!-- entry_type -->
   6424 
   6425             <td class="entry_description">
   6426               If set to 1,<wbr> the camera service does not
   6427           scale 'normalized' coordinates with respect to the crop
   6428           region.<wbr> This applies to metering input (a{e,<wbr>f,<wbr>wb}Region
   6429           and output (face rectangles).<wbr>
   6430             </td>
   6431 
   6432             <td class="entry_units">
   6433             </td>
   6434 
   6435             <td class="entry_range">
   6436             </td>
   6437 
   6438             <td class="entry_notes">
   6439               Normalized coordinates refer to those in the
   6440           (-1000,<wbr>1000) range mentioned in the
   6441           android.<wbr>hardware.<wbr><wbr>Camera API.<wbr>
   6442 <br>
   6443 <br>          HAL implementations should instead always use and emit
   6444           sensor array-relative coordinates for all region data.<wbr> Does
   6445           not need to be listed in static metadata.<wbr> Support will be
   6446           removed in future versions of camera service.<wbr>
   6447             </td>
   6448 
   6449             <td class="entry_tags">
   6450             </td>
   6451 
   6452           </tr> <!-- end of entry -->
   6453         
   6454                 
   6455           <tr class="entry" id="static_android.quirks.triggerAfWithAuto">
   6456             <td class="entry_name">android.<wbr>quirks.<wbr>trigger<wbr>Af<wbr>With<wbr>Auto</td>
   6457             <td class="entry_type">
   6458                 <span class="entry_type_name">byte</span>
   6459 
   6460               <span class="entry_type_visibility"> [system]</span>
   6461 
   6462 
   6463             </td> <!-- entry_type -->
   6464 
   6465             <td class="entry_description">
   6466               If set to 1,<wbr> then the camera service always
   6467           switches to FOCUS_<wbr>MODE_<wbr>AUTO before issuing a AF
   6468           trigger.<wbr>
   6469             </td>
   6470 
   6471             <td class="entry_units">
   6472             </td>
   6473 
   6474             <td class="entry_range">
   6475             </td>
   6476 
   6477             <td class="entry_notes">
   6478               HAL implementations should implement AF trigger
   6479           modes for AUTO,<wbr> MACRO,<wbr> CONTINUOUS_<wbr>FOCUS,<wbr> and
   6480           CONTINUOUS_<wbr>PICTURE modes instead of using this flag.<wbr> Does
   6481           not need to be listed in static metadata.<wbr> Support will be
   6482           removed in future versions of camera service
   6483             </td>
   6484 
   6485             <td class="entry_tags">
   6486             </td>
   6487 
   6488           </tr> <!-- end of entry -->
   6489         
   6490                 
   6491           <tr class="entry" id="static_android.quirks.useZslFormat">
   6492             <td class="entry_name">android.<wbr>quirks.<wbr>use<wbr>Zsl<wbr>Format</td>
   6493             <td class="entry_type">
   6494                 <span class="entry_type_name">byte</span>
   6495 
   6496               <span class="entry_type_visibility"> [system]</span>
   6497 
   6498 
   6499             </td> <!-- entry_type -->
   6500 
   6501             <td class="entry_description">
   6502               If set to 1,<wbr> the camera service uses
   6503           CAMERA2_<wbr>PIXEL_<wbr>FORMAT_<wbr>ZSL instead of
   6504           HAL_<wbr>PIXEL_<wbr>FORMAT_<wbr>IMPLEMENTATION_<wbr>DEFINED for the zero
   6505           shutter lag stream
   6506             </td>
   6507 
   6508             <td class="entry_units">
   6509             </td>
   6510 
   6511             <td class="entry_range">
   6512             </td>
   6513 
   6514             <td class="entry_notes">
   6515               HAL implementations should use gralloc usage flags
   6516           to determine that a stream will be used for
   6517           zero-shutter-lag,<wbr> instead of relying on an explicit
   6518           format setting.<wbr> Does not need to be listed in static
   6519           metadata.<wbr> Support will be removed in future versions of
   6520           camera service.<wbr>
   6521             </td>
   6522 
   6523             <td class="entry_tags">
   6524             </td>
   6525 
   6526           </tr> <!-- end of entry -->
   6527         
   6528                 
   6529           <tr class="entry" id="static_android.quirks.usePartialResult">
   6530             <td class="entry_name">android.<wbr>quirks.<wbr>use<wbr>Partial<wbr>Result</td>
   6531             <td class="entry_type">
   6532                 <span class="entry_type_name">byte</span>
   6533 
   6534               <span class="entry_type_visibility"> [hidden]</span>
   6535 
   6536 
   6537             </td> <!-- entry_type -->
   6538 
   6539             <td class="entry_description">
   6540               If set to 1,<wbr> the HAL will always split result
   6541           metadata for a single capture into multiple buffers,<wbr>
   6542           returned using multiple process_<wbr>capture_<wbr>result calls.<wbr>
   6543           
   6544             </td>
   6545 
   6546             <td class="entry_units">
   6547             </td>
   6548 
   6549             <td class="entry_range">
   6550             </td>
   6551 
   6552             <td class="entry_notes">
   6553               Does not need to be listed in static
   6554           metadata.<wbr> Support for partial results will be reworked in
   6555           future versions of camera service.<wbr> This quirk will stop
   6556           working at that point; DO NOT USE without careful
   6557           consideration of future support.<wbr>
   6558           
   6559             </td>
   6560 
   6561             <td class="entry_tags">
   6562             </td>
   6563 
   6564           </tr> <!-- end of entry -->
   6565         
   6566         
   6567 
   6568       <!-- end of kind -->
   6569       </tbody>
   6570       <tr><td colspan="7" class="kind">dynamic</td></tr>
   6571 
   6572       <thead class="entries_header">
   6573         <tr>
   6574           <th class="th_name">Property Name</th>
   6575           <th class="th_type">Type</th>
   6576           <th class="th_description">Description</th>
   6577           <th class="th_units">Units</th>
   6578           <th class="th_range">Range</th>
   6579           <th class="th_notes">Notes</th>
   6580           <th class="th_tags">Tags</th>
   6581         </tr>
   6582       </thead>
   6583 
   6584       <tbody>
   6585 
   6586         
   6587 
   6588         
   6589 
   6590         
   6591 
   6592         
   6593 
   6594                 
   6595           <tr class="entry" id="dynamic_android.quirks.partialResult">
   6596             <td class="entry_name">android.<wbr>quirks.<wbr>partial<wbr>Result</td>
   6597             <td class="entry_type">
   6598                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6599 
   6600               <span class="entry_type_visibility"> [hidden as boolean]</span>
   6601 
   6602                 <ul class="entry_type_enum">
   6603                   <li>
   6604                     <span class="entry_type_enum_name">FINAL</span>
   6605                     <span class="entry_type_enum_notes">The last or only metadata result buffer
   6606             for this capture.<wbr></span>
   6607                   </li>
   6608                   <li>
   6609                     <span class="entry_type_enum_name">PARTIAL</span>
   6610                     <span class="entry_type_enum_notes">A partial buffer of result metadata for this
   6611             capture.<wbr> More result buffers for this capture will be sent
   6612             by the HAL,<wbr> the last of which will be marked
   6613             FINAL.<wbr></span>
   6614                   </li>
   6615                 </ul>
   6616 
   6617             </td> <!-- entry_type -->
   6618 
   6619             <td class="entry_description">
   6620               Whether a result given to the framework is the
   6621           final one for the capture,<wbr> or only a partial that contains a
   6622           subset of the full set of dynamic metadata
   6623           values.<wbr>
   6624             </td>
   6625 
   6626             <td class="entry_units">
   6627             </td>
   6628 
   6629             <td class="entry_range">
   6630               Optional.<wbr> Default value is FINAL.<wbr>
   6631             </td>
   6632 
   6633             <td class="entry_notes">
   6634               The entries in the result metadata buffers for a
   6635           single capture may not overlap,<wbr> except for this entry.<wbr> The
   6636           FINAL buffers must retain FIFO ordering relative to the
   6637           requests that generate them,<wbr> so the FINAL buffer for frame 3 must
   6638           always be sent to the framework after the FINAL buffer for frame 2,<wbr> and
   6639           before the FINAL buffer for frame 4.<wbr> PARTIAL buffers may be returned
   6640           in any order relative to other frames,<wbr> but all PARTIAL buffers for a given
   6641           capture must arrive before the FINAL buffer for that capture.<wbr> This entry may
   6642           only be used by the HAL if quirks.<wbr>usePartialResult is set to 1.<wbr>
   6643           
   6644             </td>
   6645 
   6646             <td class="entry_tags">
   6647             </td>
   6648 
   6649           </tr> <!-- end of entry -->
   6650         
   6651         
   6652 
   6653       <!-- end of kind -->
   6654       </tbody>
   6655 
   6656   <!-- end of section -->
   6657   <tr><td colspan="7" id="section_request" class="section">request</td></tr>
   6658 
   6659 
   6660       <tr><td colspan="7" class="kind">controls</td></tr>
   6661 
   6662       <thead class="entries_header">
   6663         <tr>
   6664           <th class="th_name">Property Name</th>
   6665           <th class="th_type">Type</th>
   6666           <th class="th_description">Description</th>
   6667           <th class="th_units">Units</th>
   6668           <th class="th_range">Range</th>
   6669           <th class="th_notes">Notes</th>
   6670           <th class="th_tags">Tags</th>
   6671         </tr>
   6672       </thead>
   6673 
   6674       <tbody>
   6675 
   6676         
   6677 
   6678         
   6679 
   6680         
   6681 
   6682         
   6683 
   6684                 
   6685           <tr class="entry" id="controls_android.request.frameCount">
   6686             <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
   6687             <td class="entry_type">
   6688                 <span class="entry_type_name">int32</span>
   6689 
   6690               <span class="entry_type_visibility"> [system]</span>
   6691 
   6692 
   6693             </td> <!-- entry_type -->
   6694 
   6695             <td class="entry_description">
   6696               A frame counter set by the framework.<wbr> Must
   6697           be maintained unchanged in output frame.<wbr> This value monotonically
   6698           increases with every new result (that is,<wbr> each new result has a unique
   6699           frameCount value).<wbr>
   6700           
   6701             </td>
   6702 
   6703             <td class="entry_units">
   6704               incrementing integer
   6705             </td>
   6706 
   6707             <td class="entry_range">
   6708               Any int
   6709             </td>
   6710 
   6711             <td class="entry_notes">
   6712             </td>
   6713 
   6714             <td class="entry_tags">
   6715             </td>
   6716 
   6717           </tr> <!-- end of entry -->
   6718         
   6719                 
   6720           <tr class="entry" id="controls_android.request.id">
   6721             <td class="entry_name">android.<wbr>request.<wbr>id</td>
   6722             <td class="entry_type">
   6723                 <span class="entry_type_name">int32</span>
   6724 
   6725               <span class="entry_type_visibility"> [hidden]</span>
   6726 
   6727 
   6728             </td> <!-- entry_type -->
   6729 
   6730             <td class="entry_description">
   6731               An application-specified ID for the current
   6732           request.<wbr> Must be maintained unchanged in output
   6733           frame
   6734             </td>
   6735 
   6736             <td class="entry_units">
   6737               arbitrary integer assigned by application
   6738             </td>
   6739 
   6740             <td class="entry_range">
   6741               Any int
   6742             </td>
   6743 
   6744             <td class="entry_notes">
   6745             </td>
   6746 
   6747             <td class="entry_tags">
   6748               <ul class="entry_tags">
   6749                   <li><a href="#tag_V1">V1</a></li>
   6750               </ul>
   6751             </td>
   6752 
   6753           </tr> <!-- end of entry -->
   6754         
   6755                 
   6756           <tr class="entry" id="controls_android.request.inputStreams">
   6757             <td class="entry_name">android.<wbr>request.<wbr>input<wbr>Streams</td>
   6758             <td class="entry_type">
   6759                 <span class="entry_type_name">int32</span>
   6760                 <span class="entry_type_container">x</span>
   6761 
   6762                 <span class="entry_type_array">
   6763                   n
   6764                 </span>
   6765               <span class="entry_type_visibility"> [system]</span>
   6766 
   6767 
   6768             </td> <!-- entry_type -->
   6769 
   6770             <td class="entry_description">
   6771               List which camera reprocess stream is used
   6772           for the source of reprocessing data.<wbr>
   6773             </td>
   6774 
   6775             <td class="entry_units">
   6776               List of camera reprocess stream IDs
   6777             </td>
   6778 
   6779             <td class="entry_range">
   6780               Typically,<wbr> only one entry allowed,<wbr> must be a valid
   6781           reprocess stream ID.<wbr>
   6782 
   6783           If android.<wbr>jpeg.<wbr>needs<wbr>Thumbnail is set,<wbr> then multiple
   6784           reprocess streams may be included in a single request; they
   6785           must be different scaled versions of the same image.<wbr>
   6786             </td>
   6787 
   6788             <td class="entry_notes">
   6789               Only meaningful when android.<wbr>request.<wbr>type ==
   6790           REPROCESS.<wbr> Ignored otherwise
   6791             </td>
   6792 
   6793             <td class="entry_tags">
   6794               <ul class="entry_tags">
   6795                   <li><a href="#tag_HAL2">HAL2</a></li>
   6796               </ul>
   6797             </td>
   6798 
   6799           </tr> <!-- end of entry -->
   6800         
   6801                 
   6802           <tr class="entry" id="controls_android.request.metadataMode">
   6803             <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
   6804             <td class="entry_type">
   6805                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6806 
   6807               <span class="entry_type_visibility"> [system]</span>
   6808 
   6809                 <ul class="entry_type_enum">
   6810                   <li>
   6811                     <span class="entry_type_enum_name">NONE</span>
   6812                     <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
   6813             for application-bound buffer data.<wbr> If no
   6814             application-bound streams exist,<wbr> no frame should be
   6815             placed in the output frame queue.<wbr> If such streams
   6816             exist,<wbr> a frame should be placed on the output queue
   6817             with null metadata but with the necessary output buffer
   6818             information.<wbr> Timestamp information should still be
   6819             included with any output stream buffers</span>
   6820                   </li>
   6821                   <li>
   6822                     <span class="entry_type_enum_name">FULL</span>
   6823                     <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
   6824             only be produced if they are separately
   6825             enabled</span>
   6826                   </li>
   6827                 </ul>
   6828 
   6829             </td> <!-- entry_type -->
   6830 
   6831             <td class="entry_description">
   6832               How much metadata to produce on
   6833           output
   6834             </td>
   6835 
   6836             <td class="entry_units">
   6837             </td>
   6838 
   6839             <td class="entry_range">
   6840             </td>
   6841 
   6842             <td class="entry_notes">
   6843             </td>
   6844 
   6845             <td class="entry_tags">
   6846             </td>
   6847 
   6848           </tr> <!-- end of entry -->
   6849         
   6850                 
   6851           <tr class="entry" id="controls_android.request.outputStreams">
   6852             <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
   6853             <td class="entry_type">
   6854                 <span class="entry_type_name">int32</span>
   6855                 <span class="entry_type_container">x</span>
   6856 
   6857                 <span class="entry_type_array">
   6858                   n
   6859                 </span>
   6860               <span class="entry_type_visibility"> [system]</span>
   6861 
   6862 
   6863             </td> <!-- entry_type -->
   6864 
   6865             <td class="entry_description">
   6866               Lists which camera output streams image data
   6867           from this capture must be sent to
   6868             </td>
   6869 
   6870             <td class="entry_units">
   6871               List of camera stream IDs
   6872             </td>
   6873 
   6874             <td class="entry_range">
   6875               List must only include streams that have been
   6876           created
   6877             </td>
   6878 
   6879             <td class="entry_notes">
   6880               If no output streams are listed,<wbr> then the image
   6881           data should simply be discarded.<wbr> The image data must
   6882           still be captured for metadata and statistics production,<wbr>
   6883           and the lens and flash must operate as requested.<wbr>
   6884             </td>
   6885 
   6886             <td class="entry_tags">
   6887               <ul class="entry_tags">
   6888                   <li><a href="#tag_HAL2">HAL2</a></li>
   6889               </ul>
   6890             </td>
   6891 
   6892           </tr> <!-- end of entry -->
   6893         
   6894                 
   6895           <tr class="entry" id="controls_android.request.type">
   6896             <td class="entry_name">android.<wbr>request.<wbr>type</td>
   6897             <td class="entry_type">
   6898                 <span class="entry_type_name entry_type_name_enum">byte</span>
   6899 
   6900               <span class="entry_type_visibility"> [system]</span>
   6901 
   6902                 <ul class="entry_type_enum">
   6903                   <li>
   6904                     <span class="entry_type_enum_name">CAPTURE</span>
   6905                     <span class="entry_type_enum_notes">Capture a new image from the imaging hardware,<wbr>
   6906             and process it according to the
   6907             settings</span>
   6908                   </li>
   6909                   <li>
   6910                     <span class="entry_type_enum_name">REPROCESS</span>
   6911                     <span class="entry_type_enum_notes">Process previously captured data; the
   6912             android.<wbr>request.<wbr>input<wbr>Stream parameter determines the
   6913             source reprocessing stream.<wbr> TODO: Mark dynamic metadata
   6914             needed for reprocessing with [RP]</span>
   6915                   </li>
   6916                 </ul>
   6917 
   6918             </td> <!-- entry_type -->
   6919 
   6920             <td class="entry_description">
   6921               The type of the request; either CAPTURE or
   6922           REPROCESS.<wbr> For HAL3,<wbr> this tag is redundant.<wbr>
   6923             </td>
   6924 
   6925             <td class="entry_units">
   6926             </td>
   6927 
   6928             <td class="entry_range">
   6929             </td>
   6930 
   6931             <td class="entry_notes">
   6932             </td>
   6933 
   6934             <td class="entry_tags">
   6935               <ul class="entry_tags">
   6936                   <li><a href="#tag_HAL2">HAL2</a></li>
   6937               </ul>
   6938             </td>
   6939 
   6940           </tr> <!-- end of entry -->
   6941         
   6942         
   6943 
   6944       <!-- end of kind -->
   6945       </tbody>
   6946       <tr><td colspan="7" class="kind">static</td></tr>
   6947 
   6948       <thead class="entries_header">
   6949         <tr>
   6950           <th class="th_name">Property Name</th>
   6951           <th class="th_type">Type</th>
   6952           <th class="th_description">Description</th>
   6953           <th class="th_units">Units</th>
   6954           <th class="th_range">Range</th>
   6955           <th class="th_notes">Notes</th>
   6956           <th class="th_tags">Tags</th>
   6957         </tr>
   6958       </thead>
   6959 
   6960       <tbody>
   6961 
   6962         
   6963 
   6964         
   6965 
   6966         
   6967 
   6968         
   6969 
   6970                 
   6971           <tr class="entry" id="static_android.request.maxNumOutputStreams">
   6972             <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Output<wbr>Streams</td>
   6973             <td class="entry_type">
   6974                 <span class="entry_type_name">int32</span>
   6975                 <span class="entry_type_container">x</span>
   6976 
   6977                 <span class="entry_type_array">
   6978                   3
   6979                 </span>
   6980               <span class="entry_type_visibility"> [public]</span>
   6981 
   6982 
   6983             </td> <!-- entry_type -->
   6984 
   6985             <td class="entry_description">
   6986               How many output streams can be allocated at
   6987           the same time for each type of stream
   6988             </td>
   6989 
   6990             <td class="entry_units">
   6991               The number of raw sensor streams; the number of
   6992           processed,<wbr> uncompressed streams; and the number of
   6993           JPEG-compressed streams
   6994             </td>
   6995 
   6996             <td class="entry_range">
   6997               >=1 for Raw and JPEG-compressed stream.<wbr> >= 3
   6998           for processed,<wbr> uncompressed streams
   6999             </td>
   7000 
   7001             <td class="entry_notes">
   7002               Video snapshot with preview callbacks requires 3
   7003           processed streams (preview,<wbr> record,<wbr> app callbacks) and
   7004           one JPEG stream (snapshot)
   7005             </td>
   7006 
   7007             <td class="entry_tags">
   7008               <ul class="entry_tags">
   7009                   <li><a href="#tag_BC">BC</a></li>
   7010               </ul>
   7011             </td>
   7012 
   7013           </tr> <!-- end of entry -->
   7014         
   7015                 
   7016           <tr class="entry" id="static_android.request.maxNumReprocessStreams">
   7017             <td class="entry_name">android.<wbr>request.<wbr>max<wbr>Num<wbr>Reprocess<wbr>Streams</td>
   7018             <td class="entry_type">
   7019                 <span class="entry_type_name">int32</span>
   7020                 <span class="entry_type_container">x</span>
   7021 
   7022                 <span class="entry_type_array">
   7023                   1
   7024                 </span>
   7025               <span class="entry_type_visibility"> [system]</span>
   7026 
   7027 
   7028             </td> <!-- entry_type -->
   7029 
   7030             <td class="entry_description">
   7031               How many reprocessing streams of any type
   7032           can be allocated at the same time
   7033             </td>
   7034 
   7035             <td class="entry_units">
   7036             </td>
   7037 
   7038             <td class="entry_range">
   7039               >= 1
   7040             </td>
   7041 
   7042             <td class="entry_notes">
   7043             </td>
   7044 
   7045             <td class="entry_tags">
   7046             </td>
   7047 
   7048           </tr> <!-- end of entry -->
   7049         
   7050         
   7051 
   7052       <!-- end of kind -->
   7053       </tbody>
   7054       <tr><td colspan="7" class="kind">dynamic</td></tr>
   7055 
   7056       <thead class="entries_header">
   7057         <tr>
   7058           <th class="th_name">Property Name</th>
   7059           <th class="th_type">Type</th>
   7060           <th class="th_description">Description</th>
   7061           <th class="th_units">Units</th>
   7062           <th class="th_range">Range</th>
   7063           <th class="th_notes">Notes</th>
   7064           <th class="th_tags">Tags</th>
   7065         </tr>
   7066       </thead>
   7067 
   7068       <tbody>
   7069 
   7070         
   7071 
   7072         
   7073 
   7074         
   7075 
   7076         
   7077 
   7078                 
   7079           <tr class="entry" id="dynamic_android.request.frameCount">
   7080             <td class="entry_name">android.<wbr>request.<wbr>frame<wbr>Count</td>
   7081             <td class="entry_type">
   7082                 <span class="entry_type_name">int32</span>
   7083 
   7084               <span class="entry_type_visibility"> [public]</span>
   7085 
   7086 
   7087             </td> <!-- entry_type -->
   7088 
   7089             <td class="entry_description">
   7090               A frame counter set by the framework.<wbr> This value monotonically
   7091           increases with every new result (that is,<wbr> each new result has a unique
   7092           frameCount value).<wbr>
   7093             </td>
   7094 
   7095             <td class="entry_units">
   7096               count of frames
   7097             </td>
   7098 
   7099             <td class="entry_range">
   7100               > 0
   7101             </td>
   7102 
   7103             <td class="entry_notes">
   7104               Reset on release()
   7105             </td>
   7106 
   7107             <td class="entry_tags">
   7108             </td>
   7109 
   7110           </tr> <!-- end of entry -->
   7111         
   7112                 
   7113           <tr class="entry" id="dynamic_android.request.id">
   7114             <td class="entry_name">android.<wbr>request.<wbr>id</td>
   7115             <td class="entry_type">
   7116                 <span class="entry_type_name">int32</span>
   7117 
   7118               <span class="entry_type_visibility"> [hidden]</span>
   7119 
   7120 
   7121             </td> <!-- entry_type -->
   7122 
   7123             <td class="entry_description">
   7124               An application-specified ID for the current
   7125           request.<wbr> Must be maintained unchanged in output
   7126           frame
   7127             </td>
   7128 
   7129             <td class="entry_units">
   7130               arbitrary integer assigned by application
   7131             </td>
   7132 
   7133             <td class="entry_range">
   7134               Any int
   7135             </td>
   7136 
   7137             <td class="entry_notes">
   7138             </td>
   7139 
   7140             <td class="entry_tags">
   7141               <ul class="entry_tags">
   7142                   <li><a href="#tag_V1">V1</a></li>
   7143               </ul>
   7144             </td>
   7145 
   7146           </tr> <!-- end of entry -->
   7147         
   7148                 
   7149           <tr class="entry" id="dynamic_android.request.metadataMode">
   7150             <td class="entry_name">android.<wbr>request.<wbr>metadata<wbr>Mode</td>
   7151             <td class="entry_type">
   7152                 <span class="entry_type_name entry_type_name_enum">byte</span>
   7153 
   7154               <span class="entry_type_visibility"> [system]</span>
   7155 
   7156                 <ul class="entry_type_enum">
   7157                   <li>
   7158                     <span class="entry_type_enum_name">NONE</span>
   7159                     <span class="entry_type_enum_notes">No metadata should be produced on output,<wbr> except
   7160             for application-bound buffer data.<wbr> If no
   7161             application-bound streams exist,<wbr> no frame should be
   7162             placed in the output frame queue.<wbr> If such streams
   7163             exist,<wbr> a frame should be placed on the output queue
   7164             with null metadata but with the necessary output buffer
   7165             information.<wbr> Timestamp information should still be
   7166             included with any output stream buffers</span>
   7167                   </li>
   7168                   <li>
   7169                     <span class="entry_type_enum_name">FULL</span>
   7170                     <span class="entry_type_enum_notes">All metadata should be produced.<wbr> Statistics will
   7171             only be produced if they are separately
   7172             enabled</span>
   7173                   </li>
   7174                 </ul>
   7175 
   7176             </td> <!-- entry_type -->
   7177 
   7178             <td class="entry_description">
   7179               How much metadata to produce on
   7180           output
   7181             </td>
   7182 
   7183             <td class="entry_units">
   7184             </td>
   7185 
   7186             <td class="entry_range">
   7187             </td>
   7188 
   7189             <td class="entry_notes">
   7190             </td>
   7191 
   7192             <td class="entry_tags">
   7193             </td>
   7194 
   7195           </tr> <!-- end of entry -->
   7196         
   7197                 
   7198           <tr class="entry" id="dynamic_android.request.outputStreams">
   7199             <td class="entry_name">android.<wbr>request.<wbr>output<wbr>Streams</td>
   7200             <td class="entry_type">
   7201                 <span class="entry_type_name">int32</span>
   7202                 <span class="entry_type_container">x</span>
   7203 
   7204                 <span class="entry_type_array">
   7205                   n
   7206                 </span>
   7207               <span class="entry_type_visibility"> [system]</span>
   7208 
   7209 
   7210             </td> <!-- entry_type -->
   7211 
   7212             <td class="entry_description">
   7213               Lists which camera output streams image data
   7214           from this capture must be sent to
   7215             </td>
   7216 
   7217             <td class="entry_units">
   7218               List of camera stream IDs
   7219             </td>
   7220 
   7221             <td class="entry_range">
   7222               List must only include streams that have been
   7223           created
   7224             </td>
   7225 
   7226             <td class="entry_notes">
   7227               If no output streams are listed,<wbr> then the image
   7228           data should simply be discarded.<wbr> The image data must
   7229           still be captured for metadata and statistics production,<wbr>
   7230           and the lens and flash must operate as requested.<wbr>
   7231             </td>
   7232 
   7233             <td class="entry_tags">
   7234               <ul class="entry_tags">
   7235                   <li><a href="#tag_HAL2">HAL2</a></li>
   7236               </ul>
   7237             </td>
   7238 
   7239           </tr> <!-- end of entry -->
   7240         
   7241         
   7242 
   7243       <!-- end of kind -->
   7244       </tbody>
   7245 
   7246   <!-- end of section -->
   7247   <tr><td colspan="7" id="section_scaler" class="section">scaler</td></tr>
   7248 
   7249 
   7250       <tr><td colspan="7" class="kind">controls</td></tr>
   7251 
   7252       <thead class="entries_header">
   7253         <tr>
   7254           <th class="th_name">Property Name</th>
   7255           <th class="th_type">Type</th>
   7256           <th class="th_description">Description</th>
   7257           <th class="th_units">Units</th>
   7258           <th class="th_range">Range</th>
   7259           <th class="th_notes">Notes</th>
   7260           <th class="th_tags">Tags</th>
   7261         </tr>
   7262       </thead>
   7263 
   7264       <tbody>
   7265 
   7266         
   7267 
   7268         
   7269 
   7270         
   7271 
   7272         
   7273 
   7274                 
   7275           <tr class="entry" id="controls_android.scaler.cropRegion">
   7276             <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
   7277             <td class="entry_type">
   7278                 <span class="entry_type_name">int32</span>
   7279                 <span class="entry_type_container">x</span>
   7280 
   7281                 <span class="entry_type_array">
   7282                   4
   7283                 </span>
   7284               <span class="entry_type_visibility"> [public as rectangle]</span>
   7285 
   7286 
   7287             </td> <!-- entry_type -->
   7288 
   7289             <td class="entry_description">
   7290               (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
   7291 <br>
   7292 <br>          A rectangle with the top-level corner of (x,<wbr>y) and size
   7293           (width,<wbr> height).<wbr> The region of the sensor that is used for
   7294           output.<wbr> Each stream must use this rectangle to produce its
   7295           output,<wbr> cropping to a smaller region if necessary to
   7296           maintain the stream's aspect ratio.<wbr>
   7297 <br>
   7298 <br>          HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
   7299             </td>
   7300 
   7301             <td class="entry_units">
   7302               (x,<wbr>y) of top-left corner,<wbr> width and height of region
   7303           in pixels; (0,<wbr>0) is top-left corner of
   7304           android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
   7305             </td>
   7306 
   7307             <td class="entry_range">
   7308             </td>
   7309 
   7310             <td class="entry_notes">
   7311               
   7312             Any additional per-stream cropping must be done to
   7313             maximize the final pixel area of the stream.<wbr>
   7314 <br>
   7315 <br>            For example,<wbr> if the crop region is set to a 4:3 aspect
   7316             ratio,<wbr> then 4:3 streams should use the exact crop
   7317             region.<wbr> 16:9 streams should further crop vertically
   7318             (letterbox).<wbr>
   7319 <br>
   7320 <br>            Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
   7321             outputs should crop horizontally (pillarbox),<wbr> and 16:9
   7322             streams should match exactly.<wbr> These additional crops must
   7323             be centered within the crop region.<wbr>
   7324 <br>
   7325 <br>            The output streams must maintain square pixels at all
   7326             times,<wbr> no matter what the relative aspect ratios of the
   7327             crop region and the stream are.<wbr>  Negative values for
   7328             corner are allowed for raw output if full pixel array is
   7329             larger than active pixel array.<wbr> Width and height may be
   7330             rounded to nearest larger supportable width,<wbr> especially
   7331             for raw output,<wbr> where only a few fixed scales may be
   7332             possible.<wbr> The width and height of the crop region cannot
   7333             be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
   7334             android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
   7335             activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
   7336             respectively.<wbr>
   7337           
   7338             </td>
   7339 
   7340             <td class="entry_tags">
   7341               <ul class="entry_tags">
   7342                   <li><a href="#tag_BC">BC</a></li>
   7343               </ul>
   7344             </td>
   7345 
   7346           </tr> <!-- end of entry -->
   7347         
   7348         
   7349 
   7350       <!-- end of kind -->
   7351       </tbody>
   7352       <tr><td colspan="7" class="kind">static</td></tr>
   7353 
   7354       <thead class="entries_header">
   7355         <tr>
   7356           <th class="th_name">Property Name</th>
   7357           <th class="th_type">Type</th>
   7358           <th class="th_description">Description</th>
   7359           <th class="th_units">Units</th>
   7360           <th class="th_range">Range</th>
   7361           <th class="th_notes">Notes</th>
   7362           <th class="th_tags">Tags</th>
   7363         </tr>
   7364       </thead>
   7365 
   7366       <tbody>
   7367 
   7368         
   7369 
   7370         
   7371 
   7372         
   7373 
   7374         
   7375 
   7376                 
   7377           <tr class="entry" id="static_android.scaler.availableFormats">
   7378             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Formats</td>
   7379             <td class="entry_type">
   7380                 <span class="entry_type_name entry_type_name_enum">int32</span>
   7381                 <span class="entry_type_container">x</span>
   7382 
   7383                 <span class="entry_type_array">
   7384                   n
   7385                 </span>
   7386               <span class="entry_type_visibility"> [public as imageFormat]</span>
   7387                 <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>
   7388 
   7389                 <ul class="entry_type_enum">
   7390                   <li>
   7391                     <span class="entry_type_enum_name">RAW_SENSOR</span>
   7392                     <span class="entry_type_enum_value">0x20</span>
   7393                   </li>
   7394                   <li>
   7395                     <span class="entry_type_enum_name">YV12</span>
   7396                     <span class="entry_type_enum_value">0x32315659</span>
   7397                     <span class="entry_type_enum_notes">YCrCb 4:2:0 Planar</span>
   7398                   </li>
   7399                   <li>
   7400                     <span class="entry_type_enum_name">YCrCb_420_SP</span>
   7401                     <span class="entry_type_enum_value">0x11</span>
   7402                     <span class="entry_type_enum_notes">NV21</span>
   7403                   </li>
   7404                   <li>
   7405                     <span class="entry_type_enum_name">IMPLEMENTATION_DEFINED</span>
   7406                     <span class="entry_type_enum_value">0x22</span>
   7407                     <span class="entry_type_enum_notes">Hal Implementation Defined</span>
   7408                   </li>
   7409                   <li>
   7410                     <span class="entry_type_enum_name">YCbCr_420_888</span>
   7411                     <span class="entry_type_enum_value">0x23</span>
   7412                     <span class="entry_type_enum_notes">Flexible YUV420 Format</span>
   7413                   </li>
   7414                   <li>
   7415                     <span class="entry_type_enum_name">BLOB</span>
   7416                     <span class="entry_type_enum_value">0x21</span>
   7417                     <span class="entry_type_enum_notes">JPEG</span>
   7418                   </li>
   7419                 </ul>
   7420 
   7421             </td> <!-- entry_type -->
   7422 
   7423             <td class="entry_description">
   7424               List of app-visible formats
   7425             </td>
   7426 
   7427             <td class="entry_units">
   7428             </td>
   7429 
   7430             <td class="entry_range">
   7431             </td>
   7432 
   7433             <td class="entry_notes">
   7434             </td>
   7435 
   7436             <td class="entry_tags">
   7437               <ul class="entry_tags">
   7438                   <li><a href="#tag_BC">BC</a></li>
   7439               </ul>
   7440             </td>
   7441 
   7442           </tr> <!-- end of entry -->
   7443         
   7444                 
   7445           <tr class="entry" id="static_android.scaler.availableJpegMinDurations">
   7446             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations</td>
   7447             <td class="entry_type">
   7448                 <span class="entry_type_name">int64</span>
   7449                 <span class="entry_type_container">x</span>
   7450 
   7451                 <span class="entry_type_array">
   7452                   n
   7453                 </span>
   7454               <span class="entry_type_visibility"> [public]</span>
   7455 
   7456 
   7457             </td> <!-- entry_type -->
   7458 
   7459             <td class="entry_description">
   7460               The minimum frame duration that is supported
   7461           for each resolution in availableJpegSizes.<wbr> Should
   7462           correspond to the frame duration when only that JPEG
   7463           stream is active and captured in a burst,<wbr> with all
   7464           processing set to FAST
   7465             </td>
   7466 
   7467             <td class="entry_units">
   7468             </td>
   7469 
   7470             <td class="entry_range">
   7471             </td>
   7472 
   7473             <td class="entry_notes">
   7474               When multiple streams are configured,<wbr> the minimum
   7475           frame duration will be >= max(individual stream min
   7476           durations)
   7477             </td>
   7478 
   7479             <td class="entry_tags">
   7480               <ul class="entry_tags">
   7481                   <li><a href="#tag_BC">BC</a></li>
   7482               </ul>
   7483             </td>
   7484 
   7485           </tr> <!-- end of entry -->
   7486         
   7487                 
   7488           <tr class="entry" id="static_android.scaler.availableJpegSizes">
   7489             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Sizes</td>
   7490             <td class="entry_type">
   7491                 <span class="entry_type_name">int32</span>
   7492                 <span class="entry_type_container">x</span>
   7493 
   7494                 <span class="entry_type_array">
   7495                   n x 2
   7496                 </span>
   7497               <span class="entry_type_visibility"> [public as size]</span>
   7498 
   7499 
   7500             </td> <!-- entry_type -->
   7501 
   7502             <td class="entry_description">
   7503               The resolutions available for output from
   7504           the JPEG block.<wbr> Listed as width x height
   7505             </td>
   7506 
   7507             <td class="entry_units">
   7508             </td>
   7509 
   7510             <td class="entry_range">
   7511               Must include: - sensor maximum resolution Should
   7512           include: - half/<wbr>quarter max resolution
   7513             </td>
   7514 
   7515             <td class="entry_notes">
   7516             </td>
   7517 
   7518             <td class="entry_tags">
   7519               <ul class="entry_tags">
   7520                   <li><a href="#tag_BC">BC</a></li>
   7521               </ul>
   7522             </td>
   7523 
   7524           </tr> <!-- end of entry -->
   7525         
   7526                 
   7527           <tr class="entry" id="static_android.scaler.availableMaxDigitalZoom">
   7528             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Max<wbr>Digital<wbr>Zoom</td>
   7529             <td class="entry_type">
   7530                 <span class="entry_type_name">float</span>
   7531 
   7532               <span class="entry_type_visibility"> [public]</span>
   7533 
   7534 
   7535             </td> <!-- entry_type -->
   7536 
   7537             <td class="entry_description">
   7538               The maximum ratio between active area width
   7539           and crop region width,<wbr> or between active area height and
   7540           crop region height,<wbr> if the crop region height is larger
   7541           than width
   7542             </td>
   7543 
   7544             <td class="entry_units">
   7545             </td>
   7546 
   7547             <td class="entry_range">
   7548               >=1
   7549             </td>
   7550 
   7551             <td class="entry_notes">
   7552             </td>
   7553 
   7554             <td class="entry_tags">
   7555               <ul class="entry_tags">
   7556                   <li><a href="#tag_BC">BC</a></li>
   7557               </ul>
   7558             </td>
   7559 
   7560           </tr> <!-- end of entry -->
   7561         
   7562                 
   7563           <tr class="entry" id="static_android.scaler.availableProcessedMinDurations">
   7564             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations</td>
   7565             <td class="entry_type">
   7566                 <span class="entry_type_name">int64</span>
   7567                 <span class="entry_type_container">x</span>
   7568 
   7569                 <span class="entry_type_array">
   7570                   n
   7571                 </span>
   7572               <span class="entry_type_visibility"> [public]</span>
   7573 
   7574 
   7575             </td> <!-- entry_type -->
   7576 
   7577             <td class="entry_description">
   7578               The minimum frame duration that is supported
   7579           for each resolution in availableProcessedSizes.<wbr> Should
   7580           correspond to the frame duration when only that processed
   7581           stream is active,<wbr> with all processing set to
   7582           FAST
   7583             </td>
   7584 
   7585             <td class="entry_units">
   7586             </td>
   7587 
   7588             <td class="entry_range">
   7589             </td>
   7590 
   7591             <td class="entry_notes">
   7592               When multiple streams are configured,<wbr> the minimum
   7593           frame duration will be >= max(individual stream min
   7594           durations)
   7595             </td>
   7596 
   7597             <td class="entry_tags">
   7598               <ul class="entry_tags">
   7599                   <li><a href="#tag_BC">BC</a></li>
   7600               </ul>
   7601             </td>
   7602 
   7603           </tr> <!-- end of entry -->
   7604         
   7605                 
   7606           <tr class="entry" id="static_android.scaler.availableProcessedSizes">
   7607             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Sizes</td>
   7608             <td class="entry_type">
   7609                 <span class="entry_type_name">int32</span>
   7610                 <span class="entry_type_container">x</span>
   7611 
   7612                 <span class="entry_type_array">
   7613                   n x 2
   7614                 </span>
   7615               <span class="entry_type_visibility"> [public as size]</span>
   7616 
   7617 
   7618             </td> <!-- entry_type -->
   7619 
   7620             <td class="entry_description">
   7621               The resolutions available for use with
   7622           processed output streams,<wbr> such as YV12,<wbr> NV12,<wbr> and
   7623           platform opaque YUV/<wbr>RGB streams to the GPU or video
   7624           encoders.<wbr> Listed as width,<wbr> height
   7625             </td>
   7626 
   7627             <td class="entry_units">
   7628             </td>
   7629 
   7630             <td class="entry_range">
   7631               Must include: - sensor maximum resolution -
   7632           standard QCIF,<wbr> 240p,<wbr> 480p,<wbr> 720p,<wbr> and 1080p
   7633           resolutions
   7634             </td>
   7635 
   7636             <td class="entry_notes">
   7637               The actual supported resolution list may be limited by
   7638           consumer end points for different use cases.<wbr> For example,<wbr> for
   7639           recording use case,<wbr> the largest supported resolution may be
   7640           limited by max supported size from encoder,<wbr> for preview use
   7641           case,<wbr> the largest supported resolution may be limited by max
   7642           resolution SurfaceTexture/<wbr>SurfaceView can support.<wbr>
   7643           
   7644             </td>
   7645 
   7646             <td class="entry_tags">
   7647               <ul class="entry_tags">
   7648                   <li><a href="#tag_BC">BC</a></li>
   7649               </ul>
   7650             </td>
   7651 
   7652           </tr> <!-- end of entry -->
   7653         
   7654                 
   7655           <tr class="entry" id="static_android.scaler.availableRawMinDurations">
   7656             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations</td>
   7657             <td class="entry_type">
   7658                 <span class="entry_type_name">int64</span>
   7659                 <span class="entry_type_container">x</span>
   7660 
   7661                 <span class="entry_type_array">
   7662                   n
   7663                 </span>
   7664               <span class="entry_type_visibility"> [system]</span>
   7665 
   7666 
   7667             </td> <!-- entry_type -->
   7668 
   7669             <td class="entry_description">
   7670               The minimum frame duration that is supported
   7671           for each raw resolution in availableRawSizes.<wbr> Should
   7672           correspond to the frame duration when only the raw stream
   7673           is active.<wbr>
   7674             </td>
   7675 
   7676             <td class="entry_units">
   7677             </td>
   7678 
   7679             <td class="entry_range">
   7680             </td>
   7681 
   7682             <td class="entry_notes">
   7683               When multiple streams are configured,<wbr> the minimum
   7684           frame duration will be >= max(individual stream min
   7685           durations)
   7686             </td>
   7687 
   7688             <td class="entry_tags">
   7689               <ul class="entry_tags">
   7690                   <li><a href="#tag_BC">BC</a></li>
   7691               </ul>
   7692             </td>
   7693 
   7694           </tr> <!-- end of entry -->
   7695         
   7696                 
   7697           <tr class="entry" id="static_android.scaler.availableRawSizes">
   7698             <td class="entry_name">android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Sizes</td>
   7699             <td class="entry_type">
   7700                 <span class="entry_type_name">int32</span>
   7701                 <span class="entry_type_container">x</span>
   7702 
   7703                 <span class="entry_type_array">
   7704                   n x 2
   7705                 </span>
   7706               <span class="entry_type_visibility"> [system as size]</span>
   7707 
   7708 
   7709             </td> <!-- entry_type -->
   7710 
   7711             <td class="entry_description">
   7712               The resolutions available for use with raw
   7713           sensor output streams,<wbr> listed as width,<wbr>
   7714           height
   7715             </td>
   7716 
   7717             <td class="entry_units">
   7718             </td>
   7719 
   7720             <td class="entry_range">
   7721               Must include: - sensor maximum resolution
   7722             </td>
   7723 
   7724             <td class="entry_notes">
   7725             </td>
   7726 
   7727             <td class="entry_tags">
   7728             </td>
   7729 
   7730           </tr> <!-- end of entry -->
   7731         
   7732         
   7733 
   7734       <!-- end of kind -->
   7735       </tbody>
   7736       <tr><td colspan="7" class="kind">dynamic</td></tr>
   7737 
   7738       <thead class="entries_header">
   7739         <tr>
   7740           <th class="th_name">Property Name</th>
   7741           <th class="th_type">Type</th>
   7742           <th class="th_description">Description</th>
   7743           <th class="th_units">Units</th>
   7744           <th class="th_range">Range</th>
   7745           <th class="th_notes">Notes</th>
   7746           <th class="th_tags">Tags</th>
   7747         </tr>
   7748       </thead>
   7749 
   7750       <tbody>
   7751 
   7752         
   7753 
   7754         
   7755 
   7756         
   7757 
   7758         
   7759 
   7760                 
   7761           <tr class="entry" id="dynamic_android.scaler.cropRegion">
   7762             <td class="entry_name">android.<wbr>scaler.<wbr>crop<wbr>Region</td>
   7763             <td class="entry_type">
   7764                 <span class="entry_type_name">int32</span>
   7765                 <span class="entry_type_container">x</span>
   7766 
   7767                 <span class="entry_type_array">
   7768                   4
   7769                 </span>
   7770               <span class="entry_type_visibility"> [public as rectangle]</span>
   7771 
   7772 
   7773             </td> <!-- entry_type -->
   7774 
   7775             <td class="entry_description">
   7776               (x,<wbr> y,<wbr> width,<wbr> height).<wbr>
   7777 <br>
   7778 <br>          A rectangle with the top-level corner of (x,<wbr>y) and size
   7779           (width,<wbr> height).<wbr> The region of the sensor that is used for
   7780           output.<wbr> Each stream must use this rectangle to produce its
   7781           output,<wbr> cropping to a smaller region if necessary to
   7782           maintain the stream's aspect ratio.<wbr>
   7783 <br>
   7784 <br>          HAL2.<wbr>x uses only (x,<wbr> y,<wbr> width)
   7785             </td>
   7786 
   7787             <td class="entry_units">
   7788               (x,<wbr>y) of top-left corner,<wbr> width and height of region
   7789           in pixels; (0,<wbr>0) is top-left corner of
   7790           android.<wbr>sensor.<wbr>active<wbr>Array<wbr>Size
   7791             </td>
   7792 
   7793             <td class="entry_range">
   7794             </td>
   7795 
   7796             <td class="entry_notes">
   7797               
   7798             Any additional per-stream cropping must be done to
   7799             maximize the final pixel area of the stream.<wbr>
   7800 <br>
   7801 <br>            For example,<wbr> if the crop region is set to a 4:3 aspect
   7802             ratio,<wbr> then 4:3 streams should use the exact crop
   7803             region.<wbr> 16:9 streams should further crop vertically
   7804             (letterbox).<wbr>
   7805 <br>
   7806 <br>            Conversely,<wbr> if the crop region is set to a 16:9,<wbr> then 4:3
   7807             outputs should crop horizontally (pillarbox),<wbr> and 16:9
   7808             streams should match exactly.<wbr> These additional crops must
   7809             be centered within the crop region.<wbr>
   7810 <br>
   7811 <br>            The output streams must maintain square pixels at all
   7812             times,<wbr> no matter what the relative aspect ratios of the
   7813             crop region and the stream are.<wbr>  Negative values for
   7814             corner are allowed for raw output if full pixel array is
   7815             larger than active pixel array.<wbr> Width and height may be
   7816             rounded to nearest larger supportable width,<wbr> especially
   7817             for raw output,<wbr> where only a few fixed scales may be
   7818             possible.<wbr> The width and height of the crop region cannot
   7819             be set to be smaller than floor( activeArraySize.<wbr>width /<wbr>
   7820             android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom ) and floor(
   7821             activeArraySize.<wbr>height /<wbr> android.<wbr>scaler.<wbr>max<wbr>Digital<wbr>Zoom),<wbr>
   7822             respectively.<wbr>
   7823           
   7824             </td>
   7825 
   7826             <td class="entry_tags">
   7827               <ul class="entry_tags">
   7828                   <li><a href="#tag_BC">BC</a></li>
   7829               </ul>
   7830             </td>
   7831 
   7832           </tr> <!-- end of entry -->
   7833         
   7834         
   7835 
   7836       <!-- end of kind -->
   7837       </tbody>
   7838 
   7839   <!-- end of section -->
   7840   <tr><td colspan="7" id="section_sensor" class="section">sensor</td></tr>
   7841 
   7842 
   7843       <tr><td colspan="7" class="kind">controls</td></tr>
   7844 
   7845       <thead class="entries_header">
   7846         <tr>
   7847           <th class="th_name">Property Name</th>
   7848           <th class="th_type">Type</th>
   7849           <th class="th_description">Description</th>
   7850           <th class="th_units">Units</th>
   7851           <th class="th_range">Range</th>
   7852           <th class="th_notes">Notes</th>
   7853           <th class="th_tags">Tags</th>
   7854         </tr>
   7855       </thead>
   7856 
   7857       <tbody>
   7858 
   7859         
   7860 
   7861         
   7862 
   7863         
   7864 
   7865         
   7866 
   7867                 
   7868           <tr class="entry" id="controls_android.sensor.exposureTime">
   7869             <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
   7870             <td class="entry_type">
   7871                 <span class="entry_type_name">int64</span>
   7872 
   7873               <span class="entry_type_visibility"> [public]</span>
   7874 
   7875 
   7876             </td> <!-- entry_type -->
   7877 
   7878             <td class="entry_description">
   7879               Duration each pixel is exposed to
   7880           light.<wbr>
   7881 <br>
   7882 <br>          If the sensor can't expose this exact duration,<wbr> it should shorten the
   7883           duration exposed to the nearest possible value (rather than expose longer).<wbr>
   7884           
   7885             </td>
   7886 
   7887             <td class="entry_units">
   7888               nanoseconds
   7889             </td>
   7890 
   7891             <td class="entry_range">
   7892               android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
   7893             </td>
   7894 
   7895             <td class="entry_notes">
   7896               1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
   7897             </td>
   7898 
   7899             <td class="entry_tags">
   7900               <ul class="entry_tags">
   7901                   <li><a href="#tag_V1">V1</a></li>
   7902               </ul>
   7903             </td>
   7904 
   7905           </tr> <!-- end of entry -->
   7906         
   7907                 
   7908           <tr class="entry" id="controls_android.sensor.frameDuration">
   7909             <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
   7910             <td class="entry_type">
   7911                 <span class="entry_type_name">int64</span>
   7912 
   7913               <span class="entry_type_visibility"> [public]</span>
   7914 
   7915 
   7916             </td> <!-- entry_type -->
   7917 
   7918             <td class="entry_description">
   7919               Duration from start of frame exposure to
   7920           start of next frame exposure
   7921             </td>
   7922 
   7923             <td class="entry_units">
   7924               nanoseconds
   7925             </td>
   7926 
   7927             <td class="entry_range">
   7928               see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
   7929           android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
   7930             </td>
   7931 
   7932             <td class="entry_notes">
   7933               Exposure time has priority,<wbr> so duration is set to
   7934           max(duration,<wbr> exposure time + overhead)
   7935             </td>
   7936 
   7937             <td class="entry_tags">
   7938               <ul class="entry_tags">
   7939                   <li><a href="#tag_V1">V1</a></li>
   7940                   <li><a href="#tag_BC">BC</a></li>
   7941               </ul>
   7942             </td>
   7943 
   7944           </tr> <!-- end of entry -->
   7945         
   7946                 
   7947           <tr class="entry" id="controls_android.sensor.sensitivity">
   7948             <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
   7949             <td class="entry_type">
   7950                 <span class="entry_type_name">int32</span>
   7951 
   7952               <span class="entry_type_visibility"> [public]</span>
   7953 
   7954 
   7955             </td> <!-- entry_type -->
   7956 
   7957             <td class="entry_description">
   7958               Gain applied to image data.<wbr> Must be
   7959           implemented through analog gain only if set to values
   7960           below 'maximum analog sensitivity'.<wbr>
   7961 <br>
   7962 <br>          If the sensor can't apply this exact gain,<wbr> it should lessen the
   7963           gain to the nearest possible value (rather than gain more).<wbr>
   7964           
   7965             </td>
   7966 
   7967             <td class="entry_units">
   7968               ISO arithmetic units
   7969             </td>
   7970 
   7971             <td class="entry_range">
   7972               android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
   7973             </td>
   7974 
   7975             <td class="entry_notes">
   7976               ISO 12232:2006 REI method
   7977             </td>
   7978 
   7979             <td class="entry_tags">
   7980               <ul class="entry_tags">
   7981                   <li><a href="#tag_V1">V1</a></li>
   7982               </ul>
   7983             </td>
   7984 
   7985           </tr> <!-- end of entry -->
   7986         
   7987         
   7988 
   7989       <!-- end of kind -->
   7990       </tbody>
   7991       <tr><td colspan="7" class="kind">static</td></tr>
   7992 
   7993       <thead class="entries_header">
   7994         <tr>
   7995           <th class="th_name">Property Name</th>
   7996           <th class="th_type">Type</th>
   7997           <th class="th_description">Description</th>
   7998           <th class="th_units">Units</th>
   7999           <th class="th_range">Range</th>
   8000           <th class="th_notes">Notes</th>
   8001           <th class="th_tags">Tags</th>
   8002         </tr>
   8003       </thead>
   8004 
   8005       <tbody>
   8006 
   8007         
   8008 
   8009         
   8010 
   8011         
   8012 
   8013         
   8014                 
   8015             
   8016 
   8017                 
   8018           <tr class="entry" id="static_android.sensor.info.activeArraySize">
   8019             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>active<wbr>Array<wbr>Size</td>
   8020             <td class="entry_type">
   8021                 <span class="entry_type_name">int32</span>
   8022                 <span class="entry_type_container">x</span>
   8023 
   8024                 <span class="entry_type_array">
   8025                   4
   8026                 </span>
   8027               <span class="entry_type_visibility"> [public as rectangle]</span>
   8028                 <div class="entry_type_notes">Four ints defining the active pixel rectangle</div>
   8029 
   8030 
   8031             </td> <!-- entry_type -->
   8032 
   8033             <td class="entry_description">
   8034               Area of raw data which corresponds to only
   8035             active pixels; smaller or equal to
   8036             pixelArraySize.<wbr>
   8037             </td>
   8038 
   8039             <td class="entry_units">
   8040               xmin,<wbr> ymin,<wbr> width,<wbr> height.<wbr> Top left of full
   8041             pixel array is (0,<wbr>0)
   8042             </td>
   8043 
   8044             <td class="entry_range">
   8045             </td>
   8046 
   8047             <td class="entry_notes">
   8048             </td>
   8049 
   8050             <td class="entry_tags">
   8051               <ul class="entry_tags">
   8052                   <li><a href="#tag_DNG">DNG</a></li>
   8053               </ul>
   8054             </td>
   8055 
   8056           </tr> <!-- end of entry -->
   8057         
   8058                 
   8059           <tr class="entry" id="static_android.sensor.info.sensitivityRange">
   8060             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range</td>
   8061             <td class="entry_type">
   8062                 <span class="entry_type_name">int32</span>
   8063                 <span class="entry_type_container">x</span>
   8064 
   8065                 <span class="entry_type_array">
   8066                   2
   8067                 </span>
   8068               <span class="entry_type_visibility"> [public]</span>
   8069                 <div class="entry_type_notes">Range of supported sensitivities</div>
   8070 
   8071 
   8072             </td> <!-- entry_type -->
   8073 
   8074             <td class="entry_description">
   8075               Range of valid sensitivities
   8076             </td>
   8077 
   8078             <td class="entry_units">
   8079             </td>
   8080 
   8081             <td class="entry_range">
   8082               Min <= 100,<wbr> Max >= 1600
   8083             </td>
   8084 
   8085             <td class="entry_notes">
   8086             </td>
   8087 
   8088             <td class="entry_tags">
   8089               <ul class="entry_tags">
   8090                   <li><a href="#tag_BC">BC</a></li>
   8091                   <li><a href="#tag_V1">V1</a></li>
   8092               </ul>
   8093             </td>
   8094 
   8095           </tr> <!-- end of entry -->
   8096         
   8097                 
   8098           <tr class="entry" id="static_android.sensor.info.colorFilterArrangement">
   8099             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>color<wbr>Filter<wbr>Arrangement</td>
   8100             <td class="entry_type">
   8101                 <span class="entry_type_name entry_type_name_enum">byte</span>
   8102 
   8103               <span class="entry_type_visibility"> [system]</span>
   8104 
   8105                 <ul class="entry_type_enum">
   8106                   <li>
   8107                     <span class="entry_type_enum_name">RGGB</span>
   8108                   </li>
   8109                   <li>
   8110                     <span class="entry_type_enum_name">GRBG</span>
   8111                   </li>
   8112                   <li>
   8113                     <span class="entry_type_enum_name">GBRG</span>
   8114                   </li>
   8115                   <li>
   8116                     <span class="entry_type_enum_name">BGGR</span>
   8117                   </li>
   8118                   <li>
   8119                     <span class="entry_type_enum_name">RGB</span>
   8120                     <span class="entry_type_enum_notes">Sensor is not Bayer; output has 3 16-bit
   8121               values for each pixel,<wbr> instead of just 1 16-bit value
   8122               per pixel.<wbr></span>
   8123                   </li>
   8124                 </ul>
   8125 
   8126             </td> <!-- entry_type -->
   8127 
   8128             <td class="entry_description">
   8129               Arrangement of color filters on sensor;
   8130             represents the colors in the top-left 2x2 section of
   8131             the sensor,<wbr> in reading order
   8132             </td>
   8133 
   8134             <td class="entry_units">
   8135             </td>
   8136 
   8137             <td class="entry_range">
   8138             </td>
   8139 
   8140             <td class="entry_notes">
   8141             </td>
   8142 
   8143             <td class="entry_tags">
   8144               <ul class="entry_tags">
   8145                   <li><a href="#tag_DNG">DNG</a></li>
   8146               </ul>
   8147             </td>
   8148 
   8149           </tr> <!-- end of entry -->
   8150         
   8151                 
   8152           <tr class="entry" id="static_android.sensor.info.exposureTimeRange">
   8153             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range</td>
   8154             <td class="entry_type">
   8155                 <span class="entry_type_name">int64</span>
   8156                 <span class="entry_type_container">x</span>
   8157 
   8158                 <span class="entry_type_array">
   8159                   2
   8160                 </span>
   8161               <span class="entry_type_visibility"> [public]</span>
   8162                 <div class="entry_type_notes">nanoseconds</div>
   8163 
   8164 
   8165             </td> <!-- entry_type -->
   8166 
   8167             <td class="entry_description">
   8168               Range of valid exposure
   8169             times
   8170             </td>
   8171 
   8172             <td class="entry_units">
   8173             </td>
   8174 
   8175             <td class="entry_range">
   8176               Min <= 100e3 (100 us),<wbr> Max >= 30e9 (30
   8177             sec)
   8178             </td>
   8179 
   8180             <td class="entry_notes">
   8181             </td>
   8182 
   8183             <td class="entry_tags">
   8184               <ul class="entry_tags">
   8185                   <li><a href="#tag_V1">V1</a></li>
   8186               </ul>
   8187             </td>
   8188 
   8189           </tr> <!-- end of entry -->
   8190         
   8191                 
   8192           <tr class="entry" id="static_android.sensor.info.maxFrameDuration">
   8193             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration</td>
   8194             <td class="entry_type">
   8195                 <span class="entry_type_name">int64</span>
   8196 
   8197               <span class="entry_type_visibility"> [public]</span>
   8198 
   8199 
   8200             </td> <!-- entry_type -->
   8201 
   8202             <td class="entry_description">
   8203               Maximum possible frame duration (minimum frame
   8204             rate)
   8205             </td>
   8206 
   8207             <td class="entry_units">
   8208               nanoseconds
   8209             </td>
   8210 
   8211             <td class="entry_range">
   8212               >= 30e9
   8213             </td>
   8214 
   8215             <td class="entry_notes">
   8216               Minimum duration is a function of resolution,<wbr>
   8217             processing settings.<wbr> See
   8218             android.<wbr>scaler.<wbr>available<wbr>Processed<wbr>Min<wbr>Durations
   8219             android.<wbr>scaler.<wbr>available<wbr>Jpeg<wbr>Min<wbr>Durations
   8220             android.<wbr>scaler.<wbr>available<wbr>Raw<wbr>Min<wbr>Durations
   8221             </td>
   8222 
   8223             <td class="entry_tags">
   8224               <ul class="entry_tags">
   8225                   <li><a href="#tag_BC">BC</a></li>
   8226                   <li><a href="#tag_V1">V1</a></li>
   8227               </ul>
   8228             </td>
   8229 
   8230           </tr> <!-- end of entry -->
   8231         
   8232                 
   8233           <tr class="entry" id="static_android.sensor.info.physicalSize">
   8234             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>physical<wbr>Size</td>
   8235             <td class="entry_type">
   8236                 <span class="entry_type_name">float</span>
   8237                 <span class="entry_type_container">x</span>
   8238 
   8239                 <span class="entry_type_array">
   8240                   2
   8241                 </span>
   8242               <span class="entry_type_visibility"> [public]</span>
   8243                 <div class="entry_type_notes">width x height in millimeters</div>
   8244 
   8245 
   8246             </td> <!-- entry_type -->
   8247 
   8248             <td class="entry_description">
   8249               The physical dimensions of the full pixel
   8250             array
   8251             </td>
   8252 
   8253             <td class="entry_units">
   8254             </td>
   8255 
   8256             <td class="entry_range">
   8257             </td>
   8258 
   8259             <td class="entry_notes">
   8260               Needed for FOV calculation for old API
   8261             </td>
   8262 
   8263             <td class="entry_tags">
   8264               <ul class="entry_tags">
   8265                   <li><a href="#tag_V1">V1</a></li>
   8266                   <li><a href="#tag_BC">BC</a></li>
   8267               </ul>
   8268             </td>
   8269 
   8270           </tr> <!-- end of entry -->
   8271         
   8272                 
   8273           <tr class="entry" id="static_android.sensor.info.pixelArraySize">
   8274             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>pixel<wbr>Array<wbr>Size</td>
   8275             <td class="entry_type">
   8276                 <span class="entry_type_name">int32</span>
   8277                 <span class="entry_type_container">x</span>
   8278 
   8279                 <span class="entry_type_array">
   8280                   2
   8281                 </span>
   8282               <span class="entry_type_visibility"> [system as size]</span>
   8283 
   8284 
   8285             </td> <!-- entry_type -->
   8286 
   8287             <td class="entry_description">
   8288               Dimensions of full pixel array,<wbr> possibly
   8289             including black calibration pixels
   8290             </td>
   8291 
   8292             <td class="entry_units">
   8293             </td>
   8294 
   8295             <td class="entry_range">
   8296             </td>
   8297 
   8298             <td class="entry_notes">
   8299               Maximum output resolution for raw format must
   8300             match this in
   8301             android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Sizes<wbr>Per<wbr>Format
   8302             </td>
   8303 
   8304             <td class="entry_tags">
   8305               <ul class="entry_tags">
   8306                   <li><a href="#tag_DNG">DNG</a></li>
   8307                   <li><a href="#tag_BC">BC</a></li>
   8308               </ul>
   8309             </td>
   8310 
   8311           </tr> <!-- end of entry -->
   8312         
   8313                 
   8314           <tr class="entry" id="static_android.sensor.info.whiteLevel">
   8315             <td class="entry_name">android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level</td>
   8316             <td class="entry_type">
   8317                 <span class="entry_type_name">int32</span>
   8318 
   8319               <span class="entry_type_visibility"> [system]</span>
   8320 
   8321 
   8322             </td> <!-- entry_type -->
   8323 
   8324             <td class="entry_description">
   8325               Maximum raw value output by
   8326             sensor
   8327             </td>
   8328 
   8329             <td class="entry_units">
   8330             </td>
   8331 
   8332             <td class="entry_range">
   8333               > 1024 (10-bit output)
   8334             </td>
   8335 
   8336             <td class="entry_notes">
   8337               Defines sensor bit depth (10-14 bits is
   8338             expected)
   8339             </td>
   8340 
   8341             <td class="entry_tags">
   8342               <ul class="entry_tags">
   8343                   <li><a href="#tag_DNG">DNG</a></li>
   8344               </ul>
   8345             </td>
   8346 
   8347           </tr> <!-- end of entry -->
   8348         
   8349         
   8350         
   8351 
   8352                 
   8353           <tr class="entry" id="static_android.sensor.baseGainFactor">
   8354             <td class="entry_name">android.<wbr>sensor.<wbr>base<wbr>Gain<wbr>Factor</td>
   8355             <td class="entry_type">
   8356                 <span class="entry_type_name">rational</span>
   8357 
   8358               <span class="entry_type_visibility"> [public]</span>
   8359 
   8360 
   8361             </td> <!-- entry_type -->
   8362 
   8363             <td class="entry_description">
   8364               Gain factor from electrons to raw units when
   8365           ISO=100
   8366             </td>
   8367 
   8368             <td class="entry_units">
   8369             </td>
   8370 
   8371             <td class="entry_range">
   8372             </td>
   8373 
   8374             <td class="entry_notes">
   8375             </td>
   8376 
   8377             <td class="entry_tags">
   8378               <ul class="entry_tags">
   8379                   <li><a href="#tag_V1">V1</a></li>
   8380                   <li><a href="#tag_FULL">FULL</a></li>
   8381               </ul>
   8382             </td>
   8383 
   8384           </tr> <!-- end of entry -->
   8385         
   8386                 
   8387           <tr class="entry" id="static_android.sensor.blackLevelPattern">
   8388             <td class="entry_name">android.<wbr>sensor.<wbr>black<wbr>Level<wbr>Pattern</td>
   8389             <td class="entry_type">
   8390                 <span class="entry_type_name">int32</span>
   8391                 <span class="entry_type_container">x</span>
   8392 
   8393                 <span class="entry_type_array">
   8394                   4
   8395                 </span>
   8396               <span class="entry_type_visibility"> [system]</span>
   8397                 <div class="entry_type_notes">2x2 raw count block</div>
   8398 
   8399 
   8400             </td> <!-- entry_type -->
   8401 
   8402             <td class="entry_description">
   8403               A fixed black level offset for each of the
   8404           Bayer mosaic channels
   8405             </td>
   8406 
   8407             <td class="entry_units">
   8408             </td>
   8409 
   8410             <td class="entry_range">
   8411               >= 0 each
   8412             </td>
   8413 
   8414             <td class="entry_notes">
   8415               As per DNG BlackLevelRepeatDim /<wbr> BlackLevel
   8416           tags
   8417             </td>
   8418 
   8419             <td class="entry_tags">
   8420               <ul class="entry_tags">
   8421                   <li><a href="#tag_DNG">DNG</a></li>
   8422               </ul>
   8423             </td>
   8424 
   8425           </tr> <!-- end of entry -->
   8426         
   8427                 
   8428           <tr class="entry" id="static_android.sensor.calibrationTransform1">
   8429             <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform1</td>
   8430             <td class="entry_type">
   8431                 <span class="entry_type_name">rational</span>
   8432                 <span class="entry_type_container">x</span>
   8433 
   8434                 <span class="entry_type_array">
   8435                   9
   8436                 </span>
   8437               <span class="entry_type_visibility"> [system]</span>
   8438                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8439 
   8440 
   8441             </td> <!-- entry_type -->
   8442 
   8443             <td class="entry_description">
   8444               Per-device calibration on top of color space
   8445           transform 1
   8446             </td>
   8447 
   8448             <td class="entry_units">
   8449             </td>
   8450 
   8451             <td class="entry_range">
   8452             </td>
   8453 
   8454             <td class="entry_notes">
   8455             </td>
   8456 
   8457             <td class="entry_tags">
   8458               <ul class="entry_tags">
   8459                   <li><a href="#tag_DNG">DNG</a></li>
   8460               </ul>
   8461             </td>
   8462 
   8463           </tr> <!-- end of entry -->
   8464         
   8465                 
   8466           <tr class="entry" id="static_android.sensor.calibrationTransform2">
   8467             <td class="entry_name">android.<wbr>sensor.<wbr>calibration<wbr>Transform2</td>
   8468             <td class="entry_type">
   8469                 <span class="entry_type_name">rational</span>
   8470                 <span class="entry_type_container">x</span>
   8471 
   8472                 <span class="entry_type_array">
   8473                   9
   8474                 </span>
   8475               <span class="entry_type_visibility"> [system]</span>
   8476                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8477 
   8478 
   8479             </td> <!-- entry_type -->
   8480 
   8481             <td class="entry_description">
   8482               Per-device calibration on top of color space
   8483           transform 2
   8484             </td>
   8485 
   8486             <td class="entry_units">
   8487             </td>
   8488 
   8489             <td class="entry_range">
   8490             </td>
   8491 
   8492             <td class="entry_notes">
   8493             </td>
   8494 
   8495             <td class="entry_tags">
   8496               <ul class="entry_tags">
   8497                   <li><a href="#tag_DNG">DNG</a></li>
   8498               </ul>
   8499             </td>
   8500 
   8501           </tr> <!-- end of entry -->
   8502         
   8503                 
   8504           <tr class="entry" id="static_android.sensor.colorTransform1">
   8505             <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform1</td>
   8506             <td class="entry_type">
   8507                 <span class="entry_type_name">rational</span>
   8508                 <span class="entry_type_container">x</span>
   8509 
   8510                 <span class="entry_type_array">
   8511                   9
   8512                 </span>
   8513               <span class="entry_type_visibility"> [system]</span>
   8514                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8515 
   8516 
   8517             </td> <!-- entry_type -->
   8518 
   8519             <td class="entry_description">
   8520               Linear mapping from XYZ (D50) color space to
   8521           reference linear sensor color,<wbr> for first reference
   8522           illuminant
   8523             </td>
   8524 
   8525             <td class="entry_units">
   8526             </td>
   8527 
   8528             <td class="entry_range">
   8529             </td>
   8530 
   8531             <td class="entry_notes">
   8532               Use as follows XYZ = inv(transform) * clip( (raw -
   8533           black level(raw) ) /<wbr> ( white level - max black level) ).<wbr>
   8534           At least in the simple case
   8535             </td>
   8536 
   8537             <td class="entry_tags">
   8538               <ul class="entry_tags">
   8539                   <li><a href="#tag_DNG">DNG</a></li>
   8540               </ul>
   8541             </td>
   8542 
   8543           </tr> <!-- end of entry -->
   8544         
   8545                 
   8546           <tr class="entry" id="static_android.sensor.colorTransform2">
   8547             <td class="entry_name">android.<wbr>sensor.<wbr>color<wbr>Transform2</td>
   8548             <td class="entry_type">
   8549                 <span class="entry_type_name">rational</span>
   8550                 <span class="entry_type_container">x</span>
   8551 
   8552                 <span class="entry_type_array">
   8553                   9
   8554                 </span>
   8555               <span class="entry_type_visibility"> [system]</span>
   8556                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8557 
   8558 
   8559             </td> <!-- entry_type -->
   8560 
   8561             <td class="entry_description">
   8562               Linear mapping from XYZ (D50) color space to
   8563           reference linear sensor color,<wbr> for second reference
   8564           illuminant
   8565             </td>
   8566 
   8567             <td class="entry_units">
   8568             </td>
   8569 
   8570             <td class="entry_range">
   8571             </td>
   8572 
   8573             <td class="entry_notes">
   8574             </td>
   8575 
   8576             <td class="entry_tags">
   8577               <ul class="entry_tags">
   8578                   <li><a href="#tag_DNG">DNG</a></li>
   8579               </ul>
   8580             </td>
   8581 
   8582           </tr> <!-- end of entry -->
   8583         
   8584                 
   8585           <tr class="entry" id="static_android.sensor.forwardMatrix1">
   8586             <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix1</td>
   8587             <td class="entry_type">
   8588                 <span class="entry_type_name">rational</span>
   8589                 <span class="entry_type_container">x</span>
   8590 
   8591                 <span class="entry_type_array">
   8592                   9
   8593                 </span>
   8594               <span class="entry_type_visibility"> [system]</span>
   8595                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8596 
   8597 
   8598             </td> <!-- entry_type -->
   8599 
   8600             <td class="entry_description">
   8601               Used by DNG for better WB
   8602           adaptation
   8603             </td>
   8604 
   8605             <td class="entry_units">
   8606             </td>
   8607 
   8608             <td class="entry_range">
   8609             </td>
   8610 
   8611             <td class="entry_notes">
   8612             </td>
   8613 
   8614             <td class="entry_tags">
   8615               <ul class="entry_tags">
   8616                   <li><a href="#tag_DNG">DNG</a></li>
   8617               </ul>
   8618             </td>
   8619 
   8620           </tr> <!-- end of entry -->
   8621         
   8622                 
   8623           <tr class="entry" id="static_android.sensor.forwardMatrix2">
   8624             <td class="entry_name">android.<wbr>sensor.<wbr>forward<wbr>Matrix2</td>
   8625             <td class="entry_type">
   8626                 <span class="entry_type_name">rational</span>
   8627                 <span class="entry_type_container">x</span>
   8628 
   8629                 <span class="entry_type_array">
   8630                   9
   8631                 </span>
   8632               <span class="entry_type_visibility"> [system]</span>
   8633                 <div class="entry_type_notes">3x3 matrix in row-major-order</div>
   8634 
   8635 
   8636             </td> <!-- entry_type -->
   8637 
   8638             <td class="entry_description">
   8639               Used by DNG for better WB
   8640           adaptation
   8641             </td>
   8642 
   8643             <td class="entry_units">
   8644             </td>
   8645 
   8646             <td class="entry_range">
   8647             </td>
   8648 
   8649             <td class="entry_notes">
   8650             </td>
   8651 
   8652             <td class="entry_tags">
   8653               <ul class="entry_tags">
   8654                   <li><a href="#tag_DNG">DNG</a></li>
   8655               </ul>
   8656             </td>
   8657 
   8658           </tr> <!-- end of entry -->
   8659         
   8660                 
   8661           <tr class="entry" id="static_android.sensor.maxAnalogSensitivity">
   8662             <td class="entry_name">android.<wbr>sensor.<wbr>max<wbr>Analog<wbr>Sensitivity</td>
   8663             <td class="entry_type">
   8664                 <span class="entry_type_name">int32</span>
   8665 
   8666               <span class="entry_type_visibility"> [public]</span>
   8667 
   8668 
   8669             </td> <!-- entry_type -->
   8670 
   8671             <td class="entry_description">
   8672               Maximum sensitivity that is implemented
   8673           purely through analog gain
   8674             </td>
   8675 
   8676             <td class="entry_units">
   8677             </td>
   8678 
   8679             <td class="entry_range">
   8680             </td>
   8681 
   8682             <td class="entry_notes">
   8683               For android.<wbr>sensor.<wbr>sensitivity values less than or
   8684           equal to this,<wbr> all applied gain must be analog.<wbr> For
   8685           values above this,<wbr> it can be a mix of analog and
   8686           digital
   8687             </td>
   8688 
   8689             <td class="entry_tags">
   8690               <ul class="entry_tags">
   8691                   <li><a href="#tag_V1">V1</a></li>
   8692                   <li><a href="#tag_FULL">FULL</a></li>
   8693               </ul>
   8694             </td>
   8695 
   8696           </tr> <!-- end of entry -->
   8697         
   8698                 
   8699           <tr class="entry" id="static_android.sensor.noiseModelCoefficients">
   8700             <td class="entry_name">android.<wbr>sensor.<wbr>noise<wbr>Model<wbr>Coefficients</td>
   8701             <td class="entry_type">
   8702                 <span class="entry_type_name">float</span>
   8703                 <span class="entry_type_container">x</span>
   8704 
   8705                 <span class="entry_type_array">
   8706                   2
   8707                 </span>
   8708               <span class="entry_type_visibility"> [system]</span>
   8709                 <div class="entry_type_notes">float constants A,<wbr> B for the noise variance model</div>
   8710 
   8711 
   8712             </td> <!-- entry_type -->
   8713 
   8714             <td class="entry_description">
   8715               Estimation of sensor noise
   8716           characteristics
   8717             </td>
   8718 
   8719             <td class="entry_units">
   8720               var(raw pixel value) = electrons * (baseGainFactor
   8721           * iso/<wbr>100)^2 + A * (baseGainFactor * iso/<wbr>100)^2 +
   8722           B
   8723             </td>
   8724 
   8725             <td class="entry_range">
   8726             </td>
   8727 
   8728             <td class="entry_notes">
   8729               A represents sensor read noise before analog
   8730           amplification; B represents noise from A/<wbr>D conversion and
   8731           other circuits after amplification.<wbr> Both noise sources
   8732           are assumed to be gaussian,<wbr> independent,<wbr> and not to vary
   8733           across the sensor
   8734             </td>
   8735 
   8736             <td class="entry_tags">
   8737               <ul class="entry_tags">
   8738                   <li><a href="#tag_V1">V1</a></li>
   8739               </ul>
   8740             </td>
   8741 
   8742           </tr> <!-- end of entry -->
   8743         
   8744                 
   8745           <tr class="entry" id="static_android.sensor.orientation">
   8746             <td class="entry_name">android.<wbr>sensor.<wbr>orientation</td>
   8747             <td class="entry_type">
   8748                 <span class="entry_type_name">int32</span>
   8749 
   8750               <span class="entry_type_visibility"> [public]</span>
   8751 
   8752 
   8753             </td> <!-- entry_type -->
   8754 
   8755             <td class="entry_description">
   8756               Clockwise angle through which the output
   8757           image needs to be rotated to be upright on the device
   8758           screen in its native orientation.<wbr> Also defines the
   8759           direction of rolling shutter readout,<wbr> which is from top
   8760           to bottom in the sensor's coordinate system
   8761             </td>
   8762 
   8763             <td class="entry_units">
   8764               degrees clockwise rotation,<wbr> only multiples of
   8765           90
   8766             </td>
   8767 
   8768             <td class="entry_range">
   8769               0,<wbr>90,<wbr>180,<wbr>270
   8770             </td>
   8771 
   8772             <td class="entry_notes">
   8773             </td>
   8774 
   8775             <td class="entry_tags">
   8776               <ul class="entry_tags">
   8777                   <li><a href="#tag_BC">BC</a></li>
   8778               </ul>
   8779             </td>
   8780 
   8781           </tr> <!-- end of entry -->
   8782         
   8783                 
   8784           <tr class="entry" id="static_android.sensor.referenceIlluminant1">
   8785             <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant1</td>
   8786             <td class="entry_type">
   8787                 <span class="entry_type_name entry_type_name_enum">byte</span>
   8788 
   8789               <span class="entry_type_visibility"> [system]</span>
   8790 
   8791                 <ul class="entry_type_enum">
   8792                   <li>
   8793                     <span class="entry_type_enum_name">DAYLIGHT</span>
   8794                     <span class="entry_type_enum_value">1</span>
   8795                   </li>
   8796                   <li>
   8797                     <span class="entry_type_enum_name">FLUORESCENT</span>
   8798                     <span class="entry_type_enum_value">2</span>
   8799                   </li>
   8800                   <li>
   8801                     <span class="entry_type_enum_name">TUNGSTEN</span>
   8802                     <span class="entry_type_enum_value">3</span>
   8803                     <span class="entry_type_enum_notes">Incandescent light</span>
   8804                   </li>
   8805                   <li>
   8806                     <span class="entry_type_enum_name">FLASH</span>
   8807                     <span class="entry_type_enum_value">4</span>
   8808                   </li>
   8809                   <li>
   8810                     <span class="entry_type_enum_name">FINE_WEATHER</span>
   8811                     <span class="entry_type_enum_value">9</span>
   8812                   </li>
   8813                   <li>
   8814                     <span class="entry_type_enum_name">CLOUDY_WEATHER</span>
   8815                     <span class="entry_type_enum_value">10</span>
   8816                   </li>
   8817                   <li>
   8818                     <span class="entry_type_enum_name">SHADE</span>
   8819                     <span class="entry_type_enum_value">11</span>
   8820                   </li>
   8821                   <li>
   8822                     <span class="entry_type_enum_name">DAYLIGHT_FLUORESCENT</span>
   8823                     <span class="entry_type_enum_value">12</span>
   8824                     <span class="entry_type_enum_notes">D 5700 - 7100K</span>
   8825                   </li>
   8826                   <li>
   8827                     <span class="entry_type_enum_name">DAY_WHITE_FLUORESCENT</span>
   8828                     <span class="entry_type_enum_value">13</span>
   8829                     <span class="entry_type_enum_notes">N 4600 - 5400K</span>
   8830                   </li>
   8831                   <li>
   8832                     <span class="entry_type_enum_name">COOL_WHITE_FLUORESCENT</span>
   8833                     <span class="entry_type_enum_value">14</span>
   8834                     <span class="entry_type_enum_notes">W 3900 - 4500K</span>
   8835                   </li>
   8836                   <li>
   8837                     <span class="entry_type_enum_name">WHITE_FLUORESCENT</span>
   8838                     <span class="entry_type_enum_value">15</span>
   8839                     <span class="entry_type_enum_notes">WW 3200 - 3700K</span>
   8840                   </li>
   8841                   <li>
   8842                     <span class="entry_type_enum_name">STANDARD_A</span>
   8843                     <span class="entry_type_enum_value">17</span>
   8844                   </li>
   8845                   <li>
   8846                     <span class="entry_type_enum_name">STANDARD_B</span>
   8847                     <span class="entry_type_enum_value">18</span>
   8848                   </li>
   8849                   <li>
   8850                     <span class="entry_type_enum_name">STANDARD_C</span>
   8851                     <span class="entry_type_enum_value">19</span>
   8852                   </li>
   8853                   <li>
   8854                     <span class="entry_type_enum_name">D55</span>
   8855                     <span class="entry_type_enum_value">20</span>
   8856                   </li>
   8857                   <li>
   8858                     <span class="entry_type_enum_name">D65</span>
   8859                     <span class="entry_type_enum_value">21</span>
   8860                   </li>
   8861                   <li>
   8862                     <span class="entry_type_enum_name">D75</span>
   8863                     <span class="entry_type_enum_value">22</span>
   8864                   </li>
   8865                   <li>
   8866                     <span class="entry_type_enum_name">D50</span>
   8867                     <span class="entry_type_enum_value">23</span>
   8868                   </li>
   8869                   <li>
   8870                     <span class="entry_type_enum_name">ISO_STUDIO_TUNGSTEN</span>
   8871                     <span class="entry_type_enum_value">24</span>
   8872                   </li>
   8873                 </ul>
   8874 
   8875             </td> <!-- entry_type -->
   8876 
   8877             <td class="entry_description">
   8878               Light source used to define transform
   8879           1
   8880             </td>
   8881 
   8882             <td class="entry_units">
   8883             </td>
   8884 
   8885             <td class="entry_range">
   8886             </td>
   8887 
   8888             <td class="entry_notes">
   8889               [EXIF LightSource tag] Must all these be
   8890           supported? Need CCT for each!
   8891             </td>
   8892 
   8893             <td class="entry_tags">
   8894               <ul class="entry_tags">
   8895                   <li><a href="#tag_DNG">DNG</a></li>
   8896                   <li><a href="#tag_EXIF">EXIF</a></li>
   8897               </ul>
   8898             </td>
   8899 
   8900           </tr> <!-- end of entry -->
   8901         
   8902                 
   8903           <tr class="entry" id="static_android.sensor.referenceIlluminant2">
   8904             <td class="entry_name">android.<wbr>sensor.<wbr>reference<wbr>Illuminant2</td>
   8905             <td class="entry_type">
   8906                 <span class="entry_type_name">byte</span>
   8907 
   8908               <span class="entry_type_visibility"> [system]</span>
   8909 
   8910 
   8911             </td> <!-- entry_type -->
   8912 
   8913             <td class="entry_description">
   8914               Light source used to define transform
   8915           2
   8916             </td>
   8917 
   8918             <td class="entry_units">
   8919               Same as illuminant 1
   8920             </td>
   8921 
   8922             <td class="entry_range">
   8923             </td>
   8924 
   8925             <td class="entry_notes">
   8926             </td>
   8927 
   8928             <td class="entry_tags">
   8929             </td>
   8930 
   8931           </tr> <!-- end of entry -->
   8932         
   8933         
   8934 
   8935       <!-- end of kind -->
   8936       </tbody>
   8937       <tr><td colspan="7" class="kind">dynamic</td></tr>
   8938 
   8939       <thead class="entries_header">
   8940         <tr>
   8941           <th class="th_name">Property Name</th>
   8942           <th class="th_type">Type</th>
   8943           <th class="th_description">Description</th>
   8944           <th class="th_units">Units</th>
   8945           <th class="th_range">Range</th>
   8946           <th class="th_notes">Notes</th>
   8947           <th class="th_tags">Tags</th>
   8948         </tr>
   8949       </thead>
   8950 
   8951       <tbody>
   8952 
   8953         
   8954 
   8955         
   8956 
   8957         
   8958 
   8959         
   8960 
   8961                 
   8962           <tr class="entry" id="dynamic_android.sensor.exposureTime">
   8963             <td class="entry_name">android.<wbr>sensor.<wbr>exposure<wbr>Time</td>
   8964             <td class="entry_type">
   8965                 <span class="entry_type_name">int64</span>
   8966 
   8967               <span class="entry_type_visibility"> [public]</span>
   8968 
   8969 
   8970             </td> <!-- entry_type -->
   8971 
   8972             <td class="entry_description">
   8973               Duration each pixel is exposed to
   8974           light.<wbr>
   8975 <br>
   8976 <br>          If the sensor can't expose this exact duration,<wbr> it should shorten the
   8977           duration exposed to the nearest possible value (rather than expose longer).<wbr>
   8978           
   8979             </td>
   8980 
   8981             <td class="entry_units">
   8982               nanoseconds
   8983             </td>
   8984 
   8985             <td class="entry_range">
   8986               android.<wbr>sensor.<wbr>info.<wbr>exposure<wbr>Time<wbr>Range
   8987             </td>
   8988 
   8989             <td class="entry_notes">
   8990               1/<wbr>10000 - 30 sec range.<wbr> No bulb mode
   8991             </td>
   8992 
   8993             <td class="entry_tags">
   8994               <ul class="entry_tags">
   8995                   <li><a href="#tag_V1">V1</a></li>
   8996               </ul>
   8997             </td>
   8998 
   8999           </tr> <!-- end of entry -->
   9000         
   9001                 
   9002           <tr class="entry" id="dynamic_android.sensor.frameDuration">
   9003             <td class="entry_name">android.<wbr>sensor.<wbr>frame<wbr>Duration</td>
   9004             <td class="entry_type">
   9005                 <span class="entry_type_name">int64</span>
   9006 
   9007               <span class="entry_type_visibility"> [public]</span>
   9008 
   9009 
   9010             </td> <!-- entry_type -->
   9011 
   9012             <td class="entry_description">
   9013               Duration from start of frame exposure to
   9014           start of next frame exposure
   9015             </td>
   9016 
   9017             <td class="entry_units">
   9018               nanoseconds
   9019             </td>
   9020 
   9021             <td class="entry_range">
   9022               see android.<wbr>sensor.<wbr>info.<wbr>max<wbr>Frame<wbr>Duration,<wbr>
   9023           android.<wbr>scaler.<wbr>info.<wbr>available<wbr>Min<wbr>Frame<wbr>Durations
   9024             </td>
   9025 
   9026             <td class="entry_notes">
   9027               Exposure time has priority,<wbr> so duration is set to
   9028           max(duration,<wbr> exposure time + overhead)
   9029             </td>
   9030 
   9031             <td class="entry_tags">
   9032               <ul class="entry_tags">
   9033                   <li><a href="#tag_V1">V1</a></li>
   9034                   <li><a href="#tag_BC">BC</a></li>
   9035               </ul>
   9036             </td>
   9037 
   9038           </tr> <!-- end of entry -->
   9039         
   9040                 
   9041           <tr class="entry" id="dynamic_android.sensor.sensitivity">
   9042             <td class="entry_name">android.<wbr>sensor.<wbr>sensitivity</td>
   9043             <td class="entry_type">
   9044                 <span class="entry_type_name">int32</span>
   9045 
   9046               <span class="entry_type_visibility"> [public]</span>
   9047 
   9048 
   9049             </td> <!-- entry_type -->
   9050 
   9051             <td class="entry_description">
   9052               Gain applied to image data.<wbr> Must be
   9053           implemented through analog gain only if set to values
   9054           below 'maximum analog sensitivity'.<wbr>
   9055 <br>
   9056 <br>          If the sensor can't apply this exact gain,<wbr> it should lessen the
   9057           gain to the nearest possible value (rather than gain more).<wbr>
   9058           
   9059             </td>
   9060 
   9061             <td class="entry_units">
   9062               ISO arithmetic units
   9063             </td>
   9064 
   9065             <td class="entry_range">
   9066               android.<wbr>sensor.<wbr>info.<wbr>sensitivity<wbr>Range
   9067             </td>
   9068 
   9069             <td class="entry_notes">
   9070               ISO 12232:2006 REI method
   9071             </td>
   9072 
   9073             <td class="entry_tags">
   9074               <ul class="entry_tags">
   9075                   <li><a href="#tag_V1">V1</a></li>
   9076               </ul>
   9077             </td>
   9078 
   9079           </tr> <!-- end of entry -->
   9080         
   9081                 
   9082           <tr class="entry" id="dynamic_android.sensor.timestamp">
   9083             <td class="entry_name">android.<wbr>sensor.<wbr>timestamp</td>
   9084             <td class="entry_type">
   9085                 <span class="entry_type_name">int64</span>
   9086 
   9087               <span class="entry_type_visibility"> [public]</span>
   9088 
   9089 
   9090             </td> <!-- entry_type -->
   9091 
   9092             <td class="entry_description">
   9093               Time at start of exposure of first
   9094           row
   9095             </td>
   9096 
   9097             <td class="entry_units">
   9098               nanoseconds
   9099             </td>
   9100 
   9101             <td class="entry_range">
   9102               > 0
   9103             </td>
   9104 
   9105             <td class="entry_notes">
   9106               Monotonic,<wbr> should be synced to other timestamps in
   9107           system
   9108             </td>
   9109 
   9110             <td class="entry_tags">
   9111               <ul class="entry_tags">
   9112                   <li><a href="#tag_BC">BC</a></li>
   9113               </ul>
   9114             </td>
   9115 
   9116           </tr> <!-- end of entry -->
   9117         
   9118                 
   9119           <tr class="entry" id="dynamic_android.sensor.temperature">
   9120             <td class="entry_name">android.<wbr>sensor.<wbr>temperature</td>
   9121             <td class="entry_type">
   9122                 <span class="entry_type_name">float</span>
   9123 
   9124               <span class="entry_type_visibility"> [public]</span>
   9125 
   9126 
   9127             </td> <!-- entry_type -->
   9128 
   9129             <td class="entry_description">
   9130               The temperature of the sensor,<wbr> sampled at the time
   9131           exposure began for this frame.<wbr>
   9132 <br>
   9133 <br>          The thermal diode being queried should be inside the sensor PCB,<wbr> or
   9134           somewhere close to it.<wbr>
   9135           
   9136             </td>
   9137 
   9138             <td class="entry_units">
   9139               celsius
   9140             </td>
   9141 
   9142             <td class="entry_range">
   9143               Optional.<wbr> This value is missing if no temperature is available.<wbr>
   9144             </td>
   9145 
   9146             <td class="entry_notes">
   9147             </td>
   9148 
   9149             <td class="entry_tags">
   9150               <ul class="entry_tags">
   9151                   <li><a href="#tag_FULL">FULL</a></li>
   9152               </ul>
   9153             </td>
   9154 
   9155           </tr> <!-- end of entry -->
   9156         
   9157         
   9158 
   9159       <!-- end of kind -->
   9160       </tbody>
   9161 
   9162   <!-- end of section -->
   9163   <tr><td colspan="7" id="section_shading" class="section">shading</td></tr>
   9164 
   9165 
   9166       <tr><td colspan="7" class="kind">controls</td></tr>
   9167 
   9168       <thead class="entries_header">
   9169         <tr>
   9170           <th class="th_name">Property Name</th>
   9171           <th class="th_type">Type</th>
   9172           <th class="th_description">Description</th>
   9173           <th class="th_units">Units</th>
   9174           <th class="th_range">Range</th>
   9175           <th class="th_notes">Notes</th>
   9176           <th class="th_tags">Tags</th>
   9177         </tr>
   9178       </thead>
   9179 
   9180       <tbody>
   9181 
   9182         
   9183 
   9184         
   9185 
   9186         
   9187 
   9188         
   9189 
   9190                 
   9191           <tr class="entry" id="controls_android.shading.mode">
   9192             <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
   9193             <td class="entry_type">
   9194                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9195 
   9196               <span class="entry_type_visibility"> [system]</span>
   9197 
   9198                 <ul class="entry_type_enum">
   9199                   <li>
   9200                     <span class="entry_type_enum_name">OFF</span>
   9201                     <span class="entry_type_enum_notes">No shading correction is applied</span>
   9202                   </li>
   9203                   <li>
   9204                     <span class="entry_type_enum_name">FAST</span>
   9205                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   9206             bayer output</span>
   9207                   </li>
   9208                   <li>
   9209                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   9210                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   9211             quality</span>
   9212                   </li>
   9213                 </ul>
   9214 
   9215             </td> <!-- entry_type -->
   9216 
   9217             <td class="entry_description">
   9218               Quality of lens shading correction applied
   9219           to the image data
   9220             </td>
   9221 
   9222             <td class="entry_units">
   9223             </td>
   9224 
   9225             <td class="entry_range">
   9226             </td>
   9227 
   9228             <td class="entry_notes">
   9229             </td>
   9230 
   9231             <td class="entry_tags">
   9232             </td>
   9233 
   9234           </tr> <!-- end of entry -->
   9235         
   9236                 
   9237           <tr class="entry" id="controls_android.shading.strength">
   9238             <td class="entry_name">android.<wbr>shading.<wbr>strength</td>
   9239             <td class="entry_type">
   9240                 <span class="entry_type_name">byte</span>
   9241 
   9242               <span class="entry_type_visibility"> [system]</span>
   9243 
   9244 
   9245             </td> <!-- entry_type -->
   9246 
   9247             <td class="entry_description">
   9248               Control the amount of shading correction
   9249           applied to the images
   9250             </td>
   9251 
   9252             <td class="entry_units">
   9253               unitless: 1-10; 10 is full shading
   9254           compensation
   9255             </td>
   9256 
   9257             <td class="entry_range">
   9258             </td>
   9259 
   9260             <td class="entry_notes">
   9261             </td>
   9262 
   9263             <td class="entry_tags">
   9264               <ul class="entry_tags">
   9265                   <li><a href="#tag_ADV">ADV</a></li>
   9266               </ul>
   9267             </td>
   9268 
   9269           </tr> <!-- end of entry -->
   9270         
   9271         
   9272 
   9273       <!-- end of kind -->
   9274       </tbody>
   9275       <tr><td colspan="7" class="kind">dynamic</td></tr>
   9276 
   9277       <thead class="entries_header">
   9278         <tr>
   9279           <th class="th_name">Property Name</th>
   9280           <th class="th_type">Type</th>
   9281           <th class="th_description">Description</th>
   9282           <th class="th_units">Units</th>
   9283           <th class="th_range">Range</th>
   9284           <th class="th_notes">Notes</th>
   9285           <th class="th_tags">Tags</th>
   9286         </tr>
   9287       </thead>
   9288 
   9289       <tbody>
   9290 
   9291         
   9292 
   9293         
   9294 
   9295         
   9296 
   9297         
   9298 
   9299                 
   9300           <tr class="entry" id="dynamic_android.shading.mode">
   9301             <td class="entry_name">android.<wbr>shading.<wbr>mode</td>
   9302             <td class="entry_type">
   9303                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9304 
   9305               <span class="entry_type_visibility"> [system]</span>
   9306 
   9307                 <ul class="entry_type_enum">
   9308                   <li>
   9309                     <span class="entry_type_enum_name">OFF</span>
   9310                     <span class="entry_type_enum_notes">No shading correction is applied</span>
   9311                   </li>
   9312                   <li>
   9313                     <span class="entry_type_enum_name">FAST</span>
   9314                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   9315             bayer output</span>
   9316                   </li>
   9317                   <li>
   9318                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   9319                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   9320             quality</span>
   9321                   </li>
   9322                 </ul>
   9323 
   9324             </td> <!-- entry_type -->
   9325 
   9326             <td class="entry_description">
   9327               Quality of lens shading correction applied
   9328           to the image data
   9329             </td>
   9330 
   9331             <td class="entry_units">
   9332             </td>
   9333 
   9334             <td class="entry_range">
   9335             </td>
   9336 
   9337             <td class="entry_notes">
   9338             </td>
   9339 
   9340             <td class="entry_tags">
   9341             </td>
   9342 
   9343           </tr> <!-- end of entry -->
   9344         
   9345         
   9346 
   9347       <!-- end of kind -->
   9348       </tbody>
   9349 
   9350   <!-- end of section -->
   9351   <tr><td colspan="7" id="section_statistics" class="section">statistics</td></tr>
   9352 
   9353 
   9354       <tr><td colspan="7" class="kind">controls</td></tr>
   9355 
   9356       <thead class="entries_header">
   9357         <tr>
   9358           <th class="th_name">Property Name</th>
   9359           <th class="th_type">Type</th>
   9360           <th class="th_description">Description</th>
   9361           <th class="th_units">Units</th>
   9362           <th class="th_range">Range</th>
   9363           <th class="th_notes">Notes</th>
   9364           <th class="th_tags">Tags</th>
   9365         </tr>
   9366       </thead>
   9367 
   9368       <tbody>
   9369 
   9370         
   9371 
   9372         
   9373 
   9374         
   9375 
   9376         
   9377 
   9378                 
   9379           <tr class="entry" id="controls_android.statistics.faceDetectMode">
   9380             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
   9381             <td class="entry_type">
   9382                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9383 
   9384               <span class="entry_type_visibility"> [public]</span>
   9385 
   9386                 <ul class="entry_type_enum">
   9387                   <li>
   9388                     <span class="entry_type_enum_name">OFF</span>
   9389                   </li>
   9390                   <li>
   9391                     <span class="entry_type_enum_name">SIMPLE</span>
   9392                     <span class="entry_type_enum_notes">Optional Return rectangle and confidence
   9393             only</span>
   9394                   </li>
   9395                   <li>
   9396                     <span class="entry_type_enum_name">FULL</span>
   9397                     <span class="entry_type_enum_notes">Optional Return all face
   9398             metadata</span>
   9399                   </li>
   9400                 </ul>
   9401 
   9402             </td> <!-- entry_type -->
   9403 
   9404             <td class="entry_description">
   9405               State of the face detector
   9406           unit
   9407             </td>
   9408 
   9409             <td class="entry_units">
   9410             </td>
   9411 
   9412             <td class="entry_range">
   9413               
   9414           android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
   9415             </td>
   9416 
   9417             <td class="entry_notes">
   9418               Whether face detection is enabled,<wbr> and whether it
   9419           should output just the basic fields or the full set of
   9420           fields.<wbr> Value must be one of the
   9421           android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
   9422             </td>
   9423 
   9424             <td class="entry_tags">
   9425               <ul class="entry_tags">
   9426                   <li><a href="#tag_BC">BC</a></li>
   9427               </ul>
   9428             </td>
   9429 
   9430           </tr> <!-- end of entry -->
   9431         
   9432                 
   9433           <tr class="entry" id="controls_android.statistics.histogramMode">
   9434             <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
   9435             <td class="entry_type">
   9436                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9437 
   9438               <span class="entry_type_visibility"> [system as boolean]</span>
   9439 
   9440                 <ul class="entry_type_enum">
   9441                   <li>
   9442                     <span class="entry_type_enum_name">OFF</span>
   9443                   </li>
   9444                   <li>
   9445                     <span class="entry_type_enum_name">ON</span>
   9446                   </li>
   9447                 </ul>
   9448 
   9449             </td> <!-- entry_type -->
   9450 
   9451             <td class="entry_description">
   9452               Operating mode for histogram
   9453           generation
   9454             </td>
   9455 
   9456             <td class="entry_units">
   9457             </td>
   9458 
   9459             <td class="entry_range">
   9460             </td>
   9461 
   9462             <td class="entry_notes">
   9463             </td>
   9464 
   9465             <td class="entry_tags">
   9466               <ul class="entry_tags">
   9467                   <li><a href="#tag_V1">V1</a></li>
   9468               </ul>
   9469             </td>
   9470 
   9471           </tr> <!-- end of entry -->
   9472         
   9473                 
   9474           <tr class="entry" id="controls_android.statistics.sharpnessMapMode">
   9475             <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
   9476             <td class="entry_type">
   9477                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9478 
   9479               <span class="entry_type_visibility"> [system as boolean]</span>
   9480 
   9481                 <ul class="entry_type_enum">
   9482                   <li>
   9483                     <span class="entry_type_enum_name">OFF</span>
   9484                   </li>
   9485                   <li>
   9486                     <span class="entry_type_enum_name">ON</span>
   9487                   </li>
   9488                 </ul>
   9489 
   9490             </td> <!-- entry_type -->
   9491 
   9492             <td class="entry_description">
   9493               Operating mode for sharpness map
   9494           generation
   9495             </td>
   9496 
   9497             <td class="entry_units">
   9498             </td>
   9499 
   9500             <td class="entry_range">
   9501             </td>
   9502 
   9503             <td class="entry_notes">
   9504             </td>
   9505 
   9506             <td class="entry_tags">
   9507               <ul class="entry_tags">
   9508                   <li><a href="#tag_V1">V1</a></li>
   9509               </ul>
   9510             </td>
   9511 
   9512           </tr> <!-- end of entry -->
   9513         
   9514                 
   9515           <tr class="entry" id="controls_android.statistics.lensShadingMapMode">
   9516             <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map<wbr>Mode</td>
   9517             <td class="entry_type">
   9518                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9519 
   9520               <span class="entry_type_visibility"> [public]</span>
   9521 
   9522                 <ul class="entry_type_enum">
   9523                   <li>
   9524                     <span class="entry_type_enum_name">OFF</span>
   9525                   </li>
   9526                   <li>
   9527                     <span class="entry_type_enum_name">ON</span>
   9528                   </li>
   9529                 </ul>
   9530 
   9531             </td> <!-- entry_type -->
   9532 
   9533             <td class="entry_description">
   9534               Whether the HAL needs to output the lens
   9535           shading map in output result metadata
   9536             </td>
   9537 
   9538             <td class="entry_units">
   9539             </td>
   9540 
   9541             <td class="entry_range">
   9542             </td>
   9543 
   9544             <td class="entry_notes">
   9545               When set to ON,<wbr>
   9546           android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map must be provided in
   9547           the output result metdata.<wbr>
   9548             </td>
   9549 
   9550             <td class="entry_tags">
   9551             </td>
   9552 
   9553           </tr> <!-- end of entry -->
   9554         
   9555         
   9556 
   9557       <!-- end of kind -->
   9558       </tbody>
   9559       <tr><td colspan="7" class="kind">static</td></tr>
   9560 
   9561       <thead class="entries_header">
   9562         <tr>
   9563           <th class="th_name">Property Name</th>
   9564           <th class="th_type">Type</th>
   9565           <th class="th_description">Description</th>
   9566           <th class="th_units">Units</th>
   9567           <th class="th_range">Range</th>
   9568           <th class="th_notes">Notes</th>
   9569           <th class="th_tags">Tags</th>
   9570         </tr>
   9571       </thead>
   9572 
   9573       <tbody>
   9574 
   9575         
   9576 
   9577         
   9578 
   9579         
   9580 
   9581         
   9582                 
   9583             
   9584 
   9585                 
   9586           <tr class="entry" id="static_android.statistics.info.availableFaceDetectModes">
   9587             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes</td>
   9588             <td class="entry_type">
   9589                 <span class="entry_type_name">byte</span>
   9590                 <span class="entry_type_container">x</span>
   9591 
   9592                 <span class="entry_type_array">
   9593                   n
   9594                 </span>
   9595               <span class="entry_type_visibility"> [public]</span>
   9596                 <div class="entry_type_notes">List of enums from android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</div>
   9597 
   9598 
   9599             </td> <!-- entry_type -->
   9600 
   9601             <td class="entry_description">
   9602               Which face detection modes are available,<wbr>
   9603             if any
   9604             </td>
   9605 
   9606             <td class="entry_units">
   9607               List of enum:
   9608             OFF
   9609             SIMPLE
   9610             FULL
   9611             </td>
   9612 
   9613             <td class="entry_range">
   9614             </td>
   9615 
   9616             <td class="entry_notes">
   9617               OFF means face detection is disabled,<wbr> it must
   9618             be included in the list.<wbr>
   9619 <br>
   9620 <br>            SIMPLE means the device supports the
   9621             android.<wbr>statistics.<wbr>face<wbr>Rectangles and
   9622             android.<wbr>statistics.<wbr>face<wbr>Scores outputs.<wbr>
   9623 <br>
   9624 <br>            FULL means the device additionally supports the
   9625             android.<wbr>statistics.<wbr>face<wbr>Ids and
   9626             android.<wbr>statistics.<wbr>face<wbr>Landmarks outputs.<wbr>
   9627             
   9628             </td>
   9629 
   9630             <td class="entry_tags">
   9631             </td>
   9632 
   9633           </tr> <!-- end of entry -->
   9634         
   9635                 
   9636           <tr class="entry" id="static_android.statistics.info.histogramBucketCount">
   9637             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>histogram<wbr>Bucket<wbr>Count</td>
   9638             <td class="entry_type">
   9639                 <span class="entry_type_name">int32</span>
   9640 
   9641               <span class="entry_type_visibility"> [system]</span>
   9642 
   9643 
   9644             </td> <!-- entry_type -->
   9645 
   9646             <td class="entry_description">
   9647               Number of histogram buckets
   9648             supported
   9649             </td>
   9650 
   9651             <td class="entry_units">
   9652             </td>
   9653 
   9654             <td class="entry_range">
   9655               >= 64
   9656             </td>
   9657 
   9658             <td class="entry_notes">
   9659             </td>
   9660 
   9661             <td class="entry_tags">
   9662             </td>
   9663 
   9664           </tr> <!-- end of entry -->
   9665         
   9666                 
   9667           <tr class="entry" id="static_android.statistics.info.maxFaceCount">
   9668             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Face<wbr>Count</td>
   9669             <td class="entry_type">
   9670                 <span class="entry_type_name">int32</span>
   9671 
   9672               <span class="entry_type_visibility"> [public]</span>
   9673 
   9674 
   9675             </td> <!-- entry_type -->
   9676 
   9677             <td class="entry_description">
   9678               Maximum number of simultaneously detectable
   9679             faces
   9680             </td>
   9681 
   9682             <td class="entry_units">
   9683             </td>
   9684 
   9685             <td class="entry_range">
   9686               >= 4 if availableFaceDetectionModes lists
   9687             modes besides OFF,<wbr> otherwise 0
   9688             </td>
   9689 
   9690             <td class="entry_notes">
   9691             </td>
   9692 
   9693             <td class="entry_tags">
   9694             </td>
   9695 
   9696           </tr> <!-- end of entry -->
   9697         
   9698                 
   9699           <tr class="entry" id="static_android.statistics.info.maxHistogramCount">
   9700             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Histogram<wbr>Count</td>
   9701             <td class="entry_type">
   9702                 <span class="entry_type_name">int32</span>
   9703 
   9704               <span class="entry_type_visibility"> [system]</span>
   9705 
   9706 
   9707             </td> <!-- entry_type -->
   9708 
   9709             <td class="entry_description">
   9710               Maximum value possible for a histogram
   9711             bucket
   9712             </td>
   9713 
   9714             <td class="entry_units">
   9715             </td>
   9716 
   9717             <td class="entry_range">
   9718             </td>
   9719 
   9720             <td class="entry_notes">
   9721             </td>
   9722 
   9723             <td class="entry_tags">
   9724             </td>
   9725 
   9726           </tr> <!-- end of entry -->
   9727         
   9728                 
   9729           <tr class="entry" id="static_android.statistics.info.maxSharpnessMapValue">
   9730             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>max<wbr>Sharpness<wbr>Map<wbr>Value</td>
   9731             <td class="entry_type">
   9732                 <span class="entry_type_name">int32</span>
   9733 
   9734               <span class="entry_type_visibility"> [system]</span>
   9735 
   9736 
   9737             </td> <!-- entry_type -->
   9738 
   9739             <td class="entry_description">
   9740               Maximum value possible for a sharpness map
   9741             region.<wbr>
   9742             </td>
   9743 
   9744             <td class="entry_units">
   9745             </td>
   9746 
   9747             <td class="entry_range">
   9748             </td>
   9749 
   9750             <td class="entry_notes">
   9751             </td>
   9752 
   9753             <td class="entry_tags">
   9754             </td>
   9755 
   9756           </tr> <!-- end of entry -->
   9757         
   9758                 
   9759           <tr class="entry" id="static_android.statistics.info.sharpnessMapSize">
   9760             <td class="entry_name">android.<wbr>statistics.<wbr>info.<wbr>sharpness<wbr>Map<wbr>Size</td>
   9761             <td class="entry_type">
   9762                 <span class="entry_type_name">int32</span>
   9763                 <span class="entry_type_container">x</span>
   9764 
   9765                 <span class="entry_type_array">
   9766                   2
   9767                 </span>
   9768               <span class="entry_type_visibility"> [system as size]</span>
   9769                 <div class="entry_type_notes">width x height</div>
   9770 
   9771 
   9772             </td> <!-- entry_type -->
   9773 
   9774             <td class="entry_description">
   9775               Dimensions of the sharpness
   9776             map
   9777             </td>
   9778 
   9779             <td class="entry_units">
   9780             </td>
   9781 
   9782             <td class="entry_range">
   9783               Must be at least 32 x 32
   9784             </td>
   9785 
   9786             <td class="entry_notes">
   9787             </td>
   9788 
   9789             <td class="entry_tags">
   9790             </td>
   9791 
   9792           </tr> <!-- end of entry -->
   9793         
   9794         
   9795         
   9796 
   9797         
   9798 
   9799       <!-- end of kind -->
   9800       </tbody>
   9801       <tr><td colspan="7" class="kind">dynamic</td></tr>
   9802 
   9803       <thead class="entries_header">
   9804         <tr>
   9805           <th class="th_name">Property Name</th>
   9806           <th class="th_type">Type</th>
   9807           <th class="th_description">Description</th>
   9808           <th class="th_units">Units</th>
   9809           <th class="th_range">Range</th>
   9810           <th class="th_notes">Notes</th>
   9811           <th class="th_tags">Tags</th>
   9812         </tr>
   9813       </thead>
   9814 
   9815       <tbody>
   9816 
   9817         
   9818 
   9819         
   9820 
   9821         
   9822 
   9823         
   9824 
   9825                 
   9826           <tr class="entry" id="dynamic_android.statistics.faceDetectMode">
   9827             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Detect<wbr>Mode</td>
   9828             <td class="entry_type">
   9829                 <span class="entry_type_name entry_type_name_enum">byte</span>
   9830 
   9831               <span class="entry_type_visibility"> [public]</span>
   9832 
   9833                 <ul class="entry_type_enum">
   9834                   <li>
   9835                     <span class="entry_type_enum_name">OFF</span>
   9836                   </li>
   9837                   <li>
   9838                     <span class="entry_type_enum_name">SIMPLE</span>
   9839                     <span class="entry_type_enum_notes">Optional Return rectangle and confidence
   9840             only</span>
   9841                   </li>
   9842                   <li>
   9843                     <span class="entry_type_enum_name">FULL</span>
   9844                     <span class="entry_type_enum_notes">Optional Return all face
   9845             metadata</span>
   9846                   </li>
   9847                 </ul>
   9848 
   9849             </td> <!-- entry_type -->
   9850 
   9851             <td class="entry_description">
   9852               State of the face detector
   9853           unit
   9854             </td>
   9855 
   9856             <td class="entry_units">
   9857             </td>
   9858 
   9859             <td class="entry_range">
   9860               
   9861           android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes
   9862             </td>
   9863 
   9864             <td class="entry_notes">
   9865               Whether face detection is enabled,<wbr> and whether it
   9866           should output just the basic fields or the full set of
   9867           fields.<wbr> Value must be one of the
   9868           android.<wbr>statistics.<wbr>info.<wbr>available<wbr>Face<wbr>Detect<wbr>Modes.<wbr>
   9869             </td>
   9870 
   9871             <td class="entry_tags">
   9872               <ul class="entry_tags">
   9873                   <li><a href="#tag_BC">BC</a></li>
   9874               </ul>
   9875             </td>
   9876 
   9877           </tr> <!-- end of entry -->
   9878         
   9879                 
   9880           <tr class="entry" id="dynamic_android.statistics.faceIds">
   9881             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Ids</td>
   9882             <td class="entry_type">
   9883                 <span class="entry_type_name">int32</span>
   9884                 <span class="entry_type_container">x</span>
   9885 
   9886                 <span class="entry_type_array">
   9887                   n
   9888                 </span>
   9889               <span class="entry_type_visibility"> [public]</span>
   9890 
   9891 
   9892             </td> <!-- entry_type -->
   9893 
   9894             <td class="entry_description">
   9895               List of unique IDs for detected
   9896           faces
   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               Only available if faceDetectMode == FULL
   9907             </td>
   9908 
   9909             <td class="entry_tags">
   9910               <ul class="entry_tags">
   9911                   <li><a href="#tag_BC">BC</a></li>
   9912               </ul>
   9913             </td>
   9914 
   9915           </tr> <!-- end of entry -->
   9916         
   9917                 
   9918           <tr class="entry" id="dynamic_android.statistics.faceLandmarks">
   9919             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Landmarks</td>
   9920             <td class="entry_type">
   9921                 <span class="entry_type_name">int32</span>
   9922                 <span class="entry_type_container">x</span>
   9923 
   9924                 <span class="entry_type_array">
   9925                   n x 6
   9926                 </span>
   9927               <span class="entry_type_visibility"> [public]</span>
   9928                 <div class="entry_type_notes">(leftEyeX,<wbr> leftEyeY,<wbr> rightEyeX,<wbr> rightEyeY,<wbr> mouthX,<wbr> mouthY)</div>
   9929 
   9930 
   9931             </td> <!-- entry_type -->
   9932 
   9933             <td class="entry_description">
   9934               List of landmarks for detected
   9935           faces
   9936             </td>
   9937 
   9938             <td class="entry_units">
   9939             </td>
   9940 
   9941             <td class="entry_range">
   9942             </td>
   9943 
   9944             <td class="entry_notes">
   9945               Only available if faceDetectMode == FULL
   9946             </td>
   9947 
   9948             <td class="entry_tags">
   9949               <ul class="entry_tags">
   9950                   <li><a href="#tag_BC">BC</a></li>
   9951               </ul>
   9952             </td>
   9953 
   9954           </tr> <!-- end of entry -->
   9955         
   9956                 
   9957           <tr class="entry" id="dynamic_android.statistics.faceRectangles">
   9958             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Rectangles</td>
   9959             <td class="entry_type">
   9960                 <span class="entry_type_name">int32</span>
   9961                 <span class="entry_type_container">x</span>
   9962 
   9963                 <span class="entry_type_array">
   9964                   n x 4
   9965                 </span>
   9966               <span class="entry_type_visibility"> [public as rectangle]</span>
   9967                 <div class="entry_type_notes">(xmin,<wbr> ymin,<wbr> xmax,<wbr> ymax).<wbr> (0,<wbr>0) is top-left of active pixel area</div>
   9968 
   9969 
   9970             </td> <!-- entry_type -->
   9971 
   9972             <td class="entry_description">
   9973               List of the bounding rectangles for detected
   9974           faces
   9975             </td>
   9976 
   9977             <td class="entry_units">
   9978             </td>
   9979 
   9980             <td class="entry_range">
   9981             </td>
   9982 
   9983             <td class="entry_notes">
   9984               Only available if faceDetectMode != OFF
   9985             </td>
   9986 
   9987             <td class="entry_tags">
   9988               <ul class="entry_tags">
   9989                   <li><a href="#tag_BC">BC</a></li>
   9990               </ul>
   9991             </td>
   9992 
   9993           </tr> <!-- end of entry -->
   9994         
   9995                 
   9996           <tr class="entry" id="dynamic_android.statistics.faceScores">
   9997             <td class="entry_name">android.<wbr>statistics.<wbr>face<wbr>Scores</td>
   9998             <td class="entry_type">
   9999                 <span class="entry_type_name">byte</span>
   10000                 <span class="entry_type_container">x</span>
   10001 
   10002                 <span class="entry_type_array">
   10003                   n
   10004                 </span>
   10005               <span class="entry_type_visibility"> [public]</span>
   10006 
   10007 
   10008             </td> <!-- entry_type -->
   10009 
   10010             <td class="entry_description">
   10011               List of the face confidence scores for
   10012           detected faces
   10013             </td>
   10014 
   10015             <td class="entry_units">
   10016             </td>
   10017 
   10018             <td class="entry_range">
   10019               1-100
   10020             </td>
   10021 
   10022             <td class="entry_notes">
   10023               Only available if faceDetectMode != OFF.<wbr> The value should be
   10024           meaningful (for example,<wbr> setting 100 at all times is illegal).<wbr>
   10025             </td>
   10026 
   10027             <td class="entry_tags">
   10028               <ul class="entry_tags">
   10029                   <li><a href="#tag_BC">BC</a></li>
   10030               </ul>
   10031             </td>
   10032 
   10033           </tr> <!-- end of entry -->
   10034         
   10035                 
   10036           <tr class="entry" id="dynamic_android.statistics.histogram">
   10037             <td class="entry_name">android.<wbr>statistics.<wbr>histogram</td>
   10038             <td class="entry_type">
   10039                 <span class="entry_type_name">int32</span>
   10040                 <span class="entry_type_container">x</span>
   10041 
   10042                 <span class="entry_type_array">
   10043                   n x 3
   10044                 </span>
   10045               <span class="entry_type_visibility"> [system]</span>
   10046                 <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>
   10047 
   10048 
   10049             </td> <!-- entry_type -->
   10050 
   10051             <td class="entry_description">
   10052               A 3-channel histogram based on the raw
   10053           sensor data
   10054             </td>
   10055 
   10056             <td class="entry_units">
   10057             </td>
   10058 
   10059             <td class="entry_range">
   10060             </td>
   10061 
   10062             <td class="entry_notes">
   10063               The k'th bucket (0-based) covers the input range
   10064           (with w = android.<wbr>sensor.<wbr>info.<wbr>white<wbr>Level) of [ k * w/<wbr>N,<wbr>
   10065           (k + 1) * w /<wbr> N ).<wbr> If only a monochrome sharpness map is
   10066           supported,<wbr> all channels should have the same data
   10067             </td>
   10068 
   10069             <td class="entry_tags">
   10070               <ul class="entry_tags">
   10071                   <li><a href="#tag_V1">V1</a></li>
   10072               </ul>
   10073             </td>
   10074 
   10075           </tr> <!-- end of entry -->
   10076         
   10077                 
   10078           <tr class="entry" id="dynamic_android.statistics.histogramMode">
   10079             <td class="entry_name">android.<wbr>statistics.<wbr>histogram<wbr>Mode</td>
   10080             <td class="entry_type">
   10081                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10082 
   10083               <span class="entry_type_visibility"> [system as boolean]</span>
   10084 
   10085                 <ul class="entry_type_enum">
   10086                   <li>
   10087                     <span class="entry_type_enum_name">OFF</span>
   10088                   </li>
   10089                   <li>
   10090                     <span class="entry_type_enum_name">ON</span>
   10091                   </li>
   10092                 </ul>
   10093 
   10094             </td> <!-- entry_type -->
   10095 
   10096             <td class="entry_description">
   10097               Operating mode for histogram
   10098           generation
   10099             </td>
   10100 
   10101             <td class="entry_units">
   10102             </td>
   10103 
   10104             <td class="entry_range">
   10105             </td>
   10106 
   10107             <td class="entry_notes">
   10108             </td>
   10109 
   10110             <td class="entry_tags">
   10111               <ul class="entry_tags">
   10112                   <li><a href="#tag_V1">V1</a></li>
   10113               </ul>
   10114             </td>
   10115 
   10116           </tr> <!-- end of entry -->
   10117         
   10118                 
   10119           <tr class="entry" id="dynamic_android.statistics.sharpnessMap">
   10120             <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map</td>
   10121             <td class="entry_type">
   10122                 <span class="entry_type_name">int32</span>
   10123                 <span class="entry_type_container">x</span>
   10124 
   10125                 <span class="entry_type_array">
   10126                   n x m x 3
   10127                 </span>
   10128               <span class="entry_type_visibility"> [system]</span>
   10129                 <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>
   10130 
   10131 
   10132             </td> <!-- entry_type -->
   10133 
   10134             <td class="entry_description">
   10135               A 3-channel sharpness map,<wbr> based on the raw
   10136           sensor data
   10137             </td>
   10138 
   10139             <td class="entry_units">
   10140             </td>
   10141 
   10142             <td class="entry_range">
   10143             </td>
   10144 
   10145             <td class="entry_notes">
   10146               If only a monochrome sharpness map is supported,<wbr>
   10147           all channels should have the same data
   10148             </td>
   10149 
   10150             <td class="entry_tags">
   10151               <ul class="entry_tags">
   10152                   <li><a href="#tag_V1">V1</a></li>
   10153               </ul>
   10154             </td>
   10155 
   10156           </tr> <!-- end of entry -->
   10157         
   10158                 
   10159           <tr class="entry" id="dynamic_android.statistics.sharpnessMapMode">
   10160             <td class="entry_name">android.<wbr>statistics.<wbr>sharpness<wbr>Map<wbr>Mode</td>
   10161             <td class="entry_type">
   10162                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10163 
   10164               <span class="entry_type_visibility"> [system as boolean]</span>
   10165 
   10166                 <ul class="entry_type_enum">
   10167                   <li>
   10168                     <span class="entry_type_enum_name">OFF</span>
   10169                   </li>
   10170                   <li>
   10171                     <span class="entry_type_enum_name">ON</span>
   10172                   </li>
   10173                 </ul>
   10174 
   10175             </td> <!-- entry_type -->
   10176 
   10177             <td class="entry_description">
   10178               Operating mode for sharpness map
   10179           generation
   10180             </td>
   10181 
   10182             <td class="entry_units">
   10183             </td>
   10184 
   10185             <td class="entry_range">
   10186             </td>
   10187 
   10188             <td class="entry_notes">
   10189             </td>
   10190 
   10191             <td class="entry_tags">
   10192               <ul class="entry_tags">
   10193                   <li><a href="#tag_V1">V1</a></li>
   10194               </ul>
   10195             </td>
   10196 
   10197           </tr> <!-- end of entry -->
   10198         
   10199                 
   10200           <tr class="entry" id="dynamic_android.statistics.lensShadingMap">
   10201             <td class="entry_name">android.<wbr>statistics.<wbr>lens<wbr>Shading<wbr>Map</td>
   10202             <td class="entry_type">
   10203                 <span class="entry_type_name">float</span>
   10204                 <span class="entry_type_container">x</span>
   10205 
   10206                 <span class="entry_type_array">
   10207                   4 x n x m
   10208                 </span>
   10209               <span class="entry_type_visibility"> [public]</span>
   10210                 <div class="entry_type_notes">2D array of float gain factors per channel to correct lens shading</div>
   10211 
   10212 
   10213             </td> <!-- entry_type -->
   10214 
   10215             <td class="entry_description">
   10216               A low-resolution map of lens shading,<wbr> per
   10217           color channel
   10218             </td>
   10219 
   10220             <td class="entry_units">
   10221             </td>
   10222 
   10223             <td class="entry_range">
   10224               Each gain factor is >= 1
   10225             </td>
   10226 
   10227             <td class="entry_notes">
   10228               Assume bilinear interpolation of map.<wbr> The least
   10229           shaded section of the image should have a gain factor
   10230           of 1; all other sections should have gains above 1.<wbr>
   10231           the map should be on the order of 30-40 rows,<wbr> and
   10232           must be smaller than 64x64.<wbr>
   10233 <br>
   10234 <br>          When android.<wbr>color<wbr>Correction.<wbr>mode = TRANSFORM_<wbr>MATRIX,<wbr> the map
   10235           must take into account the colorCorrection settings.<wbr>
   10236           
   10237             </td>
   10238 
   10239             <td class="entry_tags">
   10240             </td>
   10241 
   10242           </tr> <!-- end of entry -->
   10243         
   10244                 
   10245           <tr class="entry" id="dynamic_android.statistics.predictedColorGains">
   10246             <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Gains</td>
   10247             <td class="entry_type">
   10248                 <span class="entry_type_name">float</span>
   10249                 <span class="entry_type_container">x</span>
   10250 
   10251                 <span class="entry_type_array">
   10252                   4
   10253                 </span>
   10254               <span class="entry_type_visibility"> [public]</span>
   10255                 <div class="entry_type_notes">A 1D array of floats for 4 color channel gains</div>
   10256 
   10257 
   10258             </td> <!-- entry_type -->
   10259 
   10260             <td class="entry_description">
   10261               The best-fit color channel gains calculated
   10262           by the HAL's statistics units for the current output frame
   10263           
   10264             </td>
   10265 
   10266             <td class="entry_units">
   10267             </td>
   10268 
   10269             <td class="entry_range">
   10270             </td>
   10271 
   10272             <td class="entry_notes">
   10273               
   10274           This may be different than the gains used for this frame,<wbr>
   10275           since statistics processing on data from a new frame
   10276           typically completes after the transform has already been
   10277           applied to that frame.<wbr>
   10278 <br>
   10279 <br>          The 4 channel gains are defined in Bayer domain,<wbr>
   10280           see android.<wbr>color<wbr>Correction.<wbr>gains for details.<wbr>
   10281 <br>
   10282 <br>          This value should always be calculated by the AWB block,<wbr>
   10283           regardless of the android.<wbr>control.<wbr>* current values.<wbr>
   10284           
   10285             </td>
   10286 
   10287             <td class="entry_tags">
   10288             </td>
   10289 
   10290           </tr> <!-- end of entry -->
   10291         
   10292                 
   10293           <tr class="entry" id="dynamic_android.statistics.predictedColorTransform">
   10294             <td class="entry_name">android.<wbr>statistics.<wbr>predicted<wbr>Color<wbr>Transform</td>
   10295             <td class="entry_type">
   10296                 <span class="entry_type_name">rational</span>
   10297                 <span class="entry_type_container">x</span>
   10298 
   10299                 <span class="entry_type_array">
   10300                   3 x 3
   10301                 </span>
   10302               <span class="entry_type_visibility"> [public]</span>
   10303                 <div class="entry_type_notes">3x3 rational matrix in row-major order</div>
   10304 
   10305 
   10306             </td> <!-- entry_type -->
   10307 
   10308             <td class="entry_description">
   10309               The best-fit color transform matrix estimate
   10310           calculated by the HAL's statistics units for the current
   10311           output frame
   10312             </td>
   10313 
   10314             <td class="entry_units">
   10315             </td>
   10316 
   10317             <td class="entry_range">
   10318             </td>
   10319 
   10320             <td class="entry_notes">
   10321               The HAL must provide the estimate from its
   10322           statistics unit on the white balance transforms to use
   10323           for the next frame.<wbr> These are the values the HAL believes
   10324           are the best fit for the current output frame.<wbr> This may
   10325           be different than the transform used for this frame,<wbr> since
   10326           statistics processing on data from a new frame typically
   10327           completes after the transform has already been applied to
   10328           that frame.<wbr>
   10329 <br>
   10330 <br>          These estimates must be provided for all frames,<wbr> even if
   10331           capture settings and color transforms are set by the application.<wbr>
   10332 <br>
   10333 <br>          This value should always be calculated by the AWB block,<wbr>
   10334           regardless of the android.<wbr>control.<wbr>* current values.<wbr>
   10335           
   10336             </td>
   10337 
   10338             <td class="entry_tags">
   10339             </td>
   10340 
   10341           </tr> <!-- end of entry -->
   10342         
   10343                 
   10344           <tr class="entry" id="dynamic_android.statistics.sceneFlicker">
   10345             <td class="entry_name">android.<wbr>statistics.<wbr>scene<wbr>Flicker</td>
   10346             <td class="entry_type">
   10347                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10348 
   10349               <span class="entry_type_visibility"> [public]</span>
   10350 
   10351                 <ul class="entry_type_enum">
   10352                   <li>
   10353                     <span class="entry_type_enum_name">NONE</span>
   10354                   </li>
   10355                   <li>
   10356                     <span class="entry_type_enum_name">50HZ</span>
   10357                   </li>
   10358                   <li>
   10359                     <span class="entry_type_enum_name">60HZ</span>
   10360                   </li>
   10361                 </ul>
   10362 
   10363             </td> <!-- entry_type -->
   10364 
   10365             <td class="entry_description">
   10366               The HAL estimated scene illumination lighting
   10367           frequency
   10368             </td>
   10369 
   10370             <td class="entry_units">
   10371             </td>
   10372 
   10373             <td class="entry_range">
   10374             </td>
   10375 
   10376             <td class="entry_notes">
   10377               Report NONE if there doesn't appear to be flickering
   10378           illumination
   10379             </td>
   10380 
   10381             <td class="entry_tags">
   10382             </td>
   10383 
   10384           </tr> <!-- end of entry -->
   10385         
   10386         
   10387 
   10388       <!-- end of kind -->
   10389       </tbody>
   10390 
   10391   <!-- end of section -->
   10392   <tr><td colspan="7" id="section_tonemap" class="section">tonemap</td></tr>
   10393 
   10394 
   10395       <tr><td colspan="7" class="kind">controls</td></tr>
   10396 
   10397       <thead class="entries_header">
   10398         <tr>
   10399           <th class="th_name">Property Name</th>
   10400           <th class="th_type">Type</th>
   10401           <th class="th_description">Description</th>
   10402           <th class="th_units">Units</th>
   10403           <th class="th_range">Range</th>
   10404           <th class="th_notes">Notes</th>
   10405           <th class="th_tags">Tags</th>
   10406         </tr>
   10407       </thead>
   10408 
   10409       <tbody>
   10410 
   10411         
   10412 
   10413         
   10414 
   10415         
   10416 
   10417         
   10418 
   10419                 
   10420           <tr class="entry" id="controls_android.tonemap.curveBlue">
   10421             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
   10422             <td class="entry_type">
   10423                 <span class="entry_type_name">float</span>
   10424                 <span class="entry_type_container">x</span>
   10425 
   10426                 <span class="entry_type_array">
   10427                   n x 2
   10428                 </span>
   10429               <span class="entry_type_visibility"> [public]</span>
   10430                 <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>
   10431 
   10432 
   10433             </td> <!-- entry_type -->
   10434 
   10435             <td class="entry_description">
   10436               Table mapping blue input values to output
   10437           values
   10438             </td>
   10439 
   10440             <td class="entry_units">
   10441               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10442             </td>
   10443 
   10444             <td class="entry_range">
   10445               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10446             </td>
   10447 
   10448             <td class="entry_notes">
   10449               Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
   10450           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10451 <br>
   10452 <br>          See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
   10453             </td>
   10454 
   10455             <td class="entry_tags">
   10456             </td>
   10457 
   10458           </tr> <!-- end of entry -->
   10459         
   10460                 
   10461           <tr class="entry" id="controls_android.tonemap.curveGreen">
   10462             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
   10463             <td class="entry_type">
   10464                 <span class="entry_type_name">float</span>
   10465                 <span class="entry_type_container">x</span>
   10466 
   10467                 <span class="entry_type_array">
   10468                   n x 2
   10469                 </span>
   10470               <span class="entry_type_visibility"> [public]</span>
   10471                 <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>
   10472 
   10473 
   10474             </td> <!-- entry_type -->
   10475 
   10476             <td class="entry_description">
   10477               Table mapping green input values to output
   10478           values
   10479             </td>
   10480 
   10481             <td class="entry_units">
   10482               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10483             </td>
   10484 
   10485             <td class="entry_range">
   10486               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10487             </td>
   10488 
   10489             <td class="entry_notes">
   10490               Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
   10491           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10492 <br>
   10493 <br>          See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
   10494             </td>
   10495 
   10496             <td class="entry_tags">
   10497             </td>
   10498 
   10499           </tr> <!-- end of entry -->
   10500         
   10501                 
   10502           <tr class="entry" id="controls_android.tonemap.curveRed">
   10503             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
   10504             <td class="entry_type">
   10505                 <span class="entry_type_name">float</span>
   10506                 <span class="entry_type_container">x</span>
   10507 
   10508                 <span class="entry_type_array">
   10509                   n x 2
   10510                 </span>
   10511               <span class="entry_type_visibility"> [public]</span>
   10512                 <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>
   10513 
   10514 
   10515             </td> <!-- entry_type -->
   10516 
   10517             <td class="entry_description">
   10518               Table mapping red input values to output
   10519           values
   10520             </td>
   10521 
   10522             <td class="entry_units">
   10523             </td>
   10524 
   10525             <td class="entry_range">
   10526               0-1 on input and output coordinates.<wbr>
   10527             </td>
   10528 
   10529             <td class="entry_notes">
   10530               Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
   10531           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10532 <br>
   10533 <br>          Since the input and output ranges may vary depending on
   10534           the camera pipeline,<wbr> the input and output pixel values
   10535           are represented by normalized floating-point values
   10536           between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
   10537 <br>
   10538 <br>          The curve should be linearly interpolated between the
   10539           defined points.<wbr> The points will be listed in increasing
   10540           order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
   10541           0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
   10542           for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
   10543           0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
   10544             </td>
   10545 
   10546             <td class="entry_tags">
   10547               <ul class="entry_tags">
   10548                   <li><a href="#tag_DNG">DNG</a></li>
   10549               </ul>
   10550             </td>
   10551 
   10552           </tr> <!-- end of entry -->
   10553         
   10554                 
   10555           <tr class="entry" id="controls_android.tonemap.mode">
   10556             <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
   10557             <td class="entry_type">
   10558                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10559 
   10560               <span class="entry_type_visibility"> [public]</span>
   10561 
   10562                 <ul class="entry_type_enum">
   10563                   <li>
   10564                     <span class="entry_type_enum_name">CONTRAST_CURVE</span>
   10565                     <span class="entry_type_enum_notes">Use the tone mapping curve specified in
   10566             android.<wbr>tonemap.<wbr>curve</span>
   10567                   </li>
   10568                   <li>
   10569                     <span class="entry_type_enum_name">FAST</span>
   10570                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   10571             bayer output</span>
   10572                   </li>
   10573                   <li>
   10574                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   10575                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   10576             quality</span>
   10577                   </li>
   10578                 </ul>
   10579 
   10580             </td> <!-- entry_type -->
   10581 
   10582             <td class="entry_description">
   10583             </td>
   10584 
   10585             <td class="entry_units">
   10586             </td>
   10587 
   10588             <td class="entry_range">
   10589             </td>
   10590 
   10591             <td class="entry_notes">
   10592             </td>
   10593 
   10594             <td class="entry_tags">
   10595             </td>
   10596 
   10597           </tr> <!-- end of entry -->
   10598         
   10599         
   10600 
   10601       <!-- end of kind -->
   10602       </tbody>
   10603       <tr><td colspan="7" class="kind">static</td></tr>
   10604 
   10605       <thead class="entries_header">
   10606         <tr>
   10607           <th class="th_name">Property Name</th>
   10608           <th class="th_type">Type</th>
   10609           <th class="th_description">Description</th>
   10610           <th class="th_units">Units</th>
   10611           <th class="th_range">Range</th>
   10612           <th class="th_notes">Notes</th>
   10613           <th class="th_tags">Tags</th>
   10614         </tr>
   10615       </thead>
   10616 
   10617       <tbody>
   10618 
   10619         
   10620 
   10621         
   10622 
   10623         
   10624 
   10625         
   10626 
   10627                 
   10628           <tr class="entry" id="static_android.tonemap.maxCurvePoints">
   10629             <td class="entry_name">android.<wbr>tonemap.<wbr>max<wbr>Curve<wbr>Points</td>
   10630             <td class="entry_type">
   10631                 <span class="entry_type_name">int32</span>
   10632 
   10633               <span class="entry_type_visibility"> [public]</span>
   10634 
   10635 
   10636             </td> <!-- entry_type -->
   10637 
   10638             <td class="entry_description">
   10639               Maximum number of supported points in the
   10640           tonemap curve
   10641             </td>
   10642 
   10643             <td class="entry_units">
   10644             </td>
   10645 
   10646             <td class="entry_range">
   10647               >= 128
   10648             </td>
   10649 
   10650             <td class="entry_notes">
   10651             </td>
   10652 
   10653             <td class="entry_tags">
   10654             </td>
   10655 
   10656           </tr> <!-- end of entry -->
   10657         
   10658         
   10659 
   10660       <!-- end of kind -->
   10661       </tbody>
   10662       <tr><td colspan="7" class="kind">dynamic</td></tr>
   10663 
   10664       <thead class="entries_header">
   10665         <tr>
   10666           <th class="th_name">Property Name</th>
   10667           <th class="th_type">Type</th>
   10668           <th class="th_description">Description</th>
   10669           <th class="th_units">Units</th>
   10670           <th class="th_range">Range</th>
   10671           <th class="th_notes">Notes</th>
   10672           <th class="th_tags">Tags</th>
   10673         </tr>
   10674       </thead>
   10675 
   10676       <tbody>
   10677 
   10678         
   10679 
   10680         
   10681 
   10682         
   10683 
   10684         
   10685 
   10686                 
   10687           <tr class="entry" id="dynamic_android.tonemap.curveBlue">
   10688             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Blue</td>
   10689             <td class="entry_type">
   10690                 <span class="entry_type_name">float</span>
   10691                 <span class="entry_type_container">x</span>
   10692 
   10693                 <span class="entry_type_array">
   10694                   n x 2
   10695                 </span>
   10696               <span class="entry_type_visibility"> [public]</span>
   10697                 <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>
   10698 
   10699 
   10700             </td> <!-- entry_type -->
   10701 
   10702             <td class="entry_description">
   10703               Table mapping blue input values to output
   10704           values
   10705             </td>
   10706 
   10707             <td class="entry_units">
   10708               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10709             </td>
   10710 
   10711             <td class="entry_range">
   10712               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10713             </td>
   10714 
   10715             <td class="entry_notes">
   10716               Tonemapping /<wbr> contrast /<wbr> gamma curve for the blue
   10717           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10718 <br>
   10719 <br>          See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
   10720             </td>
   10721 
   10722             <td class="entry_tags">
   10723             </td>
   10724 
   10725           </tr> <!-- end of entry -->
   10726         
   10727                 
   10728           <tr class="entry" id="dynamic_android.tonemap.curveGreen">
   10729             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Green</td>
   10730             <td class="entry_type">
   10731                 <span class="entry_type_name">float</span>
   10732                 <span class="entry_type_container">x</span>
   10733 
   10734                 <span class="entry_type_array">
   10735                   n x 2
   10736                 </span>
   10737               <span class="entry_type_visibility"> [public]</span>
   10738                 <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>
   10739 
   10740 
   10741             </td> <!-- entry_type -->
   10742 
   10743             <td class="entry_description">
   10744               Table mapping green input values to output
   10745           values
   10746             </td>
   10747 
   10748             <td class="entry_units">
   10749               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10750             </td>
   10751 
   10752             <td class="entry_range">
   10753               same as android.<wbr>tonemap.<wbr>curve<wbr>Red
   10754             </td>
   10755 
   10756             <td class="entry_notes">
   10757               Tonemapping /<wbr> contrast /<wbr> gamma curve for the green
   10758           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10759 <br>
   10760 <br>          See android.<wbr>tonemap.<wbr>curve<wbr>Red for more details.<wbr>
   10761             </td>
   10762 
   10763             <td class="entry_tags">
   10764             </td>
   10765 
   10766           </tr> <!-- end of entry -->
   10767         
   10768                 
   10769           <tr class="entry" id="dynamic_android.tonemap.curveRed">
   10770             <td class="entry_name">android.<wbr>tonemap.<wbr>curve<wbr>Red</td>
   10771             <td class="entry_type">
   10772                 <span class="entry_type_name">float</span>
   10773                 <span class="entry_type_container">x</span>
   10774 
   10775                 <span class="entry_type_array">
   10776                   n x 2
   10777                 </span>
   10778               <span class="entry_type_visibility"> [public]</span>
   10779                 <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>
   10780 
   10781 
   10782             </td> <!-- entry_type -->
   10783 
   10784             <td class="entry_description">
   10785               Table mapping red input values to output
   10786           values
   10787             </td>
   10788 
   10789             <td class="entry_units">
   10790             </td>
   10791 
   10792             <td class="entry_range">
   10793               0-1 on input and output coordinates.<wbr>
   10794             </td>
   10795 
   10796             <td class="entry_notes">
   10797               Tonemapping /<wbr> contrast /<wbr> gamma curve for the red
   10798           channel,<wbr> to use when android.<wbr>tonemap.<wbr>mode is CONTRAST_<wbr>CURVE.<wbr>
   10799 <br>
   10800 <br>          Since the input and output ranges may vary depending on
   10801           the camera pipeline,<wbr> the input and output pixel values
   10802           are represented by normalized floating-point values
   10803           between 0 and 1,<wbr> with 0 == black and 1 == white.<wbr>
   10804 <br>
   10805 <br>          The curve should be linearly interpolated between the
   10806           defined points.<wbr> The points will be listed in increasing
   10807           order of P_<wbr>IN.<wbr> For example,<wbr> if the array is: [0.<wbr>0,<wbr> 0.<wbr>0,<wbr>
   10808           0.<wbr>3,<wbr> 0.<wbr>5,<wbr> 1.<wbr>0,<wbr> 1.<wbr>0],<wbr> then the input->output mapping
   10809           for a few sample points would be: 0 -> 0,<wbr> 0.<wbr>15 ->
   10810           0.<wbr>25,<wbr> 0.<wbr>3 -> 0.<wbr>5,<wbr> 0.<wbr>5 -> 0.<wbr>64
   10811             </td>
   10812 
   10813             <td class="entry_tags">
   10814               <ul class="entry_tags">
   10815                   <li><a href="#tag_DNG">DNG</a></li>
   10816               </ul>
   10817             </td>
   10818 
   10819           </tr> <!-- end of entry -->
   10820         
   10821                 
   10822           <tr class="entry" id="dynamic_android.tonemap.mode">
   10823             <td class="entry_name">android.<wbr>tonemap.<wbr>mode</td>
   10824             <td class="entry_type">
   10825                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10826 
   10827               <span class="entry_type_visibility"> [public]</span>
   10828 
   10829                 <ul class="entry_type_enum">
   10830                   <li>
   10831                     <span class="entry_type_enum_name">CONTRAST_CURVE</span>
   10832                     <span class="entry_type_enum_notes">Use the tone mapping curve specified in
   10833             android.<wbr>tonemap.<wbr>curve</span>
   10834                   </li>
   10835                   <li>
   10836                     <span class="entry_type_enum_name">FAST</span>
   10837                     <span class="entry_type_enum_notes">Must not slow down frame rate relative to raw
   10838             bayer output</span>
   10839                   </li>
   10840                   <li>
   10841                     <span class="entry_type_enum_name">HIGH_QUALITY</span>
   10842                     <span class="entry_type_enum_notes">Frame rate may be reduced by high
   10843             quality</span>
   10844                   </li>
   10845                 </ul>
   10846 
   10847             </td> <!-- entry_type -->
   10848 
   10849             <td class="entry_description">
   10850             </td>
   10851 
   10852             <td class="entry_units">
   10853             </td>
   10854 
   10855             <td class="entry_range">
   10856             </td>
   10857 
   10858             <td class="entry_notes">
   10859             </td>
   10860 
   10861             <td class="entry_tags">
   10862             </td>
   10863 
   10864           </tr> <!-- end of entry -->
   10865         
   10866         
   10867 
   10868       <!-- end of kind -->
   10869       </tbody>
   10870 
   10871   <!-- end of section -->
   10872   <tr><td colspan="7" id="section_led" class="section">led</td></tr>
   10873 
   10874 
   10875       <tr><td colspan="7" class="kind">controls</td></tr>
   10876 
   10877       <thead class="entries_header">
   10878         <tr>
   10879           <th class="th_name">Property Name</th>
   10880           <th class="th_type">Type</th>
   10881           <th class="th_description">Description</th>
   10882           <th class="th_units">Units</th>
   10883           <th class="th_range">Range</th>
   10884           <th class="th_notes">Notes</th>
   10885           <th class="th_tags">Tags</th>
   10886         </tr>
   10887       </thead>
   10888 
   10889       <tbody>
   10890 
   10891         
   10892 
   10893         
   10894 
   10895         
   10896 
   10897         
   10898 
   10899                 
   10900           <tr class="entry" id="controls_android.led.transmit">
   10901             <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
   10902             <td class="entry_type">
   10903                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10904 
   10905               <span class="entry_type_visibility"> [hidden as boolean]</span>
   10906 
   10907                 <ul class="entry_type_enum">
   10908                   <li>
   10909                     <span class="entry_type_enum_name">OFF</span>
   10910                   </li>
   10911                   <li>
   10912                     <span class="entry_type_enum_name">ON</span>
   10913                   </li>
   10914                 </ul>
   10915 
   10916             </td> <!-- entry_type -->
   10917 
   10918             <td class="entry_description">
   10919               This LED is nominally used to indicate to the user
   10920           that the camera is powered on and may be streaming images back to the
   10921           Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
   10922           disable this when video is processed locally and not transmitted to
   10923           any untrusted applications.<wbr>
   10924 <br>
   10925 <br>          In particular,<wbr> the LED *must* always be on when the data could be
   10926           transmitted off the device.<wbr> The LED *should* always be on whenever
   10927           data is stored locally on the device.<wbr>
   10928 <br>
   10929 <br>          The LED *may* be off if a trusted application is using the data that
   10930           doesn't violate the above rules.<wbr>
   10931           
   10932             </td>
   10933 
   10934             <td class="entry_units">
   10935             </td>
   10936 
   10937             <td class="entry_range">
   10938             </td>
   10939 
   10940             <td class="entry_notes">
   10941             </td>
   10942 
   10943             <td class="entry_tags">
   10944             </td>
   10945 
   10946           </tr> <!-- end of entry -->
   10947         
   10948         
   10949 
   10950       <!-- end of kind -->
   10951       </tbody>
   10952       <tr><td colspan="7" class="kind">dynamic</td></tr>
   10953 
   10954       <thead class="entries_header">
   10955         <tr>
   10956           <th class="th_name">Property Name</th>
   10957           <th class="th_type">Type</th>
   10958           <th class="th_description">Description</th>
   10959           <th class="th_units">Units</th>
   10960           <th class="th_range">Range</th>
   10961           <th class="th_notes">Notes</th>
   10962           <th class="th_tags">Tags</th>
   10963         </tr>
   10964       </thead>
   10965 
   10966       <tbody>
   10967 
   10968         
   10969 
   10970         
   10971 
   10972         
   10973 
   10974         
   10975 
   10976                 
   10977           <tr class="entry" id="dynamic_android.led.transmit">
   10978             <td class="entry_name">android.<wbr>led.<wbr>transmit</td>
   10979             <td class="entry_type">
   10980                 <span class="entry_type_name entry_type_name_enum">byte</span>
   10981 
   10982               <span class="entry_type_visibility"> [hidden as boolean]</span>
   10983 
   10984                 <ul class="entry_type_enum">
   10985                   <li>
   10986                     <span class="entry_type_enum_name">OFF</span>
   10987                   </li>
   10988                   <li>
   10989                     <span class="entry_type_enum_name">ON</span>
   10990                   </li>
   10991                 </ul>
   10992 
   10993             </td> <!-- entry_type -->
   10994 
   10995             <td class="entry_description">
   10996               This LED is nominally used to indicate to the user
   10997           that the camera is powered on and may be streaming images back to the
   10998           Application Processor.<wbr> In certain rare circumstances,<wbr> the OS may
   10999           disable this when video is processed locally and not transmitted to
   11000           any untrusted applications.<wbr>
   11001 <br>
   11002 <br>          In particular,<wbr> the LED *must* always be on when the data could be
   11003           transmitted off the device.<wbr> The LED *should* always be on whenever
   11004           data is stored locally on the device.<wbr>
   11005 <br>
   11006 <br>          The LED *may* be off if a trusted application is using the data that
   11007           doesn't violate the above rules.<wbr>
   11008           
   11009             </td>
   11010 
   11011             <td class="entry_units">
   11012             </td>
   11013 
   11014             <td class="entry_range">
   11015             </td>
   11016 
   11017             <td class="entry_notes">
   11018             </td>
   11019 
   11020             <td class="entry_tags">
   11021             </td>
   11022 
   11023           </tr> <!-- end of entry -->
   11024         
   11025         
   11026 
   11027       <!-- end of kind -->
   11028       </tbody>
   11029       <tr><td colspan="7" class="kind">static</td></tr>
   11030 
   11031       <thead class="entries_header">
   11032         <tr>
   11033           <th class="th_name">Property Name</th>
   11034           <th class="th_type">Type</th>
   11035           <th class="th_description">Description</th>
   11036           <th class="th_units">Units</th>
   11037           <th class="th_range">Range</th>
   11038           <th class="th_notes">Notes</th>
   11039           <th class="th_tags">Tags</th>
   11040         </tr>
   11041       </thead>
   11042 
   11043       <tbody>
   11044 
   11045         
   11046 
   11047         
   11048 
   11049         
   11050 
   11051         
   11052 
   11053                 
   11054           <tr class="entry" id="static_android.led.availableLeds">
   11055             <td class="entry_name">android.<wbr>led.<wbr>available<wbr>Leds</td>
   11056             <td class="entry_type">
   11057                 <span class="entry_type_name entry_type_name_enum">byte</span>
   11058                 <span class="entry_type_container">x</span>
   11059 
   11060                 <span class="entry_type_array">
   11061                   n
   11062                 </span>
   11063               <span class="entry_type_visibility"> [hidden]</span>
   11064 
   11065                 <ul class="entry_type_enum">
   11066                   <li>
   11067                     <span class="entry_type_enum_name">TRANSMIT</span>
   11068                     <span class="entry_type_enum_notes">android.<wbr>led.<wbr>transmit control is used</span>
   11069                   </li>
   11070                 </ul>
   11071 
   11072             </td> <!-- entry_type -->
   11073 
   11074             <td class="entry_description">
   11075               A list of camera LEDs that are available on this system.<wbr>
   11076           
   11077             </td>
   11078 
   11079             <td class="entry_units">
   11080             </td>
   11081 
   11082             <td class="entry_range">
   11083             </td>
   11084 
   11085             <td class="entry_notes">
   11086             </td>
   11087 
   11088             <td class="entry_tags">
   11089             </td>
   11090 
   11091           </tr> <!-- end of entry -->
   11092         
   11093         
   11094 
   11095       <!-- end of kind -->
   11096       </tbody>
   11097 
   11098   <!-- end of section -->
   11099   <tr><td colspan="7" id="section_info" class="section">info</td></tr>
   11100 
   11101 
   11102       <tr><td colspan="7" class="kind">static</td></tr>
   11103 
   11104       <thead class="entries_header">
   11105         <tr>
   11106           <th class="th_name">Property Name</th>
   11107           <th class="th_type">Type</th>
   11108           <th class="th_description">Description</th>
   11109           <th class="th_units">Units</th>
   11110           <th class="th_range">Range</th>
   11111           <th class="th_notes">Notes</th>
   11112           <th class="th_tags">Tags</th>
   11113         </tr>
   11114       </thead>
   11115 
   11116       <tbody>
   11117 
   11118         
   11119 
   11120         
   11121 
   11122         
   11123 
   11124         
   11125 
   11126                 
   11127           <tr class="entry" id="static_android.info.supportedHardwareLevel">
   11128             <td class="entry_name">android.<wbr>info.<wbr>supported<wbr>Hardware<wbr>Level</td>
   11129             <td class="entry_type">
   11130                 <span class="entry_type_name entry_type_name_enum">byte</span>
   11131 
   11132               <span class="entry_type_visibility"> [public]</span>
   11133 
   11134                 <ul class="entry_type_enum">
   11135                   <li>
   11136                     <span class="entry_type_enum_name">LIMITED</span>
   11137                   </li>
   11138                   <li>
   11139                     <span class="entry_type_enum_name">FULL</span>
   11140                   </li>
   11141                 </ul>
   11142 
   11143             </td> <!-- entry_type -->
   11144 
   11145             <td class="entry_description">
   11146               
   11147           The camera 3 HAL device can implement one of two possible
   11148           operational modes; limited and full.<wbr> Full support is
   11149           expected from new higher-end devices.<wbr> Limited mode has
   11150           hardware requirements roughly in line with those for a
   11151           camera HAL device v1 implementation,<wbr> and is expected from
   11152           older or inexpensive devices.<wbr> Full is a strict superset of
   11153           limited,<wbr> and they share the same essential operational flow.<wbr>
   11154 <br>
   11155 <br>          For full details refer to "S3.<wbr> Operational Modes" in camera3.<wbr>h
   11156           
   11157             </td>
   11158 
   11159             <td class="entry_units">
   11160             </td>
   11161 
   11162             <td class="entry_range">
   11163               Optional.<wbr> Default value is LIMITED.<wbr>
   11164             </td>
   11165 
   11166             <td class="entry_notes">
   11167             </td>
   11168 
   11169             <td class="entry_tags">
   11170             </td>
   11171 
   11172           </tr> <!-- end of entry -->
   11173         
   11174         
   11175 
   11176       <!-- end of kind -->
   11177       </tbody>
   11178 
   11179   <!-- end of section -->
   11180   <tr><td colspan="7" id="section_blackLevel" class="section">blackLevel</td></tr>
   11181 
   11182 
   11183       <tr><td colspan="7" class="kind">controls</td></tr>
   11184 
   11185       <thead class="entries_header">
   11186         <tr>
   11187           <th class="th_name">Property Name</th>
   11188           <th class="th_type">Type</th>
   11189           <th class="th_description">Description</th>
   11190           <th class="th_units">Units</th>
   11191           <th class="th_range">Range</th>
   11192           <th class="th_notes">Notes</th>
   11193           <th class="th_tags">Tags</th>
   11194         </tr>
   11195       </thead>
   11196 
   11197       <tbody>
   11198 
   11199         
   11200 
   11201         
   11202 
   11203         
   11204 
   11205         
   11206 
   11207                 
   11208           <tr class="entry" id="controls_android.blackLevel.lock">
   11209             <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
   11210             <td class="entry_type">
   11211                 <span class="entry_type_name entry_type_name_enum">byte</span>
   11212 
   11213               <span class="entry_type_visibility"> [public as boolean]</span>
   11214 
   11215                 <ul class="entry_type_enum">
   11216                   <li>
   11217                     <span class="entry_type_enum_name">OFF</span>
   11218                   </li>
   11219                   <li>
   11220                     <span class="entry_type_enum_name">ON</span>
   11221                   </li>
   11222                 </ul>
   11223 
   11224             </td> <!-- entry_type -->
   11225 
   11226             <td class="entry_description">
   11227                Whether black-level compensation is locked
   11228           to its current values,<wbr> or is free to vary
   11229             </td>
   11230 
   11231             <td class="entry_units">
   11232             </td>
   11233 
   11234             <td class="entry_range">
   11235             </td>
   11236 
   11237             <td class="entry_notes">
   11238               When set to ON,<wbr> the values used for black-level
   11239           compensation must not change until the lock is set to
   11240           OFF
   11241 <br>
   11242 <br>          Since changes to certain capture parameters (such as
   11243           exposure time) may require resetting of black level
   11244           compensation,<wbr> the HAL must report whether setting the
   11245           black level lock was successful in the output result
   11246           metadata.<wbr>
   11247 <br>
   11248 <br>          The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
   11249           If for some reason black level locking is no longer legal (for example,<wbr>
   11250           the analog gain has changed,<wbr> which forces black levels to be
   11251           recalculated),<wbr> then the HAL is free to override this request (and it
   11252           must report 'OFF' when this does happen) until the next time locking
   11253           is legal again.<wbr>
   11254             </td>
   11255 
   11256             <td class="entry_tags">
   11257               <ul class="entry_tags">
   11258                   <li><a href="#tag_HAL2">HAL2</a></li>
   11259               </ul>
   11260             </td>
   11261 
   11262           </tr> <!-- end of entry -->
   11263         
   11264         
   11265 
   11266       <!-- end of kind -->
   11267       </tbody>
   11268       <tr><td colspan="7" class="kind">dynamic</td></tr>
   11269 
   11270       <thead class="entries_header">
   11271         <tr>
   11272           <th class="th_name">Property Name</th>
   11273           <th class="th_type">Type</th>
   11274           <th class="th_description">Description</th>
   11275           <th class="th_units">Units</th>
   11276           <th class="th_range">Range</th>
   11277           <th class="th_notes">Notes</th>
   11278           <th class="th_tags">Tags</th>
   11279         </tr>
   11280       </thead>
   11281 
   11282       <tbody>
   11283 
   11284         
   11285 
   11286         
   11287 
   11288         
   11289 
   11290         
   11291 
   11292                 
   11293           <tr class="entry" id="dynamic_android.blackLevel.lock">
   11294             <td class="entry_name">android.<wbr>black<wbr>Level.<wbr>lock</td>
   11295             <td class="entry_type">
   11296                 <span class="entry_type_name entry_type_name_enum">byte</span>
   11297 
   11298               <span class="entry_type_visibility"> [public as boolean]</span>
   11299 
   11300                 <ul class="entry_type_enum">
   11301                   <li>
   11302                     <span class="entry_type_enum_name">OFF</span>
   11303                   </li>
   11304                   <li>
   11305                     <span class="entry_type_enum_name">ON</span>
   11306                   </li>
   11307                 </ul>
   11308 
   11309             </td> <!-- entry_type -->
   11310 
   11311             <td class="entry_description">
   11312                Whether black-level compensation is locked
   11313           to its current values,<wbr> or is free to vary
   11314             </td>
   11315 
   11316             <td class="entry_units">
   11317             </td>
   11318 
   11319             <td class="entry_range">
   11320             </td>
   11321 
   11322             <td class="entry_notes">
   11323               When set to ON,<wbr> the values used for black-level
   11324           compensation must not change until the lock is set to
   11325           OFF
   11326 <br>
   11327 <br>          Since changes to certain capture parameters (such as
   11328           exposure time) may require resetting of black level
   11329           compensation,<wbr> the HAL must report whether setting the
   11330           black level lock was successful in the output result
   11331           metadata.<wbr>
   11332 <br>
   11333 <br>          The black level locking must happen at the sensor,<wbr> and not at the ISP.<wbr>
   11334           If for some reason black level locking is no longer legal (for example,<wbr>
   11335           the analog gain has changed,<wbr> which forces black levels to be
   11336           recalculated),<wbr> then the HAL is free to override this request (and it
   11337           must report 'OFF' when this does happen) until the next time locking
   11338           is legal again.<wbr>
   11339             </td>
   11340 
   11341             <td class="entry_tags">
   11342               <ul class="entry_tags">
   11343                   <li><a href="#tag_HAL2">HAL2</a></li>
   11344               </ul>
   11345             </td>
   11346 
   11347           </tr> <!-- end of entry -->
   11348         
   11349         
   11350 
   11351       <!-- end of kind -->
   11352       </tbody>
   11353 
   11354   <!-- end of section -->
   11355 <!-- </namespace> -->
   11356   </table>
   11357 
   11358   <div class="tags" id="tag_index">
   11359     <h2>Tags</h2>
   11360     <ul>
   11361       <li id="tag_AWB">AWB - 
   11362         Needed for auto white balance
   11363     
   11364         <ul class="tags_entries">
   11365           <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
   11366         </ul>
   11367       </li> <!-- tag_AWB -->
   11368       <li id="tag_BC">BC - 
   11369         Needed for backwards compatibility with old Java API
   11370     
   11371         <ul class="tags_entries">
   11372           <li><a href="#controls_android.control.aeExposureCompensation">android.control.aeExposureCompensation</a> (controls)</li>
   11373           <li><a href="#controls_android.control.aeLock">android.control.aeLock</a> (controls)</li>
   11374           <li><a href="#controls_android.control.aeMode">android.control.aeMode</a> (controls)</li>
   11375           <li><a href="#controls_android.control.aeRegions">android.control.aeRegions</a> (controls)</li>
   11376           <li><a href="#controls_android.control.aeTargetFpsRange">android.control.aeTargetFpsRange</a> (controls)</li>
   11377           <li><a href="#controls_android.control.aePrecaptureTrigger">android.control.aePrecaptureTrigger</a> (controls)</li>
   11378           <li><a href="#controls_android.control.afMode">android.control.afMode</a> (controls)</li>
   11379           <li><a href="#controls_android.control.afRegions">android.control.afRegions</a> (controls)</li>
   11380           <li><a href="#controls_android.control.afTrigger">android.control.afTrigger</a> (controls)</li>
   11381           <li><a href="#controls_android.control.awbLock">android.control.awbLock</a> (controls)</li>
   11382           <li><a href="#controls_android.control.awbMode">android.control.awbMode</a> (controls)</li>
   11383           <li><a href="#controls_android.control.awbRegions">android.control.awbRegions</a> (controls)</li>
   11384           <li><a href="#controls_android.control.captureIntent">android.control.captureIntent</a> (controls)</li>
   11385           <li><a href="#controls_android.control.effectMode">android.control.effectMode</a> (controls)</li>
   11386           <li><a href="#controls_android.control.mode">android.control.mode</a> (controls)</li>
   11387           <li><a href="#controls_android.control.sceneMode">android.control.sceneMode</a> (controls)</li>
   11388           <li><a href="#controls_android.control.videoStabilizationMode">android.control.videoStabilizationMode</a> (controls)</li>
   11389           <li><a href="#static_android.control.aeCompensationRange">android.control.aeCompensationRange</a> (static)</li>
   11390           <li><a href="#static_android.control.aeCompensationStep">android.control.aeCompensationStep</a> (static)</li>
   11391           <li><a href="#static_android.control.afAvailableModes">android.control.afAvailableModes</a> (static)</li>
   11392           <li><a href="#static_android.control.availableEffects">android.control.availableEffects</a> (static)</li>
   11393           <li><a href="#static_android.control.availableSceneModes">android.control.availableSceneModes</a> (static)</li>
   11394           <li><a href="#static_android.control.availableVideoStabilizationModes">android.control.availableVideoStabilizationModes</a> (static)</li>
   11395           <li><a href="#static_android.control.awbAvailableModes">android.control.awbAvailableModes</a> (static)</li>
   11396           <li><a href="#static_android.control.maxRegions">android.control.maxRegions</a> (static)</li>
   11397           <li><a href="#static_android.control.sceneModeOverrides">android.control.sceneModeOverrides</a> (static)</li>
   11398           <li><a href="#controls_android.flash.mode">android.flash.mode</a> (controls)</li>
   11399           <li><a href="#static_android.flash.info.available">android.flash.info.available</a> (static)</li>
   11400           <li><a href="#controls_android.jpeg.gpsCoordinates">android.jpeg.gpsCoordinates</a> (controls)</li>
   11401           <li><a href="#controls_android.jpeg.gpsProcessingMethod">android.jpeg.gpsProcessingMethod</a> (controls)</li>
   11402           <li><a href="#controls_android.jpeg.gpsTimestamp">android.jpeg.gpsTimestamp</a> (controls)</li>
   11403           <li><a href="#controls_android.jpeg.orientation">android.jpeg.orientation</a> (controls)</li>
   11404           <li><a href="#controls_android.jpeg.quality">android.jpeg.quality</a> (controls)</li>
   11405           <li><a href="#controls_android.jpeg.thumbnailQuality">android.jpeg.thumbnailQuality</a> (controls)</li>
   11406           <li><a href="#controls_android.jpeg.thumbnailSize">android.jpeg.thumbnailSize</a> (controls)</li>
   11407           <li><a href="#static_android.jpeg.availableThumbnailSizes">android.jpeg.availableThumbnailSizes</a> (static)</li>
   11408           <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
   11409           <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
   11410           <li><a href="#static_android.lens.info.hyperfocalDistance">android.lens.info.hyperfocalDistance</a> (static)</li>
   11411           <li><a href="#dynamic_android.lens.focusRange">android.lens.focusRange</a> (dynamic)</li>
   11412           <li><a href="#static_android.request.maxNumOutputStreams">android.request.maxNumOutputStreams</a> (static)</li>
   11413           <li><a href="#controls_android.scaler.cropRegion">android.scaler.cropRegion</a> (controls)</li>
   11414           <li><a href="#static_android.scaler.availableFormats">android.scaler.availableFormats</a> (static)</li>
   11415           <li><a href="#static_android.scaler.availableJpegMinDurations">android.scaler.availableJpegMinDurations</a> (static)</li>
   11416           <li><a href="#static_android.scaler.availableJpegSizes">android.scaler.availableJpegSizes</a> (static)</li>
   11417           <li><a href="#static_android.scaler.availableMaxDigitalZoom">android.scaler.availableMaxDigitalZoom</a> (static)</li>
   11418           <li><a href="#static_android.scaler.availableProcessedMinDurations">android.scaler.availableProcessedMinDurations</a> (static)</li>
   11419           <li><a href="#static_android.scaler.availableProcessedSizes">android.scaler.availableProcessedSizes</a> (static)</li>
   11420           <li><a href="#static_android.scaler.availableRawMinDurations">android.scaler.availableRawMinDurations</a> (static)</li>
   11421           <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
   11422           <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
   11423           <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
   11424           <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
   11425           <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
   11426           <li><a href="#static_android.sensor.orientation">android.sensor.orientation</a> (static)</li>
   11427           <li><a href="#dynamic_android.sensor.timestamp">android.sensor.timestamp</a> (dynamic)</li>
   11428           <li><a href="#controls_android.statistics.faceDetectMode">android.statistics.faceDetectMode</a> (controls)</li>
   11429           <li><a href="#dynamic_android.statistics.faceIds">android.statistics.faceIds</a> (dynamic)</li>
   11430           <li><a href="#dynamic_android.statistics.faceLandmarks">android.statistics.faceLandmarks</a> (dynamic)</li>
   11431           <li><a href="#dynamic_android.statistics.faceRectangles">android.statistics.faceRectangles</a> (dynamic)</li>
   11432           <li><a href="#dynamic_android.statistics.faceScores">android.statistics.faceScores</a> (dynamic)</li>
   11433           <li><a href="#dynamic_android.lens.focalLength">android.lens.focalLength</a> (dynamic)</li>
   11434           <li><a href="#dynamic_android.lens.focusDistance">android.lens.focusDistance</a> (dynamic)</li>
   11435         </ul>
   11436       </li> <!-- tag_BC -->
   11437       <li id="tag_V1">V1 - 
   11438         New features for first camera 2 release (API1)
   11439     
   11440         <ul class="tags_entries">
   11441           <li><a href="#controls_android.demosaic.mode">android.demosaic.mode</a> (controls)</li>
   11442           <li><a href="#controls_android.flash.firingPower">android.flash.firingPower</a> (controls)</li>
   11443           <li><a href="#controls_android.flash.firingTime">android.flash.firingTime</a> (controls)</li>
   11444           <li><a href="#static_android.flash.info.chargeDuration">android.flash.info.chargeDuration</a> (static)</li>
   11445           <li><a href="#controls_android.hotPixel.mode">android.hotPixel.mode</a> (controls)</li>
   11446           <li><a href="#controls_android.lens.aperture">android.lens.aperture</a> (controls)</li>
   11447           <li><a href="#controls_android.lens.filterDensity">android.lens.filterDensity</a> (controls)</li>
   11448           <li><a href="#controls_android.lens.focalLength">android.lens.focalLength</a> (controls)</li>
   11449           <li><a href="#controls_android.lens.focusDistance">android.lens.focusDistance</a> (controls)</li>
   11450           <li><a href="#controls_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (controls)</li>
   11451           <li><a href="#static_android.lens.info.availableApertures">android.lens.info.availableApertures</a> (static)</li>
   11452           <li><a href="#static_android.lens.info.availableFilterDensities">android.lens.info.availableFilterDensities</a> (static)</li>
   11453           <li><a href="#static_android.lens.info.availableFocalLengths">android.lens.info.availableFocalLengths</a> (static)</li>
   11454           <li><a href="#static_android.lens.info.availableOpticalStabilization">android.lens.info.availableOpticalStabilization</a> (static)</li>
   11455           <li><a href="#static_android.lens.info.geometricCorrectionMapSize">android.lens.info.geometricCorrectionMapSize</a> (static)</li>
   11456           <li><a href="#static_android.lens.info.minimumFocusDistance">android.lens.info.minimumFocusDistance</a> (static)</li>
   11457           <li><a href="#static_android.lens.info.shadingMapSize">android.lens.info.shadingMapSize</a> (static)</li>
   11458           <li><a href="#static_android.lens.position">android.lens.position</a> (static)</li>
   11459           <li><a href="#dynamic_android.lens.state">android.lens.state</a> (dynamic)</li>
   11460           <li><a href="#controls_android.noiseReduction.mode">android.noiseReduction.mode</a> (controls)</li>
   11461           <li><a href="#controls_android.request.id">android.request.id</a> (controls)</li>
   11462           <li><a href="#controls_android.sensor.exposureTime">android.sensor.exposureTime</a> (controls)</li>
   11463           <li><a href="#controls_android.sensor.frameDuration">android.sensor.frameDuration</a> (controls)</li>
   11464           <li><a href="#controls_android.sensor.sensitivity">android.sensor.sensitivity</a> (controls)</li>
   11465           <li><a href="#static_android.sensor.info.sensitivityRange">android.sensor.info.sensitivityRange</a> (static)</li>
   11466           <li><a href="#static_android.sensor.info.exposureTimeRange">android.sensor.info.exposureTimeRange</a> (static)</li>
   11467           <li><a href="#static_android.sensor.info.maxFrameDuration">android.sensor.info.maxFrameDuration</a> (static)</li>
   11468           <li><a href="#static_android.sensor.info.physicalSize">android.sensor.info.physicalSize</a> (static)</li>
   11469           <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
   11470           <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
   11471           <li><a href="#static_android.sensor.noiseModelCoefficients">android.sensor.noiseModelCoefficients</a> (static)</li>
   11472           <li><a href="#controls_android.statistics.histogramMode">android.statistics.histogramMode</a> (controls)</li>
   11473           <li><a href="#controls_android.statistics.sharpnessMapMode">android.statistics.sharpnessMapMode</a> (controls)</li>
   11474           <li><a href="#dynamic_android.statistics.histogram">android.statistics.histogram</a> (dynamic)</li>
   11475           <li><a href="#dynamic_android.statistics.sharpnessMap">android.statistics.sharpnessMap</a> (dynamic)</li>
   11476           <li><a href="#dynamic_android.hotPixel.mode">android.hotPixel.mode</a> (dynamic)</li>
   11477           <li><a href="#dynamic_android.lens.aperture">android.lens.aperture</a> (dynamic)</li>
   11478           <li><a href="#dynamic_android.lens.filterDensity">android.lens.filterDensity</a> (dynamic)</li>
   11479           <li><a href="#dynamic_android.lens.opticalStabilizationMode">android.lens.opticalStabilizationMode</a> (dynamic)</li>
   11480         </ul>
   11481       </li> <!-- tag_V1 -->
   11482       <li id="tag_ADV">ADV - None
   11483         <ul class="tags_entries">
   11484           <li><a href="#static_android.flash.colorTemperature">android.flash.colorTemperature</a> (static)</li>
   11485           <li><a href="#static_android.flash.maxEnergy">android.flash.maxEnergy</a> (static)</li>
   11486           <li><a href="#controls_android.geometric.strength">android.geometric.strength</a> (controls)</li>
   11487           <li><a href="#static_android.hotPixel.info.map">android.hotPixel.info.map</a> (static)</li>
   11488           <li><a href="#static_android.lens.opticalAxisAngle">android.lens.opticalAxisAngle</a> (static)</li>
   11489           <li><a href="#controls_android.shading.strength">android.shading.strength</a> (controls)</li>
   11490         </ul>
   11491       </li> <!-- tag_ADV -->
   11492       <li id="tag_DNG">DNG - 
   11493         Needed for DNG file support
   11494     
   11495         <ul class="tags_entries">
   11496           <li><a href="#static_android.lens.info.geometricCorrectionMap">android.lens.info.geometricCorrectionMap</a> (static)</li>
   11497           <li><a href="#static_android.sensor.info.activeArraySize">android.sensor.info.activeArraySize</a> (static)</li>
   11498           <li><a href="#static_android.sensor.info.colorFilterArrangement">android.sensor.info.colorFilterArrangement</a> (static)</li>
   11499           <li><a href="#static_android.sensor.info.pixelArraySize">android.sensor.info.pixelArraySize</a> (static)</li>
   11500           <li><a href="#static_android.sensor.info.whiteLevel">android.sensor.info.whiteLevel</a> (static)</li>
   11501           <li><a href="#static_android.sensor.blackLevelPattern">android.sensor.blackLevelPattern</a> (static)</li>
   11502           <li><a href="#static_android.sensor.calibrationTransform1">android.sensor.calibrationTransform1</a> (static)</li>
   11503           <li><a href="#static_android.sensor.calibrationTransform2">android.sensor.calibrationTransform2</a> (static)</li>
   11504           <li><a href="#static_android.sensor.colorTransform1">android.sensor.colorTransform1</a> (static)</li>
   11505           <li><a href="#static_android.sensor.colorTransform2">android.sensor.colorTransform2</a> (static)</li>
   11506           <li><a href="#static_android.sensor.forwardMatrix1">android.sensor.forwardMatrix1</a> (static)</li>
   11507           <li><a href="#static_android.sensor.forwardMatrix2">android.sensor.forwardMatrix2</a> (static)</li>
   11508           <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
   11509           <li><a href="#controls_android.tonemap.curveRed">android.tonemap.curveRed</a> (controls)</li>
   11510         </ul>
   11511       </li> <!-- tag_DNG -->
   11512       <li id="tag_EXIF">EXIF - None
   11513         <ul class="tags_entries">
   11514           <li><a href="#static_android.sensor.referenceIlluminant1">android.sensor.referenceIlluminant1</a> (static)</li>
   11515         </ul>
   11516       </li> <!-- tag_EXIF -->
   11517       <li id="tag_HAL2">HAL2 - 
   11518         Entry is only used by camera device HAL 2.x
   11519     
   11520         <ul class="tags_entries">
   11521           <li><a href="#controls_android.request.inputStreams">android.request.inputStreams</a> (controls)</li>
   11522           <li><a href="#controls_android.request.outputStreams">android.request.outputStreams</a> (controls)</li>
   11523           <li><a href="#controls_android.request.type">android.request.type</a> (controls)</li>
   11524           <li><a href="#controls_android.blackLevel.lock">android.blackLevel.lock</a> (controls)</li>
   11525         </ul>
   11526       </li> <!-- tag_HAL2 -->
   11527       <li id="tag_FULL">FULL - 
   11528         Entry is required for full hardware level devices, and optional for other hardware levels
   11529     
   11530         <ul class="tags_entries">
   11531           <li><a href="#static_android.sensor.baseGainFactor">android.sensor.baseGainFactor</a> (static)</li>
   11532           <li><a href="#static_android.sensor.maxAnalogSensitivity">android.sensor.maxAnalogSensitivity</a> (static)</li>
   11533           <li><a href="#dynamic_android.sensor.temperature">android.sensor.temperature</a> (dynamic)</li>
   11534         </ul>
   11535       </li> <!-- tag_FULL -->
   11536     </ul>
   11537   </div>
   11538 
   11539   [ <a href="#">top</a> ]
   11540 
   11541 </body>
   11542 </html>
   11543