相关疑难解决方法(0)

识别 USB 设备

我有五个 USB 摄像头,相同品牌,相同型号(Canyon CNR-FWC120H)。它们用于 24/7 全天候监控不同的场景。我需要以某种方式从 Linux (Debian) 控制台或以编程方式(任何语言)确定哪个相机是哪个。

我试过查看 的输出lsusb -vvviSerial每个相机都有一个字段应该不同,但不幸的是,该制造商决定不打扰,所有相机在那个地方都有相同的序列号:200901010001

有没有其他方法可以识别哪个相机独立于它们所连接的 USB 端口,因为不幸的是,在我的特定场景中,我不能依赖相同的相机将始终连接到同一个端口的事实。

更新在评论中进行了一些讨论后,我意识到这是不可能完成的任务。所以忘记最后一段,或者如果你有一些巧妙的想法,欢迎你提出来。我现在很感兴趣,如果我能确定设备连接到哪个 USB 端口;我使用主板上的内置 USB 端口和额外的 PCI USB 控制器卡来容纳具有足够带宽的相机。我需要唯一标识端口,并且端口号/标识不应更改,例如,如果机器重新启动并且由于某种原因 USB 控制器以不同的顺序初始化。那可能吗?

更新 2我在其中一台摄像机的日志中看到以下信息:

[Wed Apr 30 18:35:02 2014] uvcvideo: Found UVC 1.00 device FULL HD 1080P Webcam (0bda:58b0)
[Wed Apr 30 18:35:02 2014] input: FULL HD 1080P Webcam as /devices/pci0000:00/0000:00:01.0/0000:01:00.0/usb3/3-2/3-2:1.0/input/input4
Run Code Online (Sandbox Code Playgroud)

使用它,我调用了这个命令:

udevadm info --query=all --path=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/usb3/3-2/3-2:1.0/input/input4
Run Code Online (Sandbox Code Playgroud)

得到了这个:

P: /devices/pci0000:00/0000:00:01.0/0000:01:00.0/usb3/3-2/3-2:1.0/input/input4
E: DEVPATH=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/usb3/3-2/3-2:1.0/input/input4
E: EV=3
E: ID_BUS=usb
E: ID_INPUT=1
E: ID_INPUT_KEY=1
E: …
Run Code Online (Sandbox Code Playgroud)

linux usb webcam

16
推荐指数
1
解决办法
4424
查看次数

标签 统计

linux ×1

usb ×1

webcam ×1