2016-07-05 31 views
0

Ich möchte 720p Streams von zwei Canyon CNE-CWC3 Webcams auf einem einzigen USB-Controller (mit einem USB 2.0-Hub) mit OpenCV öffnen. Es funktioniert auf ziemlich unvorhersehbare Weise; manchmal ist es erfolgreich, aber meistens kann es den zweiten Stream nicht öffnen. Ich habe die Bandbreitennutzung der Streams in VLC überprüft, sie liegt bei 150-160 Mbps pro Stream, also sollten die beiden Streams problemlos in die 480 Mbps USB-Bandbreite passen. Ich nehme an, dass der Treiber während der Initialisierung mehr Platz für einen Stream reserviert, und das ist der Grund, warum der zweite Stream fehlschlägt.Mehrere Webcams auf einem einzigen USB-Controller

Gibt es eine Problemumgehung für dieses Problem (entweder in Win oder Linux), oder sollte ich zu verschiedenen Webcams wechseln? Kennst du irgendeinen "zuverlässigen" Typ, für den dieses Problem sicherlich nicht auftritt?

+0

Es gibt keine 480 Mbps; nur 192 ... –

+0

Das Herunterfahren der Datenrate durch Ändern der Auflösung löst das Problem nicht (wie unten erwähnt). Selbst wenn es nicht 480 Mbps sondern 192 ist, erklärt dies nicht das Verhalten. Könntest du bitte erklären, warum dieses Setup manchmal fehlerlos funktioniert? Glauben Sie auch, dass sich ändernde Webcam-Typen das Problem lösen könnten? Die von Ihnen markierten Beiträge beantworten keine dieser Fragen. Vielen Dank! – dlpyth

+0

Die Frage, wie du sie gestellt hast (mit Fokus auf Bandbreite), dupliziert tatsächlich viele andere Fragen. Und 480/192 Kommentar ist immer noch in gutem Zustand. Es gibt Kameras, die gut funktionieren, wenn zwei oder mehr mit demselben USB-Hub verbunden sind, vorausgesetzt, die kombinierte Bandbreite überschreitet nicht das Limit. In Ihrem speziellen Fall könnte es Treiberproblem sein, wie Sie vorgeschlagen haben (zu viel Bandbreite ergreifend, nicht auf niedrige res guckend?), Was Sie wieder auf 192 Mbps Problem bringt, oder es kann etwas anderes hardwarespezifisch sein. FYI - Ich habe relativ kürzlich ein Setup gesehen, bei dem 2 Logitech C930 nebeneinander liefen. –

Antwort

0

Ich konfrontiert dieses Problem in Linux. Die mögliche Lösung hängt vom Treiber ab; Es ist durchaus üblich, dass der Treiber mehr Bandbreite als nötig zuweist. In meinem Fall habe ich das Problem gelöst, den Treiber zu optimieren, aber es funktioniert nicht garantiert. Um die notwendige Bandbreite zu schätzen, können VLC-Werte eine gewisse Schätzung liefern, aber oft benötigt der Kamerachip mehr Peak-Bandbreite, da er Daten in Bursts liefert. Die Reduzierung der Kameraauflösung für eine der Kameras kann hilfreich sein.

+0

Danke für den Vorschlag. Ich habe versucht, die Auflösungen auf so niedrig wie 160x120 zu senken, aber das Problem nicht gelöst. – dlpyth