RequestThread

Thread for managing capture request submission to HAL device


1. waiting next batch of requests:

CaptureRequest: From App to framework
cemara3_capture_request: camera service sent to HAL


2. prepareHalRequests()

该函数里最麻烦的是获得getBuffer


HAL call into framework: processCaptureResult

camera3_capture_result数据结构:



这里最麻烦的是 returnOutputBuffers:

把fill后的buffer和consumer关联


接收mResultSignal回调java层传入的onResultAvailable函数

processCaptureResult会发送mResultSignal触发这里


Notify的处理过程

Notify的处理除了调用listener的notify还设置了time用于processCaptureResult


使怎样触发调用的sProcessCaptureResult?

在camera service 和hidl层有2个地方有sProcessCaptureResult的定义和实现是不同层实现的callback:

hidl层的sProcessCaptureResultf调用service 层的 sProcessCaptureResult进而调用到java层接口onResultReceived



hidl层的callback是怎样被调到的?

从本地实现调用到传入的回调函数







更多相关文章

  1. Android(安卓)7.0之后无摄像头调用闪关灯
  2. Android客户端WebService访问接口(Ksoap2Android调用.net服务端)
  3. Android(安卓)Audio代码分析14 - testPlaybackHeadPositionIncre
  4. android学习之EditText需要点击两次触发onclick问题解决
  5. Android如何调用webservice 以及错误解决汇总
  6. Android之SAX解析笔记
  7. Android(安卓)6.0+ 需要在运行时请求的权限
  8. android widget跳转至系统时间界面
  9. init.rc 中on propert: 触发无效

随机推荐

  1. Android adb常见问题
  2. Android Client 与 C# Server 的Socket通
  3. android 8.1 vts环境和测试
  4. android scrollview 相关
  5. 中国Android大牛
  6. Android实现蒙版弹出框效果
  7. sencha touch中处理Android返回按钮事件
  8. 关于android 全景开发
  9. Android获取屏幕的高度和宽度
  10. android adb 源码框架分析(1 系统)