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


Метод CBaseFilter.NotifyEvent

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

Метод NotifyEvent отправляет уведомление о событии диспетчеру графов фильтров.

Синтаксис

HRESULT NotifyEvent(
   long     EventCode,
   LONG_PTR EventParam1,
   LONG_PTR EventParam2
);

Параметры

Код события

Код уведомления о событии.

EventParam1

Первый параметр события.

EventParam2

Второй параметр события.

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

Возвращает значение HRESULT . Возможные значения включают значения, приведенные в следующей таблице.

Код возврата Описание
S_FALSE
Диспетчер графов фильтров не принимает уведомления о событиях.
S_OK
Успешно.
E_NOTIMPL
Фильтр не имеет указателя на интерфейс IMediaEventSink .

Комментарии

Список кодов уведомлений и значений параметров см. в разделе Коды уведомлений о событиях.

В базовом классе, если код события EC_COMPLETE, метод задает параметру EventParam2 указатель на интерфейс IBaseFilter фильтра.

Требования

Требование Значение
Заголовок
Amfilter.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

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

Класс CBaseFilter