Порядок появления веб-камеры - PullRequest
0 голосов
/ 23 марта 2011

Я разработал виртуальную веб-камеру (фильтр DShow) и теперь хочу сделать ее первой в списке веб-камер в приложениях.Я знаю, что приложения используют DirectShow или VFW для перечисления видеоустройств, но как я могу заставить их отображать мою веб-камеру как «стандартную»?

Заранее спасибо!

1 Ответ

0 голосов
/ 06 июня 2011

Вы можете попробовать использовать заслугу фильтра.Это не достигает «по умолчанию» (не уверен, что это может быть достигнуто), но, по крайней мере, может привести ваш фильтр к началу списка, в зависимости от того, как клиентское приложение сортирует свой список захвата (например, по алфавиту или по приоритету).

Заслуга фильтра позволяет поставщикам фильтров присваивать «приоритетный» уровень своему фильтру.Эта заслуга фильтра регистрируется в фильтре, как описано в дескрипторе реестра вашего фильтра.Например:

<code>
AMOVIESETUP_FILTER sudFilterReg = {
    &CLSID_SomeFilter,      // Filter CLSID.
    g_wszName,              // Filter name.
    MERIT_PREFERRED,        // Merit.
    1,                      // Number of pin types.
    &sudPins                // Pointer to pin information.
};

Обычно используется с фильтрами кодера / декодера.Например, в ситуации, когда DirectShow использует автоподключение для выбора фильтра декодера MJPEG из списка нескольких кодеков MJPEG, зарегистрированных в системе пользователя, он должен выбрать фильтр с наибольшим значением качества.

Этот подход также дает конечному пользователю возможность видеть / настраивать значения заслуг для всех фильтров, зарегистрированных в их системе (см. Filmerit http://paul.glagla.free.fr/filmerit_en.htm), что является отличным бесплатным инструментом для этого.

...