VCAM虚拟摄像头配置开关详解:5个隐藏开关文件如何玩转模块(附对照清单)
【免费下载链接】com.example.vcam虚拟摄像头 virtual camera项目地址: https://gitcode.com/gh_mirrors/co/com.example.vcam
VCAM 是一款基于 Xposed 框架的虚拟摄像头(Virtual Camera)安卓模块,它能把目标应用里的真实相机画面替换成你准备的视频或图片。很多新手只放了virtual.mp4就止步了,却不知道DCIM/Camera1/目录下还藏着5 个"隐藏开关文件"——它们决定视频声音、临时停用、提示消息等行为,全部全局实时生效。本文带你一次性看懂这 5 个配置开关文件,并附上完整对照清单。
开关文件藏在哪里?
所有控制文件都放在同一个目录:
/[内部存储]/DCIM/Camera1/这个目录也是放置替换视频virtual.mp4的位置。你可以手动创建/删除这些空文件来改变模块行为,也可以直接打开 VCAM 的配置应用,用 5 个开关一键切换——应用内部其实就是帮你创建或删除对应的开关文件(同步逻辑见 MainActivity.java)。
5 个隐藏开关文件逐个拆解
1️⃣disable.jpg—— 一键临时停用模块
| 项目 | 说明 |
|---|---|
| 文件路径 | [内部存储]/DCIM/Camera1/disable.jpg |
| 作用 | 文件存在= 暂停视频替换,相机恢复真实画面 |
| 生效方式 | 全局,实时 |
这是最常用的"急刹车":演示到一半想让对方看到真人?创建这个文件即可,删掉它又能立刻切回虚拟画面。模块在每次开启相机预览、打开 Camera/Camera2 时会检查该文件(检测逻辑见 HookMain.java)。
2️⃣no-silent.jpg—— 给虚拟视频配上声音
| 项目 | 说明 |
|---|---|
| 文件路径 | [内部存储]/DCIM/Camera1/no-silent.jpg |
| 作用 | 文件存在= 播放virtual.mp4的视频原声 |
| 生效方式 | 全局,实时 |
默认情况下虚拟视频是静音播放的。如果你的视频自带人声或环境音,创建这个文件就能让声音同步播出。对应应用界面里的"播放视频声音"开关(activity_main.xml)。
3️⃣no_toast.jpg—— 静音所有气泡提示
| 项目 | 说明 |
|---|---|
| 文件路径 | [内部存储]/DCIM/Camera1/no_toast.jpg |
| 作用 | 文件存在= 关闭所有 Toast 气泡消息 |
| 生效方式 | 全局,实时 |
调试阶段,"发现拍照""宽:…高:…"这些提示非常有用的;但正式使用时可能显得碍眼,创建该文件即可让 VCAM"闭嘴"。模块在每次触发提示前都会先查询这个文件(HookMain.java)。
4️⃣force_show.jpg—— 强制重放"目录重定向"提示
| 项目 | 说明 |
|---|---|
| 文件路径 | [内部存储]/DCIM/Camera1/force_show.jpg |
| 作用 | 覆盖"只提示一次"的默认设定,每次都弹出重定向提示 |
| 生效方式 | 全局,实时 |
当目标应用没有存储权限时,Camera1目录会被重定向到应用私有目录Android/data/[包名]/files/Camera1/。这条提示默认只出现一次,错过了?创建force_show.jpg就能让它反复显示,方便确认路径。相关重定向逻辑见 HookMain.java。
5️⃣private_dir.jpg—— 强制所有应用使用私有目录
| 项目 | 说明 |
|---|---|
| 文件路径 | [内部存储]/DCIM/Camera1/private_dir.jpg |
| 作用 | 强制每个应用读取自己私有目录下的Camera1 |
| 生效方式 | 全局,实时 |
这是给多应用分视频的神器:开启后,每个应用可以拥有独立的virtual.mp4,互不干扰——比如给应用 A 放风景视频,给应用 B 放人物视频。注意私有目录的Camera1仅对单个应用生效。
5 个开关文件对照清单 📋
| 开关文件 | 存在时 | 不存在时 | 应用界面开关 |
|---|---|---|---|
disable.jpg | ⛔ 停用替换,恢复真实相机 | ▶️ 正常替换 | 临时关闭模块 |
no-silent.jpg | 🔊 播放视频声音 | 🔇 静音播放 | 播放视频声音 |
no_toast.jpg | 🤫 关闭气泡提示 | 📣 显示气泡提示 | 关闭提示消息 |
force_show.jpg | 📢 每次显示重定向提示 | 🔕 只显示一次 | 强制显示权限缺失提示 |
private_dir.jpg | 📁 强制使用应用私有目录 | 📂 默认公共目录 | 强制每个应用程序使用私有目录 |
💡 记忆技巧:5 个文件都是"存在即开启"的空文件,文件名带
no_/disable前缀的表示"关闭某行为"。
新手常见坑位提醒 ⚠️
- 开关文件放错位置?必须放在公共目录
[内部存储]/DCIM/Camera1/下(应用版本 ≤4.0 时,无存储权限的应用需在私有目录下创建,详见 README.md 常见问题 Q5)。 - 别把控制文件当视频放:
virtual.mp4放视频,1000.bmp放拍照替换图,5 个开关文件只需要创建空文件即可,内容无所谓。 - 开关不生效?先确认相机是否重新打开过——开关是"实时生效",但部分应用需要重新触发相机预览。
写在最后
VCAM 的设计思路很简洁:用文件的存在与否来表达开关状态,既让配置应用可以无侵入地管理模块,也让你在文件管理器里"所见即所得"。把这张对照清单收藏起来,以后再遇到"想临时关掉""想开声音""想分应用配视频"的需求,直接创建对应文件就行。
📌 更多使用说明请查看 README.md、README_en.md,核心替换逻辑在 HookMain.java,多格式视频解码工具见 VideoToFrames.java。请勿将本模块用于任何非法用途,所有后果自负。
【免费下载链接】com.example.vcam虚拟摄像头 virtual camera项目地址: https://gitcode.com/gh_mirrors/co/com.example.vcam
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考