MPEG1Source 示例

演示如何在 Microsoft Media Foundation 中编写自定义媒体源。 此示例实现一个媒体源,该媒体源分析 MPEG-1 系统层流并生成包含 MPEG-1 有效负载的示例。

演示的 API

此示例演示以下 Media Foundation 接口:

在查看此示例之前,可能需要查看 WavSource 示例,该示例提供了媒体源的更简单实现。 MPEG1Source 示例添加了一些可在媒体源的大多数实际实现中找到的功能:

  • 多个流
  • 异步方法
  • 异步 I/O

在 Windows SDK for Windows Server 2008 中,此示例还包括一个示例 MPEG-1 视频解码器,用于显示每个视频帧的时间代码。 (它实际上不会解码 MPEG-1 位流。)

从 Windows SDK for Windows 7 开始,解码器已移动到单独的示例。 请参阅 解码器示例

使用情况

MPEG1Source 示例生成一个 DLL,该 DLL 是媒体源、媒体源的字节流处理程序和解码器 MFT 的 COM 服务器。 在使用媒体源之前,必须注册 DLL。

若要使用媒体源,可以运行 BasicPlayback 示例。 如果选择 MPEG-1 文件进行播放,则源解析程序将自动加载媒体源。 (如果发生错误,请确保已成功注册 MPEG1Source DLL.)

还可以使用 TopoEdit 工具生成包含媒体源的播放拓扑。 有关 TopoEdit 的详细信息,请参阅 TopoEdit

要求

产品 Version
Windows SDK Windows 7

 

下载示例

此示例在 Windows 经典示例 github 存储库中提供。

Media Foundation SDK 示例

媒体源

方案处理程序和Byte-Stream处理程序

教程:编写自定义媒体源

WavSource 示例