android 虚拟camera,RK3399 Android 实现虚拟camera的几种方案

本文探讨了在项目开发中创建虚拟相机的需求,主要涉及两种方案。第一种方案是模仿MIPI或USB相机框架,通过修改驱动和配置文件虚拟出一个相机,但由于缺少ISP源码导致无法正常工作。第二种方案是移植Linux下的vivi虚拟相机驱动,但缺乏针对嵌入式系统的参考资料。尽管遇到挑战,这两种方法理论上都是可行的解决方案。
摘要由CSDN通过智能技术生成

在项目开发过程中,有时需要一个虚拟camera,由我们自己填充数据,比如TOF 模组 IR数据与depth数据是混合在一起输出的。我们需要将它们分开,分成两路送到上层去处理。物理camera只有一个,让上层认为是两个独立的camera。

第一种方案:虚拟一个mipi camera

我首先想到的方案是模仿原有的mipi或usb camera框架,虚拟出一个camera。先说mipi camera,RK 的mipi camera源码都在

hardware\rockchip\camera\CameraHal下,添加一个driver就是在hardware\rockchip\camera\SiliconImage\isi\drv参考其他sensor型号根据具体硬件信息修改出具体sensor的驱动;然后就是在hardware\rockchip\camera\Config\cam_board_rk3399.xml添加配置信息。虚拟一个mipi camera 核心就是在驱动中注释掉与硬件通讯的函数,直接返回成功,然后在"hardware\rockchip\camera\CameraHal\CameraHal_board_xml_parse.cpp" 中注释掉硬件操作的过程。这样就可以注册成功。但是有一个关键问题就是我们没有RK ISP源码,无法在ISP里调过对虚拟camera的处理,最终打开camera ,ISP内一直打印无效帧的log,不会执行到bufferCb函数。最终这个方案放弃了,但理论上是肯定行的通的。

第二种方案:移植linux下的vivi虚拟camera驱动,网上很多都是基于Ubuntu PC验证的很少有基于嵌入式的。下面列出一些参考网站。

(1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值