我将一片缓冲区传递给Goertzel过滤器。缓冲区包含18Khz的频率和静音。每个的持续时间是75毫秒。采样率= 44.1。 它就像FSK一样。
我试图检测18KHz的Goertzel滤波器的阈值。 我想到用下一个公式测量缓冲区的平均能量:
function fmtField(fieldName, separator)
{
var str = {};
if(fieldName.rawValue == null){
str = "";
}
else{
str = fieldName.rawValue+ separator;
}
return str;
}
现在,我的问题是能量是如何与Goertel过滤器的返回值相关联的。我注意到,由于我测量的频率较低,因此Goertel的幅度较小。 例如:如果我的Goertel被调整为检测到13K,我得到50到100之类的东西; 因为,18k我得到更小的数字:0.00001到0.005。 我传递的数组是float [],所有数字都在+ -1范围内。 那有什么好的解决方案吗? 谢谢