Как получить серийный номер веб-камеры USB из командной строки Linux?
У меня есть несколько USB веб-камер, подключенных к машине с Ubuntu. Все они отображаются как /dev/video0
, /dev/video1
, /dev/video2
и т.д., Но я не могу найти какой-либо способ программно определить, что есть что. Несколько камер имеют одну и ту же модель, поэтому просто получить название модели недостаточно.
Обратите внимание, я не спрашиваю, как использовать lsusb
. Да, я знаю, что вы можете использовать lsusb
или libusb, чтобы получить серийный номер устройства, идентификатор продукта, имя производителя и т.д. Но, насколько я могу судить, ничто, показанное lsusb
может иметь перекрестные ссылки с путем /dev/video*
.
Например, если кто-то подключает две идентичные веб-камеры, и они отображаются как /dev/video1
и /dev/video2
а затем отключает их и подключает их к совершенно другим портам, так что /dev/video2
становится /dev/video3
и /dev/video1
становится /dev/video4
, я сразу могу знать, что текущая /dev/video3
"раньше была" /dev/video2
.
Единственные похожие вопросы, которые я обнаружил, предполагают только такие хаки, как отключение и повторное подключение при сканировании dmesg. Я ищу чисто программное решение, которое не требует аппаратных манипуляций для идентификации веб-камер.