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

3

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

libv4l2: error turning on stream: No space left on device

VIDIOC_STREAMON: No space left on device

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

Вот что выводит lsusb вывод

  • Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  • Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  • Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  • Bus 001 Device 003: ID 05ca:18b0 Ricoh Co., Ltd Sony Vaio Integrated Webcam
  • Bus 003 Device 002: ID 147e:1000 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor
  • Bus 002 Device 012: ID 046d:0821 Logitech, Inc. HD Webcam C910
  • Bus 002 Device 007: ID 046d:0991 Logitech, Inc. QuickCam Pro for Notebooks

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

    
задан lexma 10.12.2012 в 13:04
источник

1 ответ

5

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

Некоторые камеры 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.

    
ответ дан Mike 11.01.2013 в 14:53
источник