Jak sprawdzić dostępne kamery internetowe z wiersza poleceń?

28

Czy istnieje polecenie terminalu, które wyświetla listę wszystkich kamer podłączonych do mojego komputera, w tym natywnego? Może używasz pakietu ffmpeg?

marcelosalloum
źródło
<<<<< lsusb >>>>
Qasim

Odpowiedzi:

33

Aby wyświetlić listę wszystkich urządzeń wideo wychwyconych przez jądro

ls -ltrh /dev/video*

Aby wyświetlić listę wszystkich urządzeń podłączonych do USB, użyj lsusb; aby wyświetlić listę wszystkich urządzeń podłączonych do PCIlspci

connie nowy
źródło
1
$ ls -ltrh / dev / video * ls: nie można uzyskać dostępu do '/ dev / video *': Brak takiego pliku lub katalogu
Mona Jalal
@MonaJalal Oznacza to, że nie można znaleźć żadnych urządzeń.
JMY1000,
to nie działa na mojej powierzchni pro 3. Mogę używać sera i wykrywa mój aparat w porządku, ale lspci i powyższe polecenie nie pokazują informacji o sprzęcie kamery internetowej. Jest to szczególnie ważne, ponieważ chcę użyć kamery, która prosi o wybranie z długiej listy.
Joshua Robison
22

v4l2-ctl --list-devices

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

Przykładowe dane wyjściowe z jedną kamerą:

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

Testowane na Ubuntu 16.04.

Więcej informacji można znaleźć tutaj: /programming/4290834/how-to-get-a-list-of-video-capture-devices-web-cameras-on-linux-ubuntu-c

Ciro Santilli
źródło
4
W dniu 16.04.1 błąd:Failed to open /dev/video0: No such file or directory
Xaqron
@Xaqron również spróbuj zainstalować, libv4l-devjeśli jeszcze nie został zainstalowany. Podaj także model komputera, jeśli możesz. Twoje zdrowie.
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
1
Tylko dlatego, że wracają do tej odpowiedzi, to teraz: v4l2-ctl --list-devices. To jest niższe w odpowiedzi, ale górna część pogrubionego tekstu nie ma 2.
ksclarke
1
$ v4l2-ctl --list-devices Nie można otworzyć / dev / video0: Brak takiego pliku lub katalogu
Mona Jalal
1
to jest poprawna faktyczna odpowiedź. Dziękuję Ci.
Joshua Robison
1

W systemie Windows możesz użyć biblioteki pygrabber: https://github.com/bunkahle/pygrabber

Aby sprawdzić przyjazne dla użytkownika nazwy podłączonych kamer internetowych:

from __future__ import print_function
from pygrabber.dshow_graph import FilterGraph

graph = FilterGraph()
print(graph.get_input_devices())
bunkier
źródło