IMediaFilter::Run 方法 (strmif.h)
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 Run
运行筛选器。
语法
HRESULT Run(
REFERENCE_TIME tStart
);
参数
tStart
与流时间 0 对应的引用时间。
返回值
返回 HRESULT 值。 可能的值包括下表中显示的值。
返回代码 | 说明 |
---|---|
|
转换未完成。 |
|
成功。 转换已完成。 |
注解
筛选器运行时,它可以接收、处理和传递示例。 源筛选器生成新样本,呈现器筛选器呈现它们。
状态转换可能是异步的。 如果 方法在转换完成之前返回 ,则返回值S_FALSE。
Stream时间计算为当前参考时间减去 tStart。 为了计算应何时呈现媒体样本,呈现器会将时间戳与当前流时间进行比较。 因此,时间戳为零的媒体示例应在时间 tStart 呈现。 有关详细信息,请参阅 DirectShow 中的时间和时钟。
当应用程序调用 IMediaControl::Run 方法时,Filter Graph 管理器将在每个筛选器上调用 IMediaFilter::Run
。 它会在将来稍微设置 tStart 的值,以考虑图形延迟。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |
Library | Strmiids.lib |