VideoInfo2 格式类型

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

预览引脚的首选媒体类型可能是采用 VIDEOINFOHEADER2 格式的类型。 此格式结构支持交错视频和图片纵横比等特殊功能。

VMR-7 和 VMR-9 都直接支持 VIDEOINFOHEADER2 。 将 VMR 连接到解码器时,它们将协商最佳格式。 但是,较旧的视频呈现器筛选器不支持 VIDEOINFOHEADER2。 若要将 VIDEOINFOHEADER2 格式类型与视频呈现器筛选器一起使用,必须将 覆盖混音器 筛选器插入到图形中。

  1. 使用 IPin::EnumMediaTypes 方法枚举解码器筛选器的输出引脚上的首选媒体类型。
  2. 检查枚举序列中的第一个媒体类型。
  3. 如果格式类型为 FORMAT_VideoInfo2,请将输出引脚连接到覆盖混合器。 然后将覆盖混合器连接到视频呈现器。 (请参阅 视频端口 Pins.)

如果不关心这些功能,则无需使用覆盖混合器。 将解码器直接连接到视频呈现器,它将改为使用 VIDEOINFOHEADER 格式进行连接。

高级捕获主题

在视频捕获中使用覆盖混音器