最小化DirectShow内存消耗

时间:2009-09-28 09:22:36

标签: c# .net memory directshow

所以,我有一个应用程序通过局域连接流式传输两个视频源。每个视频都有自己的滤波器图形,通过解码滤波器和Inifinite Pin Tee滤波器放置视频,然后有一个GMFBridge滤波器,用于使用WM ASF滤波器打开/关闭录制。还有一个视频渲染器在tee过滤器的不同输出端运行。

现在,这一切都没有问题,但是整个应用程序的内存消耗超过80 MB,并且在打开录制时可以达到100以上。

我想知道是否有任何关于最小化DirectShow内存消耗的提示?

我通过DirectShowLib互操作库使用C#(。NET 2.0)中的DirectShow。

干杯

1 个答案:

答案 0 :(得分:1)

我对.NET应用程序的第一个建议是不信任任务管理器。使用性能监视器并添加专用字节计数器。这将告诉你真正的内存使用情况。

另一个注意事项,因为您使用的是第三方过滤器(封闭源代码),除了降低视频分辨率和帧速率外,实际上没有降低内存使用率的选项。