我正在创建一个应用程序,显示1/3倍频程范围内音频信号的频率响应。
我有一个for循环来获取每个样本的频率。我有if语句来检查样本是否在最高20K的频段内
所以例如: if(freq> 14.1&& freq< 17.8){//第一个八度音阶乐队 在图表上绘制此响应 }
我通常会为这些低频获得一个样本,因此绘制图表没有问题。
当我在一个八度音阶中获得多个样本时,我的问题就出现了,我不知道我将在一个乐队中获得多少样本,所以我不能这样做(freqs in this band == 3)getAvg();
我无法弄清楚如何知道我何时拥有一个乐队中的所有频率,这样我就能得到它们的平均值
答案 0 :(得分:1)
将所有样本存储在数组或arraylist中。
一旦创建了所有样本,您可以使用多种技术来计算平均值,但最简单的方法是计算所有样本的总和并将其除以样本数。