OpenCV: как быть способным захватывать кадры с одной камеры с помощью двух разных приложений?
Итак, у меня есть 2 разных приложения, которые используют веб-камеры (в Windows), я создал их, но мне нужно, чтобы они были отдельными, автономными приложениями. Я хочу, чтобы они могли снимать с одной и той же камеры. Что я должен добавить к своему захватывающему коду OpenCV?
3 ответа
Ты не можешь Только одно приложение может получить доступ к любому устройству одновременно - даже с обычными устройствами ввода-вывода, такими как жесткие диски.
Если несколько приложений могут получить доступ к устройству одновременно, было бы запутано, чьи инструкции следовать.
Вы можете использовать SplitCam, хотя. Он подключится к веб-камере (и никакое другое приложение не может). Но это создаст виртуальные устройства, к которым могут подключаться другие приложения.
Не уверен, но я думаю, что единственный способ - использовать COM (в Windows), потому что вы не можете создать два фильтра захвата для одного устройства. Но вы можете создать фильтр сплиттера, поместить его в граф DirectShow и предоставить к нему доступ через COM. Я не знаю, как это сделать, просто идея.