我正在创建一个包含声级计(用户佩戴接触式或喉部麦克风)的应用程序。
我使用的是(已弃用)自定义类SCListener,它使用AudioQueue
并检索值kAudioQueueProperty_CurrentLevelMeter
,该值为0到1之间的值。
我的问题是,在正常使用级别,kAudioQueueProperty_CurrentLevelMeter
值已达到峰值1.0 - 我希望做的是抑制或降低接触式麦克风的输入灵敏度,因此,尖叫声或真正响亮的大喊大叫注册为1.0而非常规说话。
通过我的搜索,我看到了对音频单元的一些讨论,但没有找到我能够理解的任何文档或示例。
有没有办法可以降低应用程序的灵敏度或增益或输入线?非常感谢任何帮助!
答案 0 :(得分:0)
目前似乎没有公共API可以手动调整iOS设备上的麦克风输入增益。
或者,您可以设置音频队列或RemoteIO音频单元,分析您在回调缓冲区中找到的PCM样本,并根据需要计算您自己的幅度包络(或光谱加权幅度等)和比例。但那是在麦克风输入采样之后。