Установите веб-камеру на другую шину USB

Моя цель - снимать с двух веб-камер одновременно с разрешением 640x480. В настоящее время я испытываю проблему, когда мои две веб-камеры подключены к разным USB-портам, но используют одну и ту же шину USB. Поэтому я получаю следующую ошибку

libv4l2: ошибка при включении потока: на устройстве не осталось места

VIDIOC_STREAMON: на устройстве не осталось места

и не в состоянии захватить с обеих камер в 640x480. Поэтому я хотел бы иметь возможность настроить каждую веб-камеру Logitech на отдельную шину, которая, как я полагаю, позволит мне снимать с обеих веб-камер одновременно.

Это то, что показывает вывод lsusb

  • Шина 001 Устройство 001: ID 1d6b:0002 Корневой концентратор Linux Foundation 2.0
  • Шина 002 Устройство 001: ID 1d6b:0002 Корневой концентратор Linux Foundation 2.0
  • Шина 003 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 004 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 005 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 006 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 007 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 008 Устройство 001: ID 1d6b:0001 Корневой концентратор Linux Foundation 1.1
  • Шина 001 Устройство 003: ID 05ca:18b0 Ricoh Co., Ltd Sony Vaio Встроенная веб-камера
  • Шина 003 Устройство 002: ID 147e:1000 Upek Биометрический сенсорный чип / сенсорная полоска Датчик отпечатков пальцев
  • Шина 002 Устройство 012: ID 046d:0821 Logitech, Inc. HD веб-камера C910
  • Шина 002 Устройство 007: ID 046d:0991 Logitech, Inc. QuickCam Pro для ноутбуков

Есть ли способ настроить каждую веб-камеру на использование другой шины USB?

1 ответ

Решение

Ответ: это на самом деле не ваша проблема.

Некоторые камеры Logitech имеют ошибку распределения пропускной способности USB. Давайте посмотрим, так ли это.

cat /sys/kernel/debug/usb/devices | grep "B: "

даст вам текущее распределение пропускной способности всех USB-концентраторов, вывод будет примерно таким:

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
B:  Alloc= 35/900 us ( 4%), #Int=  3, #Iso=  0
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0

Как вы можете видеть, у меня в настоящее время выделено 35 Мбит / с моего концентратора USB3. Однако проблема с некоторыми камерами Logitech заключается в том, что они всегда выделяют столько, сколько могут получить (480 Мбит / с), независимо от режима. Итак, все сводится к простой арифметике: 480 + 480 > 900, а вторая камера просто "не подходит".

Пока ваши камеры подключены к одному и тому же аппаратному USB-концентратору, у вас будет эта проблема.

Также имейте в виду, что веб-камера обычно выделяет 128 Мбит / с в MJPEG и 424 Мбит / с в несжатом режиме для 640x480.

Другие вопросы по тегам