Як перевірити доступні веб-камери з командного рядка?


28

Чи є термінальна команда, яка перераховує всі веб-камери, підключені до мого комп'ютера, включаючи рідну? Можливо, використовуючи пакет ffmpeg?


<<<<< lsusb >>>>
Касім

Відповіді:


33

Список усіх пристроїв, знятих ядром

ls -ltrh /dev/video*

Щоб перелічити всі пристрої, підключені до використання USB lsusb; перерахувати всі пристрої, що додаються до використання PCIlspci


1
$ ls -ltrh / dev / video * ls: не вдається отримати доступ / / dev / video * ': Немає такого файлу чи каталогу
Mona Jalal

@MonaJalal Це означає, що він не зміг знайти жодного пристрою.
JMY1000

це не працює на моїй поверхні pro 3. Я можу використовувати сир, і він добре визначає мою камеру, але lspci та команда вище не показують інформацію про обладнання веб-камери. Це особливо важливо, тому що я хочу використовувати Kamera, яка просить вибрати з довгого списку.
Джошуа Робісон

22

v4l2-ctl --list-devices

sudo apt-get install v4l-utils
v4l2-ctl --list-devices

Зразок виводу за допомогою однієї камери:

Integrated Camera (usb-0000:00:1a.0-1.6):
        /dev/video0

Тестовано на Ubuntu 16.04.

Більше інформації можна знайти тут: /programming/4290834/how-to-get-a-list-of-video-capture-devices-web-cameras-on-linux-ubuntu-c


4
Помилка 16.04.1:Failed to open /dev/video0: No such file or directory
Xaqron

@Xaqron також спробуйте встановити, libv4l-devякщо він ще не встановлений. Також дайте комп'ютерну модель, якщо можете. Ура.
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

1
Просто тому, що я продовжую повертатися до цієї відповіді, це зараз : v4l2-ctl --list-devices. Це відповідь нижче, але верхній жирний текст не має 2.
ksclarke

1
$ v4l2-ctl --list-devices Не вдалося відкрити / dev / video0: Немає такого файлу чи каталогу
Mona Jalal

1
це правильна фактична відповідь. Дякую.
Джошуа Робісон

1

Для Windows можна використовувати бібліотеку піграберів: https://github.com/bunkahle/pygrabber

Щоб перевірити зручні імена підключених веб-камер:

from __future__ import print_function
from pygrabber.dshow_graph import FilterGraph

graph = FilterGraph()
print(graph.get_input_devices())
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.