背景信息:
在 Windows 10 PC 上,我有三个摄像头连接到 USB 3.2 Gen 2 集线器,该集线器连接到我 PC 上的 USB 3.0 根集线器。我正在使用 Python 中的 OpenCV 查看视频流,因为我需要将像素数据从 16 位转换为 8 位。
问题:
我可以单独从任何一台摄像机传输视频,它们工作正常。我可以从任何一对摄像机传输视频。但我无法同时从所有三台摄像机传输视频。我看到每台摄像机的图像都出现了,但视频显然没有正确传输,帧速率似乎远低于 1 fps。其中一台出现严重故障。
分析:
每个摄像头都是 1280x480 16 位像素,以每秒 100 帧的速度运行。因此,每个摄像头的数据速率应略低于 1Gbps。三者合计约为 3Gbps。
我原本以为我应该能够同时播放所有三个视频。我的假设是 USB 3.0 端口已经饱和。
问题:
- 如何测量进入 USB 端口的实际数据速率?
- 我可以检测 USB 端口是否饱和吗?
- 还有其他方法可以分析这个问题吗?