Несколько веб-камер на одном USB-контроллере

Я хотел бы открыть потоки 720p двух веб-камер Canyon CNE-CWC3 на одном USB-контроллере (используя концентратор USB 2.0) с помощью OpenCV. Это работает довольно непредсказуемо; иногда это удается, но в большинстве случаев он не может открыть второй поток. Я проверил использование пропускной способности потоков в VLC, оно достигает 150-160 Мбит/с на поток, поэтому два потока должны без проблем вписываться в пропускную способность USB 480 Мбит/с. Я предполагаю, что драйвер выделяет больше места для потока во время инициализации, и это причина, по которой второй поток не работает.

Есть ли обходной путь для этой проблемы (либо в Win, либо в Linux), или мне следует переключиться на другие веб-камеры? Знаете ли вы какой-нибудь «надежный» тип, для которого эта проблема наверняка не возникнет?


person dlpyth    schedule 05.07.2016    source источник
comment
Нет 480 Мбит/с; всего 192...   -  person Roman R.    schedule 05.07.2016
comment
Снижение скорости передачи данных путем изменения разрешения не решает проблему (как указано ниже), поэтому даже если это не 480 Мбит/с, а 192, это не объясняет поведение. Не могли бы вы пояснить, почему эта установка иногда работает безупречно? Кроме того, вы думаете, что изменение типа веб-камеры может решить проблему? Сообщения, которые вы отметили, не отвечают ни на один из этих вопросов. Спасибо!   -  person dlpyth    schedule 05.07.2016
comment
Вопрос, который вы задали (с упором на пропускную способность), действительно дублирует многие другие вопросы. И комментарий 480/192 тоже на хорошем счету. Существуют камеры, которые прекрасно работают, когда две или более подключены к одному и тому же USB-концентратору, при условии, что общая пропускная способность не превышает предела. В вашем конкретном случае это может быть проблема с драйвером, как вы предположили (захват слишком большой полосы пропускания, не смотря на низкое разрешение?), Что снова приводит к проблеме со скоростью 192 Мбит / с, или это может быть что-то другое, специфичное для оборудования. К вашему сведению — относительно недавно я видел установку с двумя Logitech C930, работающими рядом друг с другом.   -  person Roman R.    schedule 05.07.2016
comment
Также одна вещь, которую вы можете попробовать с Windows, — это удалить драйвер веб-камеры, специфичный для поставщика. Если камера совместима с UVC и стандартный драйвер MS (особенно в более поздних версиях Windows) подхватывает ее, я ожидаю, что драйвер будет точно обрабатывать пропускную способность.   -  person Roman R.    schedule 05.07.2016
comment
Спасибо за подробный ответ, очень признателен.   -  person dlpyth    schedule 05.07.2016


Ответы (1)


Я столкнулся с этой проблемой в Linux. Возможное решение зависит от драйвера; довольно часто драйвер выделяет больше пропускной способности, чем необходимо. В моем случае я решил проблему настройкой драйвера, но это не гарантирует работу. Чтобы оценить необходимую пропускную способность, значения VLC могут дать вам некоторую оценку, но часто чипу камеры требуется более высокая пиковая пропускная способность, поскольку он передает данные в пакетах. Может помочь уменьшение разрешения одной из камер.

person Alexander Ekzhanov    schedule 05.07.2016
comment
Спасибо за предложение. Пробовал уменьшать разрешение до 160x120, но проблема не исчезла. - person dlpyth; 05.07.2016