android camera(hal)
来源:互联网 发布:出试卷软件 编辑:程序博客网 时间:2024/05/01 23:46
android camera有两个版本。
相对于版本一, 版本二在service层增加了streamprocessor/captureqeue. 而版本一的service直接调用hal层的camera接口。这样, 不少工作在hal层处理。
ti pandaboard的camera的hal层目前支持版本一。可支持OMX和V4L2 camera driver. OMX的camera支持较丰富的功能。V4L2的功能就比较简单。也就preview了。
V4L2的数据流:
ANativeWindow由client的surface提供, 封装成preview_stream_ops_t。CameraHal startPreview的时候, 会调用ANativeWindow的dequeuebuffer得到bufferhandler. 并且调用adapter的usebuffers将V4L2的buffer跟ANativeWindw的buffer用map对照起来。然后hal的preview. 这时queue v4l2的buffers, stream on v4l2. 并启动PreviewThread线程。 这个线程dequeue buffer从v4l2, 并拷贝捕捉的图像到对应map的ANativeWindow的buffer, 调用sendFrameToSubscribers的callback(就是ANativeWindowDisplayAdapter::frameCallbackRelay, 可查看frameprovider知道callback如何注册的)。这个callback会调用ANativeWindow的queuebuffer将buffer递交给surfaceflinger, 并且put一个msg触发ANativeWindowDisplayAdapter::displayThread线程调用handleFrameReturn去dequeue ANativeWindow buffer, 同时调用V4LCameraAdapter::fillThisBuffer将ANativeWindow buffer对应的v4l2的buffer queue给v4l2驱动。这样这个V4L2的camera的preview就转动起来了。
OMX的, 还有版本二的还要继续调查。
- android camera HAL
- Android Camera HAL浅析
- Android Camera HAL浅析
- android camera HAL
- Android Camera HAL浅析
- android camera(hal)
- Android Camera HAL浅析
- android camera hal(omap)
- Android Camera HAL浅析
- Android Camera HAL浅析
- Android Camera HAL设计初步
- Android Camera HAL设计初步
- Android Camera HAL设计初步
- Android Camera HAL设计初步
- Android Camera HAL设计初步
- Android Camera HAL设计初步
- Android Camera的HAL接口
- Android camera HAL四个callback
- jQuery UI:TypeError: elem[type] is not a function
- mfc IP控件的使用
- c#异步回调方法
- 编写网络程序应该注意的几个问题
- highcharts图例内容过长
- android camera(hal)
- 根据一个字段录入值带出另一个字段值时,有空值的C#.NET处理
- RVDS4.0下 RVISS仿真(2)
- Sql与Mongodb 查询映射图
- 使用搜索引擎的搜索技巧
- 字符设备驱动程序框架
- 纪念一下
- 数据库 闪回
- python 传递的dbus数据类型