如何在Audio Player中实现iPhone的均衡器设置

DSh*_*hah 4 iphone audio objective-c ios

如何为我的iPhone应用程序以编程方式设置低音或其他类型的均衡器?有现成的框架或方法吗?请提供参考..

ric*_*son 5

如果您将音频播放构建为AudioUnit图形,则应该能够使用内置的iPod EQ AudioUnit,以及iPod应用程序中的预设.看一下这个例子,希望能帮助你理解如何做到这一点.

当您阅读代码时,请确保您了解音频单元是图形中的节点,音频信号通过回调流经图形,并且每个节点都可以修改信号到达输出节点(基本上是扬声器.)所以你要做的是将文件加载到内存中,然后在你指定的回调中将PCM(声音样本)数据提供给音频单元.当缓冲区为空时,将调用回调并且您可以填充它.

链接的示例设置混合器节点,输出节点和均衡器节点,将它们连接在一起,并在将它们加载到存储器之后开始播放许多声音文件.

如果iPod EQ AU没有按照您的意愿行事,您可以构建自己的AudioUnit并在以后更换它,但这需要一些DSP知识.您也可以在那里找到一些已经实现为音频单元的开源均衡器(例如,这是Mac平台上用于音乐制作工具的效果的常用格式.)