使用AudioKit测量声音(频率加权)的声音水平
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用AudioKit测量声音(频率加权)的声音水平相关的知识,希望对你有一定的参考价值。
我正在尝试使用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)值存储在数组中。 - 计算给定时间范围(1秒)内数组的平均值。
我在其他地方读到,使用计时器不是最佳方法。还有什么我可以用于“采样”? frequency
的AKFrequencyTracker
到底是什么?这个频率是否足以确定dB(A)和dB(C)值,或者我是否需要AKFFTTap
?如何平均从AKFrequencyTracker
中检索到的值,即RMS使用哪个时间范围?
可能相关的问题:Get dB(a) level from AudioKit in swift,AudioKit FFT conversion to dB?
答案
现在,我正在使用音频套件,并且在相同的地方从音频套件中获取确切的dB值。如果您有任何疑问,请告诉我。谢谢。
以上是关于使用AudioKit测量声音(频率加权)的声音水平的主要内容,如果未能解决你的问题,请参考以下文章
AudioKit 示例 MicrophoneAnalysis 的最大频率