如何使用iPhone内置麦克风测量声压?

时间:2011-12-30 23:28:19

标签: iphone objective-c audio core-audio avaudiorecorder

我想测量环境声音的响度。在stackoverflow上阅读了很多帖子后,我觉得比以前更加困惑。我不是一个只是程序员的音响工程师。

我想我需要用公式20 * log10(电压/电压_Ref)计算dBSPL

因此,我需要采样内部麦克风电压(或帕斯卡压力?)水平。 AVAudioRecorder类允许我读取peakPowerForChannel,但这会给出160到0之间的dbFS读数。其中0是全功率。如何使用其他API访问电压/压力水平?

我读过大约0 dbFS = 99 db SPL。但这意味着我可以使用peakPowerForChannel读取读取的最大db SPL为99 db SPL。我希望阅读比这更高的水平。

关于此的任何信息都将非常受欢迎 - 我现在有点卡住了。

由于

迈克

1 个答案:

答案 0 :(得分:2)

执行此操作的唯一方法是针对特定距离处的已知声源以及与消声室中的麦克风的关系测试您的特定iOS设备型号(可能还有生产批次)。电压和压力关系既不是Apple规定的,也不是任何API提供的。