CRendererPosPassThru 类
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
类CRendererPosPassThru
处理呈现器筛选器的 seek 命令,方法是将它们上游传递到下一个筛选器。
此类派生自 CPosPassThru 类。 它增加了对从样本到达时缓存时间戳的支持。 使用此类的方式与 CPosPassThru 类相同。 有关详细信息,请参阅 CPosPassThru 文档。
呈现器筛选器必须更新 CRendererPosPassThru
对象的缓存时间戳,如下所示:
- 对于筛选器接收的每个示例,调用 CRendererPosPassThru::RegisterMediaTime 方法。
- 当筛选器停止或收到 EndFlush 调用时,调用 CRendererPosPassThru::ResetMediaTime 方法。
- 当筛选器收到流结束通知时,调用 CRendererPosPassThru::EOS 方法。
有关如何使用此类的示例,请参阅 CBaseRenderer 源代码。
公共方法 | 说明 |
---|---|
CRendererPosPassThru | 构造函数方法。 |
GetMediaTime | 检索当前示例上的时间戳。 |
RegisterMediaTime | 缓存当前示例中的时间戳。 |
ResetMediaTime | 将缓存的时间戳重置为零。 |
EOS | 汇报流结束通知后缓存的时间戳。 |
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|