Linux

如何將 /sys/bus/usb/devices 映射到 /dev/video*?

  • July 11, 2018

我正在使用一個庫(librealsense),它只輸出匯流排和埠號(9.1)。它在內部使用 libusb。問題來自 libusb 中的這個標識符,我想知道它在 /dev/video0 中屬於哪個物理設備。例如,9.1 -> /dev/video0 和 7.2 -> /dev/video2 當兩個攝像頭插入埠 9.1 和 7.2 時。

這可能嗎?如何獲取屬於匯流排和埠的設備路徑?任何部分答案都會有所幫助。

回答這樣我就可以關閉這個問題,完全歸功於@ridgy 和@dirkt 的幫助。使用命令:

udevadm info -n video0 -q path

或者類似地,可以找到ls -l /sys/class/video4linux/表單的路徑。/devices/pci0000:00/0000:00:10.0/usb7/7-2/7-2:1.0/video4linux/video0結合使用ls /dev/video*或的影片設備列表v4l2-ctl --list-devices,可以創建 USB 埠和影片設備之間的映射。

您還可以使用以下命令獲取更多資訊

> > udevadm 資訊 -a -p $(udevadm 資訊 -q 路徑 -n /dev/video0) > > > udevadm 資訊 -a -p $(udevadm 資訊 -q 路徑 -n /dev/video1) > > >

引用自:https://unix.stackexchange.com/questions/344784