关于安卓手机下实现虚拟摄像头

tele_hc 2017-03-01 09:27:16
最终的需求是以预先录制的视频,替换摄像头输入,作为视频聊天内容传送给对端。
目前初步想法:
1)开发一个类似与pc上的虚拟摄像头app,虚拟摄像头app在后台播放视频,并以此屏蔽摄像头;
2)现在手机大都支持OTG 外接USB摄像头,能否修改安卓底层配置,让OTG摄像头成为默认的摄像头?
请高手们给点建议,怎么做更合理?或者有没有其它办法?谢谢!
...全文
17996 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
icfan000 2020-05-30
  • 打赏
  • 举报
回复
可以参考这个:https://blog.csdn.net/u011818582/article/details/106213237
qq_22015351 2020-05-25
  • 打赏
  • 举报
回复
引用 1 楼 jiqizaisikao 的回复:
你好,我正在研究系统视频替换,不过我是想直接修改系统源码,重新编译覆盖原先的库,当然,兼容性可能是个问题。有机会加我QQ交流:3617 28654
可以加一下好友吗?qq加你了
l3612497 2020-02-19
  • 打赏
  • 举报
回复
很喜欢这款应用 有没有更好的通用版的
Softboy_TM 2019-08-09
  • 打赏
  • 举报
回复
root的系统纯软件就能实现,可以看看这个 。https://pan.baidu.com/s/1bDlVKItp9clFFb7Je2WabA
索软 2019-08-06
  • 打赏
  • 举报
回复
安卓上也有虚拟摄像头软件 最近才发现的,还能QQ视频 给力 www.jianshu.com/p/2a9af2918e11
韩曙亮 2019-03-28
  • 打赏
  • 举报
回复
这个动机值得怀疑 , 非 root 不容易实现 ;

例如 : 支付宝 刷脸 支付 , 各种刷脸 解锁 的 应用 ;
克落 2019-03-26
  • 打赏
  • 举报
回复
做这个用途值得怀疑
fei得更高 2019-03-26
  • 打赏
  • 举报
回复
貌似这个功能是做一些另类的用途
jiqizaisikao 2019-03-08
  • 打赏
  • 举报
回复
这个我暂时只能实现一些手机上可用的app,兼容性不太好,也可以实时切换几个准备好的视频。但是无法有效检测用户使用状态,如果被人用于刷脸等业务,可能会造成坏的影响。如果希望交流可以加我扣:3617 28654 加入请详细注明来意,因为广告太多。
jiqizaisikao 2018-07-21
  • 打赏
  • 举报
回复
后来又制作了一款虚拟视频app,当然没有做什么保护,被人改头换面也放到了百度相关页面上。这款app支持的手机多一些,不过还是有很多手机不能用,7.0及其以上系统都不能用。
jiqizaisikao 2018-07-21
  • 打赏
  • 举报
回复
去年制作了刷机包,针对小米2s和米4,视频是放在/sdcard/my/34.mp4 下的,后经转手,网络上已经泛滥了。百度上的很多信息已经被人复制拷贝放到比如百度经验,百度问答上,个人网站上。算是一个小小的悲剧吧,现在仅有的一点讯息就是能从时间上看出端倪来。
bmwxiaojian 2018-01-16
  • 打赏
  • 举报
回复

提供此技术,需要的可以加我VX:bmwxiaojian
KTMadmin 2017-10-31
  • 打赏
  • 举报
回复
目前已经实现了小米2虚拟视频手机小米2s虚拟视频手机小米4虚拟视频手机小米手机摄像头替换安卓系统摄像头替换
qq_16071537 2017-10-31
  • 打赏
  • 举报
回复
这个技术已经实现了,有想继续了解效果和用途的小伙伴可以加下企鹅3 2 9 0 3 8 9 2查看空间
jichao1515 2017-10-04
  • 打赏
  • 举报
回复
本人小白,对安卓构架一窍不通。但是,对于在安卓系统的视频交友软件上,使用非真实摄像头,我有过实际操作。
在PC端装安卓虚拟机,PC系统用vcam之类的虚拟摄像头,这样就可以投射照片,桌面,或者视频之类的。
我觉得,手机安卓硬件系统几号没有什么可可扩展性,所以,如果不root,虚拟摄像头无法实现。即使实现,也要占用一个真实摄像头的地址,改来改去的很容易出错。
我的思路是,坐一个安卓系统下的安卓模拟器,用模拟器运行社交视频软件。加一个壳后,想怎么改都很容易了,同时可以绕过root。
安卓系统的安卓模拟器就是一个壳,只需链接软件和系统,只是在链接摄像头时,链接到虚拟摄像头。
z920981023 2017-09-26
  • 打赏
  • 举报
