5.        AF state machines

 

mode = AF_MODE_OFF or AF_MODE_EDOF   
StateTransformation causeNew stateNotes
INACTIVE  AF is disabled
mode = AF_MODE_AUTO or AF_MODE_MACRO   
StateTransformation causeNew stateNotes
INACTIVEAF_TRIGGERACTIVE_SCANStart AF sweep      Lens now moving
ACTIVE_SCANAF sweep doneFOCUSED_LOCKEDIf AF successful Lens now locked
ACTIVE_SCANAF sweep doneNOT_FOCUSED_LOCKEDIf AF successful      Lens now locked
ACTIVE_SCANAF_CANCELINACTIVECancel/reset AF      Lens now locked
FOCUSED_LOCKEDAF_CANCELINACTIVECancel/reset AF
FOCUSED_LOCKEDAF_TRIGGERACTIVE_SCANStart new sweep      Lens now moving
NOT_FOCUSED_LOCKEDAF_CANCELINACTIVECancel/reset AF
NOT_FOCUSED_LOCKEDAF_TRIGGERACTIVE_SCANStart new sweep      Lens now moving
All statesmode changeINACTIVE 
mode = AF_MODE_CONTINUOUS_VIDEO   
StateTransformation causeNew stateNotes
INACTIVEHAL initiates new scanPASSIVE_SCANStart AF sweep      Lens now moving
INACTIVEAF_TRIGGERNOT_FOCUSED_LOCKEDAF state query       Lens now locked
PASSIVE_SCANHAL completes current scanPASSIVE_FOCUSEDEnd AF scan      Lens now locked
PASSIVE_SCANAF_TRIGGERFOCUSED_LOCKEDImmediate transformation      if focus is good      Lens now locked
PASSIVE_SCANAF_TRIGGERNOT_FOCUSED_LOCKEDImmediate transformation      if focus is bad      Lens now locked
PASSIVE_SCANAF_CANCELINACTIVEReset lens position      Lens now locked
PASSIVE_FOCUSEDHAL initiates new scanPASSIVE_SCANStart AF scan      Lens now moving
PASSIVE_FOCUSEDAF_TRIGGERFOCUSED_LOCKEDImmediate transformation      if focus is good      Lens now locked
PASSIVE_FOCUSEDAF_TRIGGERNOT_FOCUSED_LOCKEDImmediate transformation      if focus is bad      Lens now locked
FOCUSED_LOCKEDAF_TRIGGERFOCUSED_LOCKEDNo effect
FOCUSED_LOCKEDAF_CANCELINACTIVERestart AF scan
NOT_FOCUSED_LOCKEDAF_TRIGGERNOT_FOCUSED_LOCKEDNo effect
NOT_FOCUSED_LOCKEDAF_CANCELINACTIVERestart AF scan
mode = AF_MODE_CONTINUOUS_PICTURE   
StateTransformation causeNew stateNotes
INACTIVEHAL initiates new scanPASSIVE_SCANStart AF scan      Lens now moving
INACTIVEAF_TRIGGERNOT_FOCUSED_LOCKEDAF state query      Lens now locked
PASSIVE_SCANHAL completes current scanPASSIVE_FOCUSEDEnd AF scan      Lens now locked
PASSIVE_SCANAF_TRIGGERFOCUSED_LOCKEDEventual transformation once focus good      Lens now locked
PASSIVE_SCANAF_TRIGGERNOT_FOCUSED_LOCKEDEventual transformation if cannot focus      Lens now locked
PASSIVE_SCANAF_CANCELINACTIVEReset lens position      Lens now locked
PASSIVE_FOCUSEDHAL initiates new scanPASSIVE_SCANStart AF scan      Lens now moving
PASSIVE_FOCUSEDAF_TRIGGERFOCUSED_LOCKEDImmediate transformation if focus is good      Lens now locked
PASSIVE_FOCUSEDAF_TRIGGERNOT_FOCUSED_LOCKEDImmediate transformation if focus is bad      Lens now locked
FOCUSED_LOCKEDAF_TRIGGERFOCUSED_LOCKEDNo effect
FOCUSED_LOCKEDAF_CANCELINACTIVERestart AF scan
NOT_FOCUSED_LOCKEDAF_TRIGGERNOT_FOCUSED_LOCKEDNo effect
NOT_FOCUSED_LOCKEDAF_CANCELINACTIVERestart AF scan

