2016-07-05 89 views
0

我想用OpenCV在单个USB控制器(使用USB 2.0集线器)上打开两个Canyon CNE-CWC3网络摄像机的720p流。它以一种相当不可预测的方式工作;有时会成功,但大多数时候它无法打开第二个流。我已经检查了VLC中流的带宽使用情况,最高流速为每个流150-160 Mbps,因此这两个流应该适合480 Mbps USB带宽,而不会出现问题。我猜驱动程序在初始化时为流分配了更多空间,这就是第二个流失败的原因。单个USB控制器上的多个网络摄像机

是否有解决此问题的方法(在Win或Linux中),还是应该切换到不同的网络摄像头?你知道这个问题肯定不会出现吗?

+0

没有480 Mbps;只有192 ... –

+0

通过改变分辨率降低数据速率并不能解决问题(如下所述),即使它不是480 Mbps而是192,但这并不能解释这种行为。您能否澄清为什么此设置有时完美无瑕?另外,你认为改变摄像头类型可以解决问题吗?您标记的帖子没有回答这些问题。谢谢! – dlpyth

+0

你问的问题(关注带宽)确实重复了许多其他问题。而480/192评论的信誉依然良好。有相机可以正常工作,两个或两个以上连接到同一个USB集线器,但组合带宽不超过限制。在你的具体情况下,它可能是你建议的驱动程序问题(抓住太多的带宽而不是低分辨率?),这又会带你到192 Mbps的问题,或者它可能是硬件特定的。仅供参考 - 我最近看到一款配备2个罗技C930并排运行的设备。 –

回答

0

我在Linux中遇到了这个问题。可能的解决方案取决于驾驶员;驱动程序分配的带宽超过必要的情况很常见。在我的情况下,我解决了调整驱动程序的问题,但不能保证工作。为了估计必要的带宽,VLC值可能会给你一些估计值,但相机芯片通常需要更多的峰值带宽,因为它提供突发数据。降低其中一个摄像头的摄像头分辨率可能会有所帮助。

+0

感谢您的建议。我试图将分辨率降低到160x120,但并未解决问题。 – dlpyth