|
56楼
发表于 2024-4-13 02:31:45
|
只看该作者
山东省济南市
我是用来实现动态音量均衡(又叫响度均衡)的,用来检测系统正在播放的音频是否音量过大,如果过大就降低音量,以实现不同媒体的音量差不多都一样,避免打开一个游戏或电影时声音大吓一跳(高端点的声卡其驱动附带软件都有这功能,我新换的神舟笔记本显然不高端),所以自己写了实现。
要实现这个功能,需要每秒采样音量至少100次。你设置5秒的办法对我来说没有实用价值哦 。
附上解决内存泄漏的修正代码:
每个类增加以下子程序:
.版本 2
.子程序 Release2, 整数型
.参数 this_, 整数型
.局部变量 index, 整数型
index = 2
置入代码 (#COM调用)
返回 (0)
然后在类实现里,在返回前增加上:
.版本 2
' '''这里缺Release,导致泄露
Release2 (pMeterInfo) ' 补上释放,不同的类要释放不同的对象
这样返回前就会释放。不同的com对象,基本都是方法2为Release ,所以不同的对象都调用方法2就都能释放掉。把所有类都加上调用完毕返回前释放,问题就解决了。
|
|