如何用 python 获取计算机上存在的网络摄像头的名称?

Spu*_*jac 5 python webcam subprocess ffmpeg

我有个问题。我需要在 python 中使用 ffmpeg 和子进程来捕获视频。

为此,我需要识别计算机中存在的摄像机的名称,以便能够将此参数传递给 ffmpeg 进程。

到目前为止我已经使用了WMI模块,但是它只能在Windows上运行,并且不太好用。

有没有更简单的方法来提取计算机上网络摄像头的名称并将其保存到数组中?也许还使用 ffmpeg list-devices 并过滤结果?你能帮助我吗?

我不想再使用 WMI 模块,因为我想要一个适用于 Windows 或 Linux 的通用解决方案,也许使用 subprocess 和 ffmpeg list_devices 命令。谢谢

llo*_*gan 4

视窗

在 Windows 中使用dshow

ffmpeg -list_devices true -f dshow -i dummy
Run Code Online (Sandbox Code Playgroud)

Linux

在Linux中使用v4l2-ctl

v4l2-ctl --list-devices
Run Code Online (Sandbox Code Playgroud)

然后使用FFmpeg video4linux2/v4l2 demuxer进行连接进行连接。

另请参阅