RDP 远程桌面连接:浏览器无法获取摄像头

最近在做 WebRTC 音视频会议,在调试的时候遇到了问题

本地调试能够获取摄像头列表,也能正常加载摄像头

我想着,让另外一台电脑也访问前端页面,看看能不能获取到摄像头

结果我通过 RDP 桌面远程另外一台电脑,发现死活拿不到摄像头

后来发现,关了 RDP 桌面远程,直接在那台电脑上能够打开摄像头

🧠 背后原理

Windows 的会话机制大致如下:

场景 会话编号 能否访问物理摄像头
本地登录 Session 1 ✅ 可以
RDP 登录 Session 2 (远程会话) ❌ 不行
断开 RDP、返回本地 回到 Session 1 ✅ 恢复正常

✅ 问题本质:RDP 登录会锁定或虚拟化本地会话 (Console Session)

这其实是 Windows 的一个"陷阱"问题:

当你通过 RDP 登录时,Windows 会把你从 物理控制台会话(Session 1) 切换到一个新的 远程会话(Session X)

摄像头设备(如 USB Camera、Integrated Camera) 是绑定到 控制台会话 的。

👉 所以:

  • 物理登录(显示器+键盘) 时,摄像头属于 Session 1
  • 通过 RDP 登录 时,系统切换到 Session 2
  • 摄像头不会映射进 Session 2,浏览器在这个会话里自然就"看不到摄像头"。

这就是为什么:

🔹 本地登录(或退出 RDP)后浏览器能获取摄像头;

🔹 一旦 RDP 登录,摄像头立即消失。

简单一句话,RDP 桌面远程摄像头 不在同一个会话中

解决办法:折腾了半天,最终妥协 ------> 用 向日葵 远程

相关推荐
烧酒同学2 小时前
【Qt】QScrollArea的滑动条无法拖动(已解决)
qt·bug
黎雁·泠崖8 小时前
VS2022调试通关秘籍:变量跟踪+内存分析+bug定位
c语言·bug
切糕师学AI11 小时前
海森堡Bug是什么?
bug
程序员杰哥13 小时前
快速定位bug,编写测试用例
自动化测试·软件测试·python·功能测试·测试工具·测试用例·bug
Jay Kay4 天前
Event loop is closed when AsyncClient exists in multiple event_loops.
bug
JHC0000005 天前
发现个微信客户端的bug
微信·bug
wow_DG7 天前
【Python✨】VS Code 秒开 Python 类型检查:一招 mypy + settings.json 让你的 Bug 原地现形!
python·json·bug
驱动探索者9 天前
Zephyr 获取 cpu 占用率异常bug分析
bug·rtos·zephyr
薛定e的猫咪10 天前
【调试技巧】vscode 四种断点调试,快速定位 bug
ide·vscode·python·bug
万粉变现经纪人11 天前
如何解决 pip install 编译报错 ‘cl.exe’ not found(缺少 VS C++ 工具集)问题
开发语言·c++·人工智能·python·pycharm·bug·pip