侧边栏壁纸
  • 累计撰写 416 篇文章
  • 累计创建 65 个标签
  • 累计收到 150 条评论

目 录CONTENT

文章目录

RK3399主板,Android 7.1系统 USB摄像机配置

Z同学
2023-07-18 / 1 评论 / 2 点赞 / 10,665 阅读 / 751 字
温馨提示:
本文最后更新于 2023-07-18,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

1. 介绍

最近接手了一波RK3399主板的设备调试任务。设备主板是没有自带系统相机功能而项目又需要支持两个摄像头。

下面分享一下我的经验,希望其他小伙伴碰见了相同问题时可以有一个参考。

例如:双USB摄像头插入后调用系统相机崩溃,预览界面左右镜像翻转了,拍照结果左右镜像翻转了,预览或者拍照时旋转了90°、180°等等情况。

下面介绍一下我的处理。

2. UVC Camera 加载 USB双摄像头

由于主板默认是没有摄像头的,所以一开始尝试时通过在主板USB口插入USB摄像头。

插入一个USB摄像头时,自带的系统相机可以正常调用该摄像头。但是同时插入两个USB摄像头后。系统相机启动就崩溃。

一度以为主板不支持双USB摄像头。但其实并不是不支持,而是调用摄像头时出现了冲突造成的崩溃。(系统相机App的版本问题)

直接使用Android CameraX库进行识别摄像头的时候,因为只能得到一个相机设备。还容易触发崩溃。

所以,当初放弃了CameraX库,而是通过:https://github.com/jiangdongguo/AndroidUSBCamera 进行手动加载USB相机。

这种方案的优势就在于USB摄像头是手动加载的,扩展性比较好。

但是性能没有直接CameraX库的性能高。

但是可自定义空间大。

3. CameraX 加载 USB双摄像头

RK3399 本身是支持多摄像头的。可以将USB摄像头进行配置,并分配为前置摄像头或后置摄像头的。

方法很简单:打开系统设置->显示->摄像头设置然后在弹出的面板中进行设置哪个摄像头为前置,哪个摄像头为后置。

同时可以调整摄像头的预览以及拍照输出的旋转角度。同时也可以解决相机画面中镜像翻转的问题。

具体的配置效果图如下:
image-20230718211213970

image-20230718211253158

然后在右上角会弹出如下所示的设置菜单。我们按照需求进行设置即可。
image-20230718211231668

配置完毕之后,我们就可以不用UVC协议来手动加载相机了,可以直接使用CameraX库进行获取前置摄像头或者后置摄像头了。

如果是设备有多个USB接口,那么我们还可以扩展更多的相机的支持。

这种方案,简单便捷。同时也不用处理各种相机的生命周期管理。在某些情况下这种方式会更方便一些。

2

评论区