无法在 Windows 平台上的 QtMultimedia 中获取相机列表

Can't Get List of Cameras in QtMultimedia on Windows Platform

我想在 Windows 10 平台上使用 Python 中的 QtMultimedia 模块显示流式视频。然而,第一个最基本的步骤对我不起作用——识别可用的相机。

Windows 设备管理器确认我的笔记本电脑连接了两个摄像头——一个网络摄像头和一个 USB 捕获设备。

我的脚本没有使用以下脚本识别任何可用的摄像机:

from PyQt5.QtMultimedia import QCameraInfo
from PyQt5.QtWidgets import QApplication, QWidget
import sys

    class MainWindow(QWidget):
    def __init__(self):
       super().__init__()
       myList = QCameraInfo.availableCameras()
       print('List = ', myList)
       self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    mw = MainWindow()
    sys.exit(app.exec())

结果:

List =  []

QtMultimedia 相机和 Windows10 是否存在我不知道的基本问题?

注意:我已经成功地使用QtMultimedia 显示了从文件中读取的视频。现在我想从视频流中显示。

我找到了适合我的解决方案。

我读到 Anaconda 不包含完整的 PtQt5 模块集。解决方案是卸载 Anaconda(或 Miniconda),安装基本 Python 和 pip install 所有需要的软件包。我还从 PyPI 下载了 Spyder,所以变化不大。

在 Anaconda 中,this QCamera example 由于几个导入错误而无法执行。在将 Anaconda 环境替换为基本 Python 环境(并安装所需的软件包)后,它现在可以完美运行。