如何从命令行检查可用的网络摄像头?


28

是否有一个终端命令列出所有连接到我的计算机的网络摄像头,包括本地网络摄像头?也许使用ffmpeg包?


<<<<< lsusb >>>>
Qasim

Answers:


33

列出内核拾取的所有视频设备

ls -ltrh /dev/video*

列出USB连接的所有设备lsusb; 列出所有与PCI相连的设备lspci


1
$ ls -ltrh / dev / video * ls:无法访问'/ dev / video *':没有这样的文件或目录
Mona Jalal

@MonaJalal这意味着找不到任何设备。
JMY1000

这在我的Surface Pro 3上不起作用。我可以使用起司,它可以很好地检测到我的相机,但是上面的lspci和命令都不会显示有关网络摄像头硬件的信息。这一点特别重要,因为我要使用Kamera,它要求从长列表中选择。
Joshua Robison

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上测试。

可以在这里找到更多详细信息:https : //stackoverflow.com/questions/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'1

@Xaqron还尝试安装(libv4l-dev如果尚未安装)。如果可以,还提供计算机模型。干杯。
Ciro Santilli新疆改造中心法轮功六四事件

1
只是因为我不断回到这个答案,所以现在是:v4l2-ctl --list-devices。答案较低,但粗体字的顶部没有
2。– ksclarke

1
$ v4l2-ctl --list-devices无法打开/ dev / video0:没有这样的文件或目录
Mona Jalal

1
这是正确的实际答案。谢谢。
Joshua Robison

1

对于Windows,您可以使用pygrabber库:https : //github.com/bunkahle/pygrabber

要检查所连接网络摄像头的用户友好名称:

from __future__ import print_function
from pygrabber.dshow_graph import FilterGraph

graph = FilterGraph()
print(graph.get_input_devices())
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.