CImageAllocator.NotifyMediaType 方法

[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayerIMFMediaEngine音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 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 类