Удаление чересстрочного видео с DirectShow

(Добавлять KSPROPERTY_CAMERACONTROL_SCANMODE в KSPROPERTY_VIDCAP_CAMERACONTROL?)

Работая с веб-камерой, я получаю чересстрочное видео. Доступ к этой веб-камере осуществляется с помощью DirectShow с использованием библиотеки videoInput (как часть OpenCV).

Я не могу найти способ управления этим (чересстрочным) режимом с помощью доступных в настоящее время опций / перечислений в OpenCV, поэтому я покопался в MSDN и обнаружил следующее:

  • IAMCameraControl Интерфейс может быть использован для получения / установки различных свойств, если они перечислены в PROPSETID_VIDCAP_CAMERACONTROL (http://msdn.microsoft.com/en-us/library/dd389145(v=vs.85).aspx#methods)
  • PROPSETID_VIDCAP_CAMERACONTROL перечисляет 3 блока перечислений (один для «до класса USB-видео», один для UVC и один для Win8), и среди этих значений есть тот, который мне интересен! Это KSPROPERTY_CAMERACONTROL_SCANMODE (http://msdn.microsoft.com/en-us/library/ff567802(v=vs.85).aspx)
  • У меня установлен Windows 7.a SDK и в C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\strmif.h Файл, который я вижу, представляет собой список значений, который охватывает только «оригинальный» набор, который предварительно UVC, поэтому он не имеет контроля для чересстрочного режима. Перечисление в этом файле выглядит так с сайта MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/dd318253(v=vs.85).aspx
  • Затем я нашел этот форум, где человек заявляет: «Мне пришлось обновить перечисление CameraControlProperty», чтобы добавить необходимые свойства, и это сработало для него (http://sourceforge.net/p/directshownet/discussion/460697/thread/562ef6cf/)

Мой вопрос:
Как? 🙂 Что нужно сделать, чтобы добавить необходимое значение (или набор значений), которые предположительно поддерживаются системой? Что мне не хватает?

MSDN, кажется, держит карты близко к своему телу и не раскрывает многое, поэтому я прошу хороших людей здесь о помощи.

Я надеюсь, что кто-то там понял, как это сделать, и может поделиться мудростью.

Моя конечная цель состоит в том, чтобы использовать setVideoSettingCamera() контролировать чересстрочную развертку (чтобы полученное изображение не имело этих черных линий)

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]