获取iOS上的峰值音频输入

时间:2014-04-01 20:04:30

标签: ios core-audio

在iOS 7上,如何在0到1之间的范围内获取当前麦克风输入音量?

我已经看过像this one这样的几种方法,但结果让我感到困惑。

peakPowerForChannel:的返回值记录在-160到0的范围内,0表示最响亮,-160表示接近绝对静音。

问题:如果有一个相当大的空间和一个短而大的噪音,电源会瞬间上升,但需要很长时间才能恢复到相当水平(比实际噪音长得多......)

我想要的:基本上我想要一个Quartz Composer的Audio Input补丁及其Volume Peak输出的精确副本。有什么提示吗?

1 个答案:

答案 0 :(得分:0)

要获得类似的音量峰值测量,您可能必须通过iOS音频队列API(或RemoteIO音频单元)输入原始音频,并分析每个音频回调中的原始PCM波形样本,寻找幅度最大值您想要的帧宽或分析时间。