0

我正在使用 SampleGrabber 过滤器获取 AVI 文件的帧并在使用 File writer 过滤器将它们写入另一个(新)AVI 文件之前对其进行更改。

我面临的问题是新的 AVI 文件大小大于原始文件。我删除了 SampleGrabber 过滤器,认为这可能是我的代码导致了问题,但新文件的大小仍然大于原始文件。我用graphedit对其进行了测试。使用的过滤器是 File reader->AVI Splitter->AVI Mux->File writer。

我真的很想保留文件大小。是否有任何其他过滤器或属性我必须设置。目前我只是在 GraphBuilder 中添加过滤器并渲染文件。我正在使用 DirectShowLib.Net。

4

1 回答 1

0

我刚刚做了一个快速测试

File source (async) -> AVI splitter -> AVI mux -> file writer

在graphedit中,输出文件似乎总是与我的输入大小相同。我唯一能想到的是您的输入文件可能已被压缩。可能值得使用 gspot 之类的应用程序检查输入文件以确定这一点。据我了解,DirectShow 有时会插入适当的过滤器以建立连接,因此如果您尝试将文件源连接到 AVI 拆分器,它可能会在需要时插入解压缩器。希望这有点用

于 2010-02-05T10:09:06.557 回答