关于 AudioUnit 的文章是一个系列, 我希望能够把之前的经验结合一些实际的场景来介绍, 大概分为一下四个部分:
熟悉 IO Unit 结构和运行机制, 使用它来进行录制和播放
熟悉其他类型的 AudioUnit...VPIO 全称是 Voice Processing IO, 它主要用于 VoIP (Voice over IP) 场景, 比如音视频通话, 它的结构和 Remote IO 结构完全相同, 只是多增加了回声消除和降噪的特点...这里注意一下 VPIO 和 VoIP 的区别, 前者是 apple 平台 AudioUnit 里特有的概念, VoIP 是通用概念....VPIO (通话音量) 下有回声消除和降噪, 很适合不带耳机通话的场景, 避免中间产生回声和啸叫, 但代价是对音质有损伤, 适合通话的场景....如何塞给 IO Unit 待播放的音频数据? RenderCallback!