使用视频混合呈现器

就性能和广度功能而言,视频混合呈现器 (VMR) 筛选器表示Windows平台上视频呈现中的下一代。 VMR 取代覆盖Mixer视频呈现器,并添加了许多新的混合功能。

VMR 有两个版本:

  • VMR-7,它使用 DirectDraw 7 进行呈现。
  • 使用 Direct3D 9 的 VMR-9。

VMR-7 在 WINDOWS XP 及更高版本上可用,但不能重新分发。 VMR-9 可用于 DirectX 9 支持的所有平台上的重新分发。 这两个 VMR 筛选器在实现和它们公开的接口中非常相似。

由于 DirectDraw 7 和 Direct3D 9 之间的基本差异,VMR-9 有自己的 CLSID 及其自己的接口、结构和枚举类型集,这些接口、结构和枚举类型并不总是与 VMR-7 的相应数据类型相同。 VMR-9 接口以“9”(例如 IVMRStreamConfig9)结尾,并且结构和枚举类型的名称中都有“VMR9”,以将它们与与 VMR-7 一起使用的数据类型区分开来。

为了确保向后兼容性,VMR-9 不是任何系统上的默认呈现器。 若要使用 VMR-9,必须使用 IFilterGraph::AddFilter 方法显式将其添加到筛选器图,并在将其连接到任何上游筛选器之前对其进行配置。

本文包含以下各节。 除非有说明,这些部分中的信息同时适用于 VMR-7 和 VMR-9 筛选器。

视频混合呈现器筛选器 7

视频混合呈现器筛选器 9