版本记录
版本号 | 时间 |
---|---|
V1.0 | 2018.07.05 |
前言
AudioUnit框架作为您的应用程序添加复杂的音频操作和处理功能。 创建在主机应用程序中生成或修改音频的音频单元扩展。接下来几篇我们就一起看一下这个框架,感兴趣的看上面几篇文章。
1. AudioUnit框架详细解析(一) —— 基本概览
2. AudioUnit框架详细解析(二) —— 关于Audio Unit Hosting之概览(一)
3. AudioUnit框架详细解析(三) —— 关于Audio Unit Hosting之如何使用本文档和参考资料(二)
4. AudioUnit框架详细解析(四) —— 音频单元提供快速的模块化音频处理之iOS中的Audio Units(一)
5. AudioUnit框架详细解析(五) —— 音频单元提供快速的模块化音频处理之在Concert中使用两个音频单元API(二)
6. AudioUnit框架详细解析(六) —— 音频单元提供快速的模块化音频处理之使用标识符来指定和获取音频单元(三)
7. AudioUnit框架详细解析(七) —— 音频单元提供快速的模块化音频处理之使用范围和元素来指定音频单元的部分(四)
8. AudioUnit框架详细解析(八) —— 音频单元提供快速的模块化音频处理之使用属性来配置音频单元(五)
9. AudioUnit框架详细解析(九) —— 音频单元提供快速的模块化音频处理之使用参数和UIKit为用户提供控制(六)
10. AudioUnit框架详细解析(十) —— 音频单元提供快速的模块化音频处理之I / O单元的基本特性(七)
11. AudioUnit框架详细解析(十一) —— 音频处理图管理音频单元之音频处理图具有一个I / O单元(一)
12. AudioUnit框架详细解析(十二) —— 音频处理图管理音频单元之音频处理图提供线程安全性(二)
13. AudioUnit框架详细解析(十三) —— 音频处理图管理音频单元之音频使用Pull通过图表(三)
14. AudioUnit框架详细解析(十四) —— 呈现回调函数将音频馈送到音频单元之了解音频单元呈现回调函数(一)
15. AudioUnit框架详细解析(十五) —— 音频流格式启用数据流之使用AudioStreamBasicDescription结构(一)
16. AudioUnit框架详细解析(十六) —— 音频流格式启用数据流之了解何处以及如何设置流格式(二)
17. AudioUnit框架详细解析(十七) —— 从选择设计模式开始之I / O传递(一)
18. AudioUnit框架详细解析(十八) —— 从选择设计模式开始之没有渲染回调函数的I / O(二)
19. AudioUnit框架详细解析(十九) —— 从选择设计模式开始之具有渲染回调函数的I / O(三)
20. AudioUnit框架详细解析(二十) —— 从选择设计模式开始之仅具有渲染回调函数的输出(四)
21. AudioUnit框架详细解析(二十一) —— 从选择设计模式开始之其他音频单元Hosting设计模式(五)
22. AudioUnit框架详细解析(二十二) —— 构建您的应用程序(一)
23. AudioUnit框架详细解析(二十三) —— 故障排除提示(一)
Using Specific Audio Units - 使用特定的音频单元
每个iOS音频单元都有一些与所有其他音频单元相同的东西以及某些独特的东西。 本文档前面的章节描述了常见的方面,其中包括需要在运行时查找音频单元,实例化它,并确保其流格式设置正确。 本章介绍了音频单元之间的差异,并提供了有关如何使用它们的详细信息。
本章后面的Identifier Keys for Audio Units
列出了在运行时为每个音频单元定位可动态链接库所需的代码。
Using I/O Units - 使用 I/O单元
iOS提供三个I / O(输入/输出)单元。 绝大多数音频单元应用程序使用Remote I / O
单元,它连接到输入和输出音频硬件,并提供对各个输入和输出音频样本值的低延迟访问。 对于VoIP应用,Voice-Processing I/O
单元通过添加声学回声消除和其他功能来扩展Remote I / O
单元。 要将音频发送回应用程序而不是输出音频硬件,请使用Generic Output unit
。
Remote I/O Unit - 远程I/O单元
Remote I / O
单元(子类型kAudioUnitSubType_RemoteIO
)连接到设备硬件,用于输入,输出或同时输入和输出。 用于播放,录制或低延迟同时输入和输出,不需要回声消除。
设备的音频硬件将其音频流格式强制放置在远程I / O单元的外侧,如Understanding Where and How to Set Stream Formats
中所述。 音频单元提供硬件音频格式和应用音频格式之间的格式转换,通过附带的格式转换器音频单元Format Converter audio unit
进行格式转换。
有关演示如何使用此音频单元的示例代码,请参阅示例代码项目aurioTouch
。 Listing 3-1
提供了此音频单元的使用详细信息。
Table 3-1 Using the Remote I/O unit
Voice-Processing I/O Unit - 语音处理I / O单元
Voice-Processing I/O
(子类型kAudioUnitSubType_VoiceProcessingIO
)具有远程I / O单元的特性,并为双向双工通信添加了回声抑制。 它还增加了自动增益校正,语音处理质量调整和静音功能。 这是用于VoIP
(互联网协议语音)应用程序的合适的I / O单元。
表3-1中列出的所有注意事项也适用于语音处理I / O单元。 此外,此音频单元还有特定的属性,如Voice-Processing I/O Audio Unit Properties
中所述。
Generic Output Unit - 通用输出单元
将音频处理图的输出发送到应用程序而不是输出音频硬件时,请使用子类型为kAudioUnitSubType_GenericOutput
的音频单元。 您通常会使用通用输出单元进行离线音频处理。 与其他I / O单元一样,通用输出单元包含格式转换器单元Format Converter unit
。 这使通用输出单元可以在音频处理图形中使用的流格式与所需格式之间执行格式转换。
您还可以使用通用输出单元作为子图中的最终节点,放入父音频处理图中。
后记
本篇主要讲述了使用I/O单元,感兴趣的给个赞或者关注~~~