当前位置: 代码迷 >> 多媒体/流媒体开发 >> 小弟我使用DS 的 RenderFile 函数智能建立链接,但怎么完全释放? (有内存泄漏)
  详细解决方案

小弟我使用DS 的 RenderFile 函数智能建立链接,但怎么完全释放? (有内存泄漏)

热度:8561   发布时间:2013-02-26 00:00:00.0
我使用DS 的 RenderFile 函数智能建立链接,但如何完全释放? (有内存泄漏)
如题。

我参考的ds程序为 VMR9Allocator , 只在原程序加了“每隔4秒则重新打开该文件进行播放” 的修改。

在测试中发现内存泄漏,详情如下:

在某些机器上,播放RMVB,泄漏的很快,5秒泄漏1m, 大概2个小时程序崩溃; 播放其他编码格式如Xvid,iv52,仍然有泄漏,但是相对较慢,通宵一天才泄漏50m;

在另外一批机器上,无论播放什么格式,泄漏都相当缓慢,通宵运行2,3天才泄漏20m。

请问是何缘故? 我猜测可能是renderfile智能链接的filter在最后没有完全的释放?

------解决方案--------------------------------------------------------
你能肯定所有机器的所有环境都完全相同么?
------解决方案--------------------------------------------------------
如果程序在放歌过程中内存在涨,那一般可能是你解码filter的问题,
如果在关掉,打开新文件播放时内存才涨,那就是你dshow应用的问题

------解决方案--------------------------------------------------------
如果filter本身有内存泄漏,关掉并打开新文件时内存也会涨的
------解决方案--------------------------------------------------------
是您FILTER中有内存泄露

我特地在我机器上测试了,都是OK,无内存泄露

您可以提供那个图还有FILTER嘛?我帮您查下