公司动态
手机镜头想换就换:VCAM 虚拟摄像头从装模块到出画面的 5 步上手
手机镜头想换就换VCAM 虚拟摄像头从装模块到出画面的 5 步上手【免费下载链接】com.example.vcam虚拟摄像头 virtual camera项目地址: https://gitcode.com/gh_mirrors/co/com.example.vcam直播到一半不想露脸、视频会议时被同事看到乱糟糟的背景、开发测试机根本没有摄像头——这些尴尬都指向同一个需求让应用读到一段假画面。VCAMcom.example.vcam正是一款基于 Xposed 框架的安卓虚拟摄像头工具它能把应用读到的画面悄悄替换成你指定的视频或图片Android 5.0 以上的设备即可使用。先弄明白它在偷换什么虚拟摄像头的一条原理一句话讲清应用打开相机时会向系统要一块画布来承载画面。VCAM 用 Hook 技术专业说法叫 Xposed Hook在半路拦下这个请求把画布内容换成由播放器输出的虚拟视频。应用从头到尾都不知道镜头已经换了它只是忠实地显示你给的素材。原理对应的两个核心文件想深入了解可以翻一翻Hook 入口app/src/main/java/com/example/vcam/HookMain.java负责拦截 Camera / Camera2 的打开、预览与拍照流程视频解码引擎app/src/main/java/com/example/vcam/VideoToFrames.java负责把视频帧解码后喂给目标应用动工之前先对照这三项硬性条件前提具体要求系统版本Android 5.0 及以上框架环境已安装 Xposed 或 LSPosed设备权限已获取 root三项缺一不可。缺少任何一项模块都无法真正生效这也是大多数装好了却没反应的根源。第 1 步装模块、启用模块、划定作用域先克隆仓库只读镜像地址git clone https://gitcode.com/gh_mirrors/co/com.example.vcam仓库里已经附带编译好的成品app/release/app-release.apk直接安装即可省去自己搭建 Gradle 环境的功夫想自己构建也可以打开app/目录重新编译。安装完成后按顺序做三件事✅ 在 LSPosed或 Xposed中勾选启用 VCAM 模块✅ 在作用域里勾选需要使用虚拟相机的目标应用✅ 留意不需要勾选系统框架模块本身不依赖它。第 2 步给应用放权认准两个 Camera1 目录在系统设置里授予目标应用读取本地存储的权限然后强制结束该应用再重新打开让权限真正生效。这里有个容易绕晕的分叉先记住结论目录取决于应用有没有存储权限。应用有权限 → 默认读取公共目录DCIM/Camera1/应用没申请这个权限 → VCAM 会把Camera1重定向到它的私有目录[内部存储]/Android/data/[应用包名]/files/Camera1/无论落在哪个目录都记得手动建好Camera1文件夹。私有目录只对该应用单独生效其他应用不受影响。 如果错过了弹出的目录重定向提示先往下看第 4 步的force_show.jpg它能帮你把提示再叫出来。第 3 步按气泡提示的分辨率准备 virtual.mp4打开目标应用的相机预览屏幕上会弹出一条气泡消息格式类似宽1280 高720。这就是它要求的画面尺寸照着准备视频即可 DCIM/Camera1/ └── virtual.mp4 ← 替换用视频分辨率尽量与提示一致几个实操要点如果打开相机后没有任何提示说明当前场景不用调整分辨率直接放视频就能用分辨率对不上最容易出现花屏、拉伸视频比例问题建议用剪辑软件裁好再放进去前置摄像头的特殊情况大多数机型需要把视频水平翻转并右旋 90 度再对齐分辨率个别应用例外以实际画面为准。第 4 步拍照替换、视频声音与五张指挥文件拍照替换在目标应用里按下快门如果弹出发现拍照及分辨率提示就按这个尺寸准备一张照片命名为1000.bmp放进Camera1目录。其他图片格式直接改后缀为.bmp也能识别反之若拍照时没有提示这个文件就不会生效。五张指挥文件在DCIM/Camera1/下创建下面这些空文件可以随时调整模块行为全部实时生效删掉文件即恢复默认文件名作用no-silent.jpg播放视频自带的声音默认静音disable.jpg临时停用视频替换需要时再删掉no_toast.jpg关闭频繁弹出的气泡提示force_show.jpg强制重新显示目录重定向提示private_dir.jpg强制所有应用一律使用私有目录嫌建文件麻烦应用内界面已经提供了对应开关逐一拨动即可效果与手动建文件完全一致。界面逻辑在 app/src/main/java/com/example/vcam/MainActivity.java每次启动会自动和目录里的文件状态同步。翻车对照表黑屏、花屏、方向与版本差异怎么救画面全黑或相机启动失败先检查路径是否误建成了DCIM/Camera1/Camera1/virtual.mp4这种两级目录只需要一级。另外要接受一个现实部分应用尤其系统相机目前无法成功替换。画面花屏视频分辨率与气泡提示数值不一致重新压制或裁剪视频。画面扭曲变形用剪辑软件把原视频裁成目标画面比例别指望拉伸硬凑比例不对必然变形。disable.jpg 不生效注意模块版本4.0及以下版本时该文件需放在有存储权限应用的私有目录下4.1及以上则统一放在DCIM/Camera1公共目录。写在最后回到开头的尴尬场景不想露脸、背景杂乱、没有摄像头——现在你都有了第二种解法把不想要的画面换成准备好的画面。整条路走下来其实门槛很低装模块、勾作用域、放对文件三步见效果直播、会议、开发测试都能用上。最后提醒一句虚拟摄像头只建议用在合规的直播、测试和隐私保护场景请勿用于任何违法违规用途一切后果自负。想动手的话先克隆仓库把app-release.apk装进手机试试吧。【免费下载链接】com.example.vcam虚拟摄像头 virtual camera项目地址: https://gitcode.com/gh_mirrors/co/com.example.vcam创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考