camera
xuhui_7810
这个作者很懒,什么都没留下…
展开
-
virtual camera
敲下标题的这一刻,内心还是有点儿小激动的。毕竟虚拟摄像头,也做了几个星期了,硬生生的在android原生系统不支持的情况下,绕过重重限制,完美的实现了这一功能。接下来几天,终于可以睡个好觉了。 好了,闲话少说,我们先来分析下虚拟摄像头。一说到虚拟摄像头,大家印象里,肯定首先想到的是这么一个情景:某个猥琐男在网上正兴致勃勃的撩妹,看着视频里美女漂亮的容颜,不仅春心大动,口水流了一地。而实际上,在网络的另一端,和这猥琐男聊天视频的,根本就不是视频里的美女,而是一位一边抠着脚一边...原创 2020-07-27 09:55:03 · 5330 阅读 · 4 评论 -
android camera hal3 新增vendor tag
前段时间,我在android8.1的系统层上,新增了一个usbcamera hal,和一个虚拟摄像头hal。在实际使用的过程中,遇到了一个问题——客户app在用camera api接口调用usbcamera或virtual camera时,希望能够知道当前调用的是系统本身的mipi摄像头,还是usbcamera或virtualcamera。也就是说,客户想知道,我当前调用的摄像头,是个什么东西。 要实现这个功能,有三种方法。第一种,是最下乘的方法,也就是在hal层,open ...原创 2020-09-07 15:55:24 · 6425 阅读 · 14 评论 -
MTK6580(Android6.0)-camera 驱动分析
一、MTK6580 平台 Camera 驱动整体框架mtk平台三大件调试中,camera的调试难度最大,问题也就最多,为此特地分析了一下整个camera驱动部分实现过程,以下为camera驱动框架序列图: 从图中可以看出,整个框架分为三个部分hal部分逻辑调用,kernel层的通用驱动sensorlist.c 和具体IC的驱动xxxx_mipi_raw.c,kernel起来后不会直接去访问硬件sensor,而是会注册相关的驱动,之后Android系统起来后会启动相关的...转载 2020-08-15 23:54:05 · 1233 阅读 · 0 评论 -
android8.1 mtk camera hal各种操作流程
写在前面的话:从前一直以为能力比学历重要,直到最近接连面了几家大厂,技术面都过了,但最后因为本科不是全日制的,是成考的,所以都卡在hr那里的学历上。哎,想找个大平台,安安静静的做我的技术,一直做到退休,咋就这么难呢? 好了,言归正传。最近一年,一直在做android上的视频编解码和录相、以及camera hal和系统框架这一块。随着做的慢慢的深入,越发觉得mtk的camera hal这一块,有其独到之处。偏偏网上相关的资料却是极少,对新入手的人而言,很难从上到下吃透。趁着最...原创 2020-08-03 22:16:14 · 4075 阅读 · 6 评论 -
android mtk8.1上api1录相流程,从app到hal
做mtk camera这一块有一段时间了,有些想法,一直没有整理起来。这样的后果就是,虽然这些东西你都做过,但是要让你说清楚是怎么一回事,你就很难说得清了。但是如果你将你做过的东西,在心里理清楚后,再写出来,就难转化为自己的理解,就能真正的将做过的东西吸收为自己知识沉淀的一部份了。这篇博客,先将mtk上用api1录相的流程整理一下。 1.)在app上录相的代码基本上如下package com.example.dcamera;import androidx.appc...原创 2020-07-27 14:29:25 · 1501 阅读 · 2 评论 -
虚拟摄像头搭配高德AR导航出现的内存和cpu问题
最近在处理虚拟摄像头搭配高德AR导航时,出现了一些内存和cpu问题,这里做个初步记录,后面再完善1.)开一个hal3的后台录相、预览app,再开一个高德AR导航虚拟摄像头。这时cpu消耗最高达到了600%以上, AR导航界面卡顿严重,录相APP录下来的帧丢帧严重。 刚开始是从降cpu着手的,因为AR导航占用的cpu达到了300以上,加上地图的其他进程消耗,高德一个APP就达到了400%以上。 刚开始降cpu手段: 1.在虚拟摄像头hal3的processCaptureReq...原创 2020-07-16 21:15:30 · 5349 阅读 · 0 评论 -
android mtk camera 数据处理基本流程
原创 2020-07-16 17:54:14 · 1275 阅读 · 0 评论 -
camera api2 同一个应用内,在多个TextureView上显示同一个camera
有的时候,客户需求在同一个app内的两个texttureview上,显示同一个camera画面。也就是将同一份camera预览数据,分发到不同的TexttureView上。针对这个需求,实现非常简单。我们先来普及一下camera api2的预览基本流程。 1.)CameraManager调用openCamera()打开指定相机设备,并返回一个CameraDevice对象,后续通过该CameraDevice对象操控具体的相机设备。 2.)使用CameraDe...原创 2020-05-11 16:50:20 · 3363 阅读 · 6 评论