CBaseMediaFilter.CBaseMediaFilter 构造函数

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

构造函数方法。

语法

CBaseMediaFilter(
   const TCHAR     *pName,
         LPUNKNOWN pUnk,
         CCritSec  *pLock,
         REFCLSID  clsid
);

参数

pName

指向包含对象名称的字符串的指针。

pUnk

指向此对象的所有者的指针。 如果对象已聚合,请传递指向聚合对象的 IUnknown 接口的指针。 否则,请将此参数设置为 NULL

pLock

指向 CCritSec 锁的指针,用于序列化状态更改。

clsid

对象的类标识符。

备注

如果另一个对象包含或聚合对象 CBaseMediaFilter则 CCritSec 锁可能为对象 CBaseMediaFilter 外部。 在这种情况下,将指针传递到 pLock 中的锁。

否则,可以:

  • 派生一个同时继承 CBaseMediaFilterCCritSec 的类。 对于 pLock,传递此指针。
  • 派生一个继承 CBaseMediaFilter 并包含 CCritSec 成员变量的类。 对于 pLock,传递该变量的地址。

要求

要求
标头
Amfilter.h (包括 Streams.h)

Strmbase.lib (零售版本) ;
Strmbasd.lib (调试生成)

另请参阅

CBaseMediaFilter 类