我正在开发一个需要与许多不同 USB 网络摄像头通信的 Windows Python 2.7 应用程序。我一直在使用 OpenCV,但是对于一些科学网络摄像头,没有检测到默认帧率、捕获格式等,我只得到一个空白图像。可以打开 DirectShow 属性页的外部程序可以在我的程序中解决此问题,但我希望在我的应用程序中具有此功能。
我已经尝试了一个可用的 Python 库来执行此操作:VideoCapture (http://videocapture.sourceforge.net/)。虽然这会打开属性页,但它不允许更改任何设备设置(“连接错误...此格式当前不可用”,但 AMCAP 有效)。我想知道底层代码是否太过时了。
在 VideoCapture 或 videoInput (http://www.muonics.net/school/spring05/videoInput/) 中使用 C++ 代码并不是很有帮助,因为它们都依赖于分布在许多旧的特定 DirectX/WindowsSDK 包中的旧库。不幸的是,我没有知识或时间从头开始或找出 VideoCapture 出了什么问题。
是否有另一个已经组装好的 Python 包可以做到这一点?我一直在寻找一段时间,但运气不佳。我看了一点 libvlc python 绑定(因为 VLC 可以访问属性页)和 DirectPython,但我不清楚这些是否有我正在寻找的东西。
谢谢!