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

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

相关推荐
ALGO阿狗5 天前
SimpleDateFormat(“YYYY-MM-dd“)格式化时间出现了bug?
bug
爱学习的小可爱卢6 天前
JavaSE基础-Java异常体系:Bug定位终极指南
java·bug·javase
GeekyGuru6 天前
代码诊疗室——疑难Bug破解战
bug
嵌入式×边缘AI:打怪升级日志9 天前
9.2.3 UART 驱动严重 Bug(保姆级讲解)
bug
qq_242188633211 天前
代码诊疗室——疑难Bug破解战
bug
Moshow郑锴13 天前
Java SpringBoot 疑难 Bug 排查思路解析:从“语法正确”到“行为相符”
java·spring boot·bug
人间花海13 天前
BUG终结者:挑战你的调试极限
bug
2401_8582861113 天前
OS54.【Linux】System V 共享内存(3) “共享内存+管道“修bug记录
linux·运维·服务器·算法·bug
Kurbaneli14 天前
代码诊疗室——疑难Bug破解战
bug
Mr -老鬼16 天前
从 0 到 1 落地:Rust + Salvo 实现用户系统与 Bug 管理系统
开发语言·rust·bug