回复
请通过一下 谢谢
jiqizaisikao 2017-04-21
  • 打赏
  • 举报
回复
1,有一种几乎不需要多少技术的方案,就是采用模拟器然后进行视频声音的替换,但是有些麻烦和繁琐 2,深入到程序底层,直接找到接口接收和发送视频,需要一定的逆向工作 补充于2017.03.16:前后有3个朋友找到我交流这个事情,我终于决定彻底解决这个问题。理论上,我们可以分很多种情况很多种办法来解决这个问题,就是对于任何app都能替换。 1:没有root的机器,我们修改替换每一个app中的视频相关接口jni层或者java层,这个费时费力,而且不通用。而且还有随时有被宿主程序检测到程序不完整的风险。 2,没有root的机器,我们用第三方虚拟启动app的方法,这方面类似LBE平行空间,前期需要做的工作量巨大,但是一旦做好框架,那么任意的app都能在此框架下运行,修改so,修改java方法,随心所欲。 3,root后的机器,我们可以加载驱动或者重新编译系统库,最后我采用的就是这种办法,这样能保证最大程度地还原app真实运行场景,不造成任何干扰。测试结果显示效果良好,对于QQ视频等应用可以替换,但是对于系统自带的录像却没能替换,所以我估计系统录像有2-3条路径。 补充于2017.03.23:经过多天查看源码,基本找到了90%的视频接口。从中可以发现,android对于视频录制的一些设计:如果你只是想把正在播放的视频录制下来,那么android就完全抛弃速度的考量,而层层打包,你需要做的就是发出一个录制并保存视频的指令(至于文件的保存是不是可以直接在service中完成不清楚)。如果你要在视频播放的时候处理每一帧图像,甚至加上滤镜,那么android给你准备的一套贴近底层的方式,因为图像的数据量太大了,所以尽量避免反复挪动和拷贝,android就选择在图像绘制前夕的一些点作为插入,从而满足你的需求,又保证整个播放的路径还是那个路径,不增添新的的路径。 补充于2017.04.05:基本上已经解决了所有的视频替换的问题,不过有一点遗憾的地方就是对于一些人脸认证的app虽然后台的视频已经替换了,但是显示的还是真实的图像,后来我估计是因为这些认证app为了保证兼容性,而用了android录像最古老的方式(系统自带相机功能都不用这套机制了),用surface holder 来承载录像的功能,虽然叫holder,但是却没能hold,整个视频预览的数据虽然经过了app,但是这绝对仅仅是路过而已,可以让app窥探一下,但是绝不允许你修改,仅仅是能共享读而已,但是话又说回来,既然仅仅是路过,就说明android完全没有想过视频数据被app修改而必须同步的问题,所以直接经过service与摄像头打交道,保证最佳的预览速度,那holder所hold的是什么,应该是hold了录像的参数设置,就是说你可以hold摄像机的参数,hold拍摄的图像大小、帧率、格式,但是因为早期的硬件问题,这套机制就是用来快速预览视频的。要想替换这个预览显示,应该必须修改service的代码,当然修改驱动也是可以的,但是对于没有源码的机器这两者的修改都要慎重,不仅仅是兼容性的问题,而且不小心就启动不了机器。 这个是我花椒直播的射雕英雄传,声音也基本是同步的 http://www.huajiao.com/user/98039432 请加我的朋友写明来意,发广告的号太多了。
tele_hc 2017-04-10
  • 打赏
  • 举报
回复
引用 1 楼 jiqizaisikao的回复:
你好,我正在研究系统视频替换,不过我是想直接修改系统源码,重新编译覆盖原先的库,当然,兼容性可能是个问题。有机会加我QQ交流:3617 28654
你还在研究这个吗?加你qq被拒了啊
jiqizaisikao 2017-03-23
  • 打赏
  • 举报
回复
你好,我正在研究系统视频替换,不过我是想直接修改系统源码,重新编译覆盖原先的库,当然,兼容性可能是个问题。有机会加我QQ交流:3617 28654

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