我正在尝试使用AudioKit为iOS实现SLM应用。因此,我需要确定不同的响度值,以便a)显示当前的响度(平均一秒),b)进行进一步的计算(例如,计算较长时间范围内的“等效连续声级”)。该应用程序应该能够跟踪频率加权的分贝值,例如dB(A)和dB(C)。
我确实了解到,我面临的一些问题与我对信号和音频处理领域的普遍缺乏了解有关。我的问题是如何使用AudioKit处理这项任务。我将描述我当前的过程,并希望获得一些投入:
AKMicrophone
和AKFrequencyTracker
的实例Timer
)创建一个1/48_000.0
实例amplitude
和frequency
。用20 * log10(amplitude) + calibrationOffset
从幅度计算一个分贝值(将通过专业SLM在每个设备型号上确定校准偏移)。根据频率加权(A和C)计算所获取频率的偏移,并将其应用于初始dB值。将dB,dB(A)和dB(C)值存储在阵列中。我在其他地方读到,使用计时器不是最佳方法。还有什么我可以用于“采样”? frequency
中的AKFrequencyTracker
是什么?此频率是否足以确定dB(A)和dB(C)值,或者我需要为此使用AKFFTTap
?如何从AKFrequencyTracker
取平均值,即RMS使用什么时间范围?
可能相关的问题:Get dB(a) level from AudioKit in swift,AudioKit FFT conversion to dB?