如何实现DShow过滤器以读取专用的AVI文件

时间:2011-04-20 18:53:24

标签: filter directshow avi winapi

我正在尝试编写DirectShow过滤器,它会在开头读取文件包含一些xml数据,在它之后读取avi视频。我要在过滤器中打开一个文件,跳过xml数据并开始播放。我在Windows SDK中找到了播放BMP文件的示例(Microsoft SDKs \ Windows \ v7.1 \ Samples \ multimedia \ directshow \ filters \ pushsource)。我在哪里可以窥探如何读取avi帧,转换它们并将其推入输出引脚? 抱歉我的英文。

1 个答案:

答案 0 :(得分:0)

您可以找到AVI文件规范here。但是有一个更简单的解决方案:使用标准的AVI Splitter过滤器,它是DirectShow的一部分。只需从SDK中获取另一个示例过滤器 - Async并使其读取您的XML数据,然后充当常规文件源,但从文件中读取数据并使用一些偏移的偏移量。这样,所有解析工作都将由AVI Splitter完成,所有过滤器需要做的就是读取Splitter请求的文件部分。