CBaseFilter.Run 方法

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

方法 Run 运行筛选器。 此方法实现 IMediaFilter::Run 方法。

语法

HRESULT Run(
   REFERENCE_TIME tStart
);

参数

tStart

与流时间 0 对应的引用时间。

返回值

如果成功,则返回S_OK,或返回指示错误原因的 HRESULT 值。

备注

如果筛选器已停止,此方法将通过调用 CBaseFilter::P ause 方法来暂停筛选器。 然后,它会在每个筛选器的连接引脚上调用 CBasePin::Run 方法。 最后,它将 CBaseFilter::m_State 成员变量设置为 State_Running。

流时间计算为当前参考时间减去 tStart。 时间戳为零的媒体示例应在时间 tStart 呈现

要求

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

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

另请参阅

CBaseFilter 类