iOS下音频开发框架总结以及回音消除

这张图是Apple开发文档中的一张,概括了音频开发中从上倒下所有可用的框架。


iOS下音频开发框架总结以及回音消除_第1张图片

1. Media Player

主要是用于文件类型的音频数据处理,配置好播放录制环境,设定好输入输出路径,然后start,就不用管了。

2. OpenAL和Audio Toolbox

这两个都能对内存(流)形式的音频数据进行处理,在播放过程中还可以对数据进行操作。这两者使用起来稍微有点复杂。

这两者不同点是OpenAL可以放入一段数据,它播放一段数据,顺序执行。

Audio Toolbox是一个音频队列Audio Queue Service,它采用回调方式处理数据,如果处理实施音频流,还得重新写一个缓存。

3. Audio Unit

Audio Unit是最底层的框架,它有两个好处。一个是实时响应最快,另一个是它提供了很多种类的unit,可以对音频做很专业的处理(包括acoustic echo cancelation回音消除)

它的开发难点在于各种参数的配置,参数晦涩难懂,建议参看官方demo。

其中kAudioUnitSubType_VoiceProcessingIO用于打开回音消除功能。。。。。。

你可能感兴趣的:(iOS下音频开发框架总结以及回音消除)