如何确定AUSampler实例的大小?

时间:2012-03-12 01:50:42

标签: ios core-audio

如何判断AUSampler的实例使用了多少内存(可能包括soundFont数据大小)。

我尝试了一个简单的sizeof(下面),但这并没有给我任何理解。 4? 4什么?

上下文:我正在为iOS创建一个音乐玩具。 AUSampler是单声道的,因此使用相同采样器实例的两个音轨会将彼此的音符切断。另外soundFonts可能有很多预设,所以如果我想使用相同soundFont的不同预设,我需要创建多个AUSampler个实例。由于soundFonts可以运行到几兆字节或更多,我想确定我的内存开销是多少。 - 谢谢!

节点:4.000000单位:4.000000

Float64 nodeSize = sizeof(samplerNode);
Float64 unitSize = sizeof(samplerUnit);

printf("node: %f unit: %f \n", nodeSize, unitSize);

1 个答案:

答案 0 :(得分:1)

使用Xcode中的Instruments报告应用程序的内存使用情况,然后尝试使用不同数量的工具运行您的应用程序,以获取数据以计算每个附加数据库的内存使用情况。

任何对象(例如AUSampler)使用的内存量可能与对象的大小(远大于对象指针的大小)非常不同。