适用于筛选器开发人员的数据流

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

本部分详细介绍数据如何在筛选器图中移动。 它侧重于使用 IMemInputPinIAsyncReader 接口的本地内存传输。 它适用于正在编写自己的自定义筛选器的开发人员。 有关 Microsoft DirectShow 如何处理数据流的一般介绍,请参阅筛选器图中的数据流

大量数据在筛选器图中移动。 它大致分为两类:媒体数据和控制数据。 通常,媒体数据在下游传输,控制数据上游传输。 媒体数据包括构成流的视频帧、音频样本、MPEG 数据包等,但也包括刷新命令、流结束通知和流中传输的其他数据。 控制数据不是媒体流的一部分。 控制数据的示例包括质量控制请求和 seek 命令。

本部分包含以下文章。

质量控制管理

线程和关键部分

编写 DirectShow 筛选器