如何从Core-Audio中的输入设备获取音量数据?

时间:2010-07-08 22:34:25

标签: macos audio core-audio volume

我正在尝试使用Core-Audio获取输入设备听到的音量​​。

到目前为止,我已将AudioDeviceAddIOProcAudioDeviceStartAudioDeviceIOProc函数一起使用,以AudioBufferList的形式获取包含AudioBuffer的输入数据。

如何从AudioBuffer获取数据量?或者我是否完全以错误的方式解决这个问题?

1 个答案:

答案 0 :(得分:1)

在Mac OS X 10.5上,您提到的API已弃用,您应阅读Tech Note TN2223。

无论如何,假设您正在以32位浮点格式获取线性PCM样本数据的缓冲区,您只需编写一个for循环来确定每个样本的fab(y),然后获取所有这些值的最大值。然后你可以保存该值或将其转换为分贝。