在Windows环境中,当UV-Camera是ReactCam的“视频输入”设备时,如何从USB访问UV-Camera(设置/获取命令)?

zsohkypk  于 2023-03-04  发布在  Windows
关注(0)|答案(1)|浏览(178)

我有几个紫外线摄像头。当我把它们插入设备管理器时,它们会显示为"videoinout",当我试图通过导航器访问它们时,我可以通过浏览器看到它们:

// Just driven straight inside empty browsers console.
navigator.mediaDevices.enumerateDevices( ).then( res => {
    res.filter( ( d ) => {
        console.log( d.kind + ":" + d.label )
    })
})

.
.
.
videoinput:NanoCam Go (0edc:58b0)
.
.
.

这给了我一个可以看到摄像头的列表。现在我可以使用例如ReactCam。但是如果我试图从它读取任何内容或通过LibUsb设置它的值,我会得到错误,无法完成。
是的,我知道在Windows*中使用Libusb时应该使用WebUSB驱动程序,而且使用Zadig安装非常简单。但是当我这样做时,它再也无法从媒体设备中找到了。所以现在我可以调整它的UV-values,但是我不能再使用它,例如使用ReactCam来获取视频。
当通过navigator.usb访问摄像头时,通过
Libusb*访问时,以及在试图阅读描述时(见图片),可以看到同样的情况。

  • 这是来自两个选项的USB日志:*
guid=f280b010-8ce2-465a-a62a-809b4e6837a3, interface_number=0, path="\\?\usb#vid_0edc&pid_58b0&mi_00#6&1c36a8d6&0&0000#{ad7c0c59-f7e1-4995-9ee4-d96476b6bca0}", driver="WinUSB"

guid=f280b010-8ce2-465a-a62a-809b4e6837a3, interface_number=0, path="\\?\usb#vid_0edc&pid_58b0&mi_00#6&1c36a8d6&0&0000#{e5323777-f976-4f5b-9b55-b94699c46e44}\global", driver="usbvideo"
  • 这是浏览器在Media Internals中显示两个选项的方式:*

一个一个二个一个一个一个三个一个一个一个一个一个四个一个
我期望使用相机作为"inputvideo"设备,这样我就可以使用它们与eidogg. reactcam,同时能够调整他们的控制值与usb。
USB-Internals when "videoinput"
USB-Internals when using "WebUSB"

所以我的问题是我错过了什么?怎么能两者兼顾?

先谢谢你!

c3frrgcw

c3frrgcw1#

你可以使用Image Capture Web API来设置/获取UVC控件。下面是我一直在维护的一个演示,它可以让你在Chrome浏览器中播放USB摄像头支持的控件:https://beaufortfrancois.github.io/sandbox/image-capture/playground.html
来源:https://twitter.com/quicksave2k/status/1628727073048088577

相关问题