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


Метод CImageAllocator.NotifyMediaType

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

Метод NotifyMediaType информирует объект о текущем типе мультимедиа.

Синтаксис

void NotifyMediaType(
   CMediaType *pMediaType
);

Параметры

pMediaType

Указатель на объект CMediaType или NULL для очистки типа мультимедиа.

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

Этот метод не возвращает значение.

Комментарии

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

Объект CImageAllocator сохраняет указатель pMediaType в переменной члена m_pMediaType . Таким образом, если вызывающему объекту необходимо освободить объект CMediaType , он должен обновить распределитель, повторно вызвав этот метод с помощью нового указателя или со значением NULL . В противном случае может возникнуть ошибка, когда распределитель пытается ссылаться на старый указатель.

Требования

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

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

Класс CImageAllocator