我应该如何从WSL2打开Windows 10中的远程摄像头?
问题描述
如何从WSL2打开Windows 10中的远程摄像头?
我有一台Microsoft Surface Book 2(SB2),可以在Windows 10中打开摄像头,但无法在Ubuntu/WSL中打开。
我知道Windows VScode远程扩展可以访问WSL打开程序并进行编辑或编译。
是否可以通过任何方法访问SB2的摄像头?
为什么?因为我有一个程序,可以识别物体并使用SB2的摄像头计算距离。(YouTube video demonstration)
但我想在WSL中完成它,因为在Linux中开发通常会更方便。
解决方案
自该问题今天以否定答案出现后的延迟答案。否定的答案没有问题,因为我认为很长一段时间都是这样。然而,我最近想到了一个可能的解决方案。请注意,我自己还没有尝试过。
这确实假设相机通过USB连接,即使是在内部。我不确定Surface Book是不是这样,但很可能是这样。
这来自post in the Home Assistant forums,用户一直在WSL上运行Home Assistant(家庭自动化平台)。
由于大多数(全部?)PC Z波接口是通过USB加密狗实现的,其中一个关键障碍是如何从WSL本地使用USB Z波加密狗。我不会重复这些论坛的全部评论,但要总结一下(并将说明改编为";Camera&Quot;):
- 使用USB/IP for Windows将Windows下的USB摄像头作为USB/IP设备共享。
uname -a
以检查您的WSL2内核版本。Microsoft已在5.10.60.1中添加了对USB/IP的支持。- 如果您没有使用最新版本,请下载它并使用
.wslconfig
将该内核设置为用于WSL2的内核。在某些情况下,wsl --update
可能会自动将您移至最新版本。 sudo modprobe
相机所需的任何模块。usbip list -r $HOSTNAME.local
以(希望)查看您的Windows USB设备及其关联的总线ID的列表。usbip attach -r $HOSTNAME.local -b <bus_id>
公交车上的是您的相机。
准备就绪后,WSL/Linux系统应将您的相机视为本机USB设备,允许您从Python或任何其他语言访问,就像您在直接连接了本机USB设备的本机Linux系统上一样。
相关文章