Установите веб-камеру на другую шину 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.