Camera Flash打闪流程梳理
Flash打闪的条件有两个一个是AE_Mode 一个是Flash Mode两个参数决定Flash打闪的过程。
Flash mode有四个状态 AUTO OFF ON TORCH
1 AUTO 模式是在AE状态满足RequireFlash 状态时,在Capture请求过程中会进行打闪。Flash Mode 为Flash_Mode_SINGLE
,对应的AE_MODE为ON_AUTO_Flash
2 ON 状态时拍照时就会打闪,需要才Capture请求中代码Flash Mode参数,Flash Mode 为Flash_Mode SINGLE 对应下发的AE_Mode为ALWALWS_Flash
3 OFF为关闭闪光灯状态,capture请求时不做打闪.Flash Mode 为Flash_Mode OFF,对应的AE状态为MODE_ON 即可。
4 TORCH 状态的Flash_Mode 为Mode_TORCH.

Flash 需要打闪的流程
预拍照(预闪)-AF 收敛-Capture请求 这应一个过程
预拍照参数说明:需要下AE_TRIGGER 参数,参数value 为Start。Flash参数,不同的Flash 条件对应上面4个模式。
1预拍照结束的判定条件为AE状态返回PEPCAPTURE状态,当该状态返回即AETRIGGER结束,预闪结束。该流程结束后才可进行下一次的Capture请求动作。
2 下一步的Capture请求动作可以做AF的TRIGGER,即AF的收敛过程,当AF状态达到完成的几种状态后即可,进行主拍照流程。该流程不做Flash_Mode 参数的下发。
3 主拍照过程需要再次下发FLASH_MODE,该参数下发后再Capture请求过程会进行主闪的打闪过程。
4 拍照结束后需要释放AE AF的状态,从而保证下次拍照AF AE状态正常。
释放过程还是通过Capture请求过程完成,主要设定AE/AF TRIGGER的状态为CANCEL状态,即可取消上一次的TRIGGER过程。
取消TRIGGER过程后就可以进行预览参数的回复,即做一次预览的请求。
5 预览请求过程只要保持之前的预览参数,AE/AFTRIGGER的状态置为IDLE就可完成整个Flash拍照流程。

启用闪光灯原理分析:
当lux_index 值超过wled_trigger_idx参数值时将使用LED闪光灯。会有2次闪光,第一次是预览(聚光)模式,第二次是拍摄(闪光)模式。
启用自动闪光后,聚光模式(少量LED电流)照射目标以计算完全闪光模式的AE和AF。在部分版本中wled trigger代替wled_trigger_index,有一对trigger start lux index 和led trigger end lux index.增大wled trigger index参数的值,可以在更暗的场景中触发LEd闪光灯,减少该值,可以在更亮的场景中触发LED闪光灯。
确定预闪光与主闪光的驱动电流,这些值均可从闪光灯驱动程序代码中获取。计算驱动电流比率为预闪光灯电流/主闪光灯电流。然后将确定的比率降低约30%作为Flux Hi的初始估算值。目前Android软件仅支持Flux Hi,Flux Med和Flux Low不要调试。保持AEC Preview Flux 始终为1。如果快照曝光过度,增大Flux Hi,如果曝光不足,减小Flux Hi。

Camera2 APP Flash 打闪流程及原理分析相关推荐

  1. 支付宝app支付java后台流程、原理分析(含nei wang chuan tou)

    java版支付宝app支付流程及原理分析 本实例是基于springmvc框架编写      一.流程步骤          1.执行流程            当手机端app(就是你公司开发的app) ...

  2. ssm框架搭建流程及原理分析

    这几天自己想搭建个ssm框架玩一下,有些东西长时间不玩都给忘了,所以自己把整个流程整理了一下,只要跟着步骤,就能顺利完成ssm框架的搭建. 一.搭建步骤: 1.整理jar包      2.对于一个we ...

  3. 安卓获取APP对应的Android id的原理分析

    android_id 的生成原理是由系统生成的随机数,并与应用 app 签名,经过 HmacSHA256 算法生成的: 从 android 8 以后开始就是随机的了,每个应用获取到的简要步骤: 获取的 ...

  4. 【深入浅出Spring原理及实战】「技术原理」Spring Security的核心功能和加载运行流程的原理分析

    SpringSecurity的架构总览 Spring Security的简介说明 Spring Security对认证.授权和常见漏洞保护提供了全方位支持.使用的版本为:Spring Security ...

  5. 网站访问流程及原理分析

    前言: (1).当用户在浏览器中输入www.baidu.com. (2).点击回车. (3).网页跳转到百度首页. 说到这个步骤. 大部分人都会.     但是这后面究竟经历了哪些流程呢? 尝试思考一 ...

  6. 算法系列之赫夫曼树的精解【构造流程及原理分析】

    赫夫曼树又称为最优树.最优二叉树 赫夫曼树百度百科 https://baike.baidu.com/item/%E5%93%88%E5%A4%AB%E6%9B%BC%E6%A0%91/2305769? ...

  7. tensorflow: deep_dream代码及原理分析

    deep_dream: tensorflow_inception_graph.pb 下载地址:https://storage.googleapis.com/download.tensorflow.or ...

  8. 第37讲 Android Camera2 API 拍照打闪实战

    本讲是Android Camera专题系列的第37讲,我们介绍Android Camera2 API专题的拍照打闪实战,包括如下内容: 设置不同的Flash模式 拍照打闪流程 视频在线观看: 极客笔记 ...

  9. 两个简单的Demo示例向读者展示Flash和ASP.NET交互原理以及过程

    ASP.NET与FLASH交互学习了ASP.NET的基础知识之后,终于等到学习交互的时候了.请大家和我一起来进行让人激动的交互吧!本章我将用两个简单的Demo示例向读者展示Flash和ASP.NET交 ...

最新文章

  1. C#综合揭秘——Entity Framework 并发处理详解
  2. 九大网络安全失误,需要注意
  3. 收藏!PyTorch常用代码段合集
  4. 撬开骁龙8一看,满满都是顶会论文
  5. ZendStudio快捷键
  6. POJ-3273(二分)
  7. 报表开发导出各种格式文件的API
  8. Maven依赖下载速度慢,不用怕,这么搞快了飞起
  9. linux怎么做ppapi工具,如何在Linux上构建PPAPI插件?
  10. linux vi脚本,用VIM编写脚本
  11. Canon iC MF8350Cdn打印机驱动安装,解决内存不能为written问题
  12. 【centos】快速截图设置
  13. IDEA中修改Maven的项目名称
  14. 四川一度智信:电商平台商品关键词优化技巧
  15. springboot日志配置logback-spring.xml
  16. 广告联盟的实现过程(一)
  17. 微信支付签名失败(几种解决方案)
  18. 《机器学习》周志华——勘误表
  19. .metadata\.plugins\org.eclipse.wst.server.core
  20. android 腾讯广告接入,cocos2dx 3.x android studio 添加广点通广告

热门文章

  1. 区块链2.0以太坊漫谈(3)
  2. 如何防范恶意网站(转)
  3. 打开计算机网络自动连接,电脑网络怎么自动连接
  4. 浏览器弹出“www.osint.com”并且导航到毒霸问题解决
  5. superset安装踩坑过程总结
  6. 改善网站安全性的5种方法
  7. CSPJ2019T4(加工零件)题解
  8. DMS应用性能管理案例分析(二)
  9. SpringBoot+Vue实现前后端分离的教务评教系统
  10. 淘宝私域流量有哪些?怎么获取淘宝私域流量?