Поделиться через


Метод ICaptureGraphBuilder2::FindPin (strmif.h)

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Метод FindPin извлекает определенный контакт в фильтре или определяет, соответствует ли данный контакт указанным критериям.

Синтаксис

HRESULT FindPin(
  [in]  IUnknown      *pSource,
  [in]  PIN_DIRECTION pindir,
  [in]  const GUID    *pCategory,
  [in]  const GUID    *pType,
  [in]  BOOL          fUnconnected,
  [in]  int           num,
  [out] IPin          **ppPin
);

Параметры

[in] pSource

Указатель на интерфейс фильтра или на интерфейс в контакте.

[in] pindir

Член перечисления PIN_DIRECTION , указывающий направление закрепления (входные или выходные данные).

[in] pCategory

Указатель на GUID, указывающий одну из категорий контактов, перечисленных в разделе Набор свойств закрепления. Чтобы сопоставить любое закрепление независимо от категории, задайте для этого параметра значение NULL.

[in] pType

Указатель на GUID основного типа, указывающий тип носителя. Используйте значение NULL для соответствия любому типу мультимедиа.

[in] fUnconnected

Логическое значение, указывающее, следует ли разъединять контакт. Если задано значение TRUE, контакт должен быть отключен. Если задано значение FALSE, контакт может быть подключен или отключен.

[in] num

Отсчитываемый от нуля индекс извлекаемого контакта из набора совпадающих контактов. Если pSource является указателем на фильтр и несколько контактов соответствуют условиям поиска, этот параметр указывает, какой пин-код следует извлечь. Если pSource является указателем на закрепление, этот параметр игнорируется.

[out] ppPin

Адрес указателя для получения интерфейса IPin соответствующего контакта.

Возвращаемое значение

Возвращает S_OK, если найден соответствующий контакт, или E_FAIL в противном случае.

Комментарии

Если pSource является указателем на фильтр, метод выполняет поиск n-гомаркера в этом фильтре, соответствующего условиям поиска, где n задается параметром num . Если метод находит соответствующий контакт, он возвращает указатель на контакт в параметре ppPin .

Если pSource является указателем на закрепление, метод проверяет его на соответствие условиям поиска. Если контакт соответствует условиям, метод возвращает S_OK и возвращает указатель на интерфейс IPin контакта в параметре ppPin . В противном случае возвращается E_FAIL.

В любом случае при успешном выполнении метода интерфейс IPin , возвращаемый в параметре ppPin , имеет число невыполненных ссылок. Не забудьте освободить интерфейс, когда вы закончите использовать его.

Как правило, приложению не нужно использовать этот метод. Он предоставляется для необычно сложных задач, когда метод ICaptureGraphBuilder2::RenderStream не может создать граф фильтра. Используйте этот метод, чтобы получить нужный контакт из фильтра захвата, а затем выполнить сборку остальной части графа вручную.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header strmif.h (включая Dshow.h)
Библиотека Strmiids.lib

См. также раздел

Коды ошибок и успешности

Интерфейс ICaptureGraphBuilder2