DirectX 媒体对象
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
注意
MTO 已被 媒体基础转换 (MMFT) 所取代。 仍支持 DMO 接口。 但是,如果要编写自定义编解码器或音频/视频处理插件,应考虑将其实现为 MFT。
DirectX 媒体对象 (DMO) 是基于 COM 的数据流组件。 在某些方面,DDO 类似于 Microsoft DirectShow 筛选器。 与 DirectShow 筛选器一样,DDO 会获取输入数据并使用它来生成输出数据。 但是,与 DirectShow 的相应 API 相比,DSO) (API 的应用程序编程接口要简单得多。 因此,DSO 更易于创建、测试和使用。 可在许多方案中使用 DSO:
- 基于 DirectShow 的应用程序可以通过名为 DMO 包装器 筛选器的 DirectShow 筛选器使用 DMO。 筛选器和 DSO 之间的区别对应用程序是透明的。 应用程序不直接调用 DMO API。
- 基于 Microsoft DirectSound 的应用程序可以使用音频效果 DSO。 同样,应用程序受到更高级别的 DirectSound API 的防护,不受低级别 DMO API 的侵害。
- 应用程序可以直接使用 DTO。
因此,通过编写 DMO,可以创建可用于各种应用程序的组件。 本文档包含以下部分:
相关主题