Audio Unit 能做什么
Audio Unit 可以实现混音、均衡器、音频格式转化、实时的音频录制和播放等功能,它们可以动态的装载和卸载,具有高度可扩展性。因为 Audio Unit 是 iOS 系统里面比较底层的音频处理模块,所以使用起来比起其他iOS上的音频库需要更深入的理解。如果你不是需要实时性高、延迟低或者其他特殊处理的话,首先应该考虑使用 Media Player, AV Foundation, OpenAL, 或者 Audio Toolbox frameworks等库。它们都是基于Audio Unit 更高等级的封装,使用起来更加方便。
音频库的结构图
Audio Unit 的一些相关知识点
AUGraph
Audio Unit的管理者,能够动态的加载、卸载Audio Unit,从而实现混音、变音、录制、播放等效果。
AudioUnit
-
I/O Unit
可以录制和播放音频 -
Converter Unit
音频数据格式转换 -
Effect Unit
均衡器等各种特效 -
Mixer Unit
可以将多路音频合并成一路。
AudioStreamBasicDescription
描述音频数据的结构体,有采样率、声道、音频格式等参数。
AudioComponentDescription
描述Audio Unit的结构体,有类型、厂商等参数。
Audio File Formats
音频文件格式,常见的有mp3
aif
caf
等。
Audio Stream Formats
音频数据格式,LPCM
AAC
等。
Audio Converter Services
音频数据格式转换,如从PCM
到AAC
。
网友评论