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


Метод IPin::ReceiveConnection (strmif.h)

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

Метод ReceiveConnection принимает подключение из другого контакта.

Приложения не должны вызывать этот метод. Этот метод вызывается другими фильтрами во время закрепления соединения.

Синтаксис

HRESULT ReceiveConnection(
  [in] IPin                *pConnector,
  [in] const AM_MEDIA_TYPE *pmt
);

Параметры

[in] pConnector

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

[in] pmt

Указатель на структуру AM_MEDIA_TYPE , указывающую тип носителя для соединения.

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

Возвращает значение HRESULT . Ниже приведены возможные значения.

Код возврата Описание
S_OK
Успешно.
E_POINTER
Аргумент указателя NULL.
VFW_E_ALREADY_CONNECTED
Контакт уже подключен.
VFW_E_NOT_STOPPED
Не удается подключиться, пока фильтр активен.
VFW_E_TYPE_NOT_ACCEPTED
Указанный тип носителя недопустим.

Комментарии

Когда выходной контакт подключается, он вызывает этот метод во входном контакте. Входной пин-код должен убедиться, что указанный тип носителя является допустимым. Может также потребоваться проверка для других требований к подключению, относящихся к фильтру владельцев. Если подключение подходит, входной контакт должен вернуть S_OK, а также выполнить следующие действия:

  • Сохраните тип мультимедиа и верните тот же тип в методе IPin::ConnectionMediaType .
  • Сохраните интерфейс IPin выходного контакта (pConnector) и верните этот указатель в методе IPin::ConnectedTo .
Если подключение непригодно, пин-код должен возвращать код ошибки.

Класс CBasePin реализует базовую платформу для этого метода, включая хранение типа мультимедиа и указателей IPin .

Требования

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

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

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

Как подключить фильтры

Интерфейс IPin