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 桌面远程摄像头 不在同一个会话中

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

相关推荐
IT二叔2 小时前
Git Flow04-bug修改流程
git·bug
万粉变现经纪人1 天前
如何解决 pip install shapely 报错 GEOS C 库未找到 问题
c语言·开发语言·python·pycharm·bug·pandas·pip
cyforkk1 天前
前后端联调实战:解决业务异常被误判为成功的“幽灵 Bug”
bug·状态模式
li9056632802 天前
hanzi-writer-miniprogram Path2D问题以及Bug修复
微信小程序·bug
万粉变现经纪人2 天前
如何解决 pip install cx_Oracle 报错 未找到 Oracle Instant Client 问题
数据库·python·mysql·oracle·pycharm·bug·pip
ChoSeitaku3 天前
Git分支|创建分支|切换分支|合并分支|删除分支|合并冲突分支|分支策略|bug分支|强制删除分支
bug
Lxinccode4 天前
BUG(23) : node版claude code启动报错Failed to connect to api.anthropic.com: ETIMEDOUT
bug·claude·claude启动报错
buyulian4 天前
Bug防御体系:技术方案的优与劣
java·经验分享·bug·软件工程
川石课堂软件测试5 天前
接口测试需要注意的一些BUG
网络·数据库·python·单元测试·bug·压力测试·tornado
深念Y5 天前
记一个BUG:Trae里MongoDB和MySQL MCP不能共存
数据库·mysql·mongodb·ai·bug·agent·mcp