6.        AE and AWB state machines

AEAWB的状态机基本上是完全相同的。AE有额外的FLASH_REQUIREDPRECAPTURE状态。所以下面行中涉及这两个状态时,AWB状态机忽略之。

  

mode = AE_MODE_OFF / AWB mode not AUTO   
StateTransformation causeNew stateNotes
INACTIVE  AE/AWB disabled
mode = AE_MODE_ON_* / AWB_MODE_AUTO   
StateTransformation causeNew stateNotes
INACTIVEHAL initiates AE/AWB scanSEARCHING 
INACTIVEAE/AWB_LOCK onLOCKEDValues locked
SEARCHINGHAL finishes AE/AWB scanCONVERGEDGood values, not changing
SEARCHINGHAL finishes AE scanFLASH_REQUIREDConverged but too dark without flash
SEARCHINGAE/AWB_LOCK onLOCKEDValues locked
CONVERGEDHAL initiates AE/AWB scanSEARCHINGValues locked
CONVERGEDAE/AWB_LOCK onLOCKEDValues locked
FLASH_REQUIREDHAL initiates AE/AWB scanSEARCHINGValues locked
FLASH_REQUIREDAE/AWB_LOCK onLOCKEDValues locked
LOCKEDAE/AWB_LOCK offSEARCHINGValues not good after unlock
LOCKEDAE/AWB_LOCK offCONVERGEDValues good after unlock
LOCKEDAE_LOCK offFLASH_REQUIREDExposure good, but too dark
All AE statesPRECAPTURE_STARTPRECAPTUREStart precapture sequence
PRECAPTURESequence done, AE_LOCK offCONVERGEDReady for high-quality capture
PRECAPTURESequence done, AE_LOCK onLOCKEDReady for high-quality capture

7.        Enabling manual control

 

在配置3A模块中所涉及的一些控制,允许application直接控制。

对于每个请求,HAL层负责3A控制的模块会检查3A控制字段的状态。如果有3A事例使能,这些事例可能会重置该事例相关的控制变量,重置的值会放置于此次捕获的结果元数据中。例如,如果在一个请求中自动曝光使能,HAL层会重置这个请求中的曝光值,增益和帧周期字段(和潜在的闪光灯字段,依赖于AE模式)。相关控制如下:

Control nameUnitNotes
android.control.modeenum: OFF, AUTO, USE_SCENE_MODEHigh-level 3A control. When set to OFF, all 3A control by the HAL is disabled. The application must set the fields for capture parameters itself.      When set to AUTO, the individual algorithm controls in android.control.* are in effect, such as android.control.afMode.      When set to USE_SCENE_MODE, the individual controls in android.control.* are mostly disabled, and the HAL implements one of the scene mode settings (such as ACTION, SUNSET, or PARTY) as it wishes.
android.control.afModeenumOFF means manual control of lens focusing through android.lens.focusDistance.
android.control.aeModeenumOFF means manual control of exposure/gain/frame duration through android.sensor.exposureTime / .sensitivity / .frameDuration
android.control.awbModeenumOFF means manual control of white balance.

 (全文完)

https://source.android.com/devices/camera/camera3_3Amodes.html#af-state

更多相关文章

  1. 用SlidingDrawer实现类似android状态栏下拉上拉效果!
  2. Wifi广播状态
  3. Android获取设备状态栏status bar高度的正确姿势
  4. 判断Android的WIFI与GPS状态,并引导用户前去开启GPS与WIFI设置
  5. Android UI 之自定义标题栏 + 沉浸式状态栏
  6. Android中 ToggleButton【状态切换按钮】简介
  7. android 状态栏透明,源码修改教程
  8. Android Q 下拉状态栏快捷开关解析

随机推荐

  1. Qt 5.7.0 (32 bit) 配置 Android(安卓)环
  2. Android(安卓)后台发邮件
  3. ScrollView中添加一个android:fillViewpo
  4. Android禁止横屏竖屏切换
  5. 2011.08.15——— android audioManager
  6. 去掉Android(安卓)app上的Title Bar
  7. mac Android(安卓)studio3.2版本安装+环
  8. android 通话记录的查询与删除
  9. 【Android】解析Paint类中MaskFilter的使
  10. Android(安卓)代码质量工具集成与应用