Как получить только фото из вебкамеры, не получая видеопоток?

На один usb порт компьютера через внешние хабы повесить до 50 веб камер и по запросу получить за 1 секунду фото из всех камер. Поскольку все камеры требуют что бы их видеопоток был в канале, задача в лоб не решается. Некий фрилансер предложил такое решение:
"Я пока ничего не могу сказать о 50 камерах на 1 порт (про USB речь идет, я полагаю)
И за 1 секунду - тоже неясно, с асинхронностью у USB неважно.
Это надо опробовать на реальном железе, чтобы оценить.
Одно ясно - с потоковым видео так не получится. Ведь там изохронный режим, а не асинхронный.
Либо получите кучу пустых кадров, либо будете ждать синхронизации каждого.

Любая веб-камера может работать в режиме "фото".
Если Ваши камеры появляются как устройства в панели управления "Сканеры и камеры" или "Devices and Printers" - то это значит, что они доступны как стандартные MAPI-устройства (Multimedia API)
А M3W - это как-раз стандарты веб-камер. По сути - просто стандартная dll.

и работать все это может как-раз так, как Вам надо:
Иннициализация (1 раз в начале)
Дальше в асинхронном цикле:
Выбор устройства по енумератору (камеру такую-то)
Послали команду "shot"
Повесили callback обработчик
пошли к след. камере.
Когда камера отработает - вызовется соотв. callback обработчик, положит фото в файл или куда там надо.
Все будет максимально быстро - камеры не ожидаются, все асинхронно."


После получения аванса этот фрилансер пропал, я так думаю что все его посулы решить задачу указанным способом не более чем развод на деньги. Однако может быть уважаемое сообщество знает способ решения поставленной задачи?
  • Вопрос задан
  • 148 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы