Существует ли независимый от платформы способ составления списка устройств ввода видео - PullRequest
1 голос
/ 29 апреля 2020

Перед открытием создания захвата путем создания объекта VideoCapture я хочу отобразить список доступных устройств для выбора. Я считаю, что это можно сделать в Windows с помощью DirectShow и в Linux, проверив записи / dev / video *.

Но мне интересно, есть ли какой-нибудь независимый от платформы способ получить этот список?

ПРИМЕЧАНИЕ. Я знаю, что могу перечислять устройства, используя VideoCapture.open и проверяя isOpen, но я хочу иметь возможность отображать и осмысленное имя, и я не думаю, что VideoCapture дает мне это?

1 Ответ

0 голосов
/ 30 апреля 2020

Я понимаю, что доступные устройства означает камеры , подключенные к вашему компьютеру.

  • Во-первых, чтобы иметь возможность использовать VideoCapture с камерой; камера не должна иметь водителя. Как правило, VideoCapture доступно для использования с простыми камерами, такими как веб-камеры, некоторые USB-камеры и т. Д. c.
  • OpenCV не имеет свойства подсчитывать или перечислять доступные камеры, которые подключены. Вы также можете проверить этот пост .
  • Только для подсчета камер, вы также можете использовать грубый способ, подобный этому:

Пример:

VideoCapture cap;
    int device_counts = 0;
    while ( true ) {
        if ( !cap.open(device_counts++) ) {
            break;
        }
    }
  • Но, на мой взгляд, лучшим решением будет использование фреймворка для достижения этой цели. Например Qt Creator .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...