AudioUnit框架详细解析(十一) —— 音频处理图管理音频单元之音频处理图具有一个I / O单元(一)

版本记录

版本号 时间
V1.0 2018.06.25

前言

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单元的基本特性(七)

Audio Processing Graphs Manage Audio Units - 音频处理图管理音频单元

音频处理图audio processing graphCore Foundation风格的不透明类型AUGraph,用于构建和管理音频单元处理链。图表可以利用多个音频单元和多个呈现回调函数的功能,使您几乎可以创建任何您可以想象的音频处理解决方案。

AUGraph类型为音频单元故事增加了线程安全性:它使您能够即时重新配置处理链。例如,在播放音频时,您可以安全地插入均衡器,甚至可以为混音器输入交换不同的呈现回调函数。实际上,AUGraph类型提供了iOS中唯一的API,用于在音频应用程序中执行这种动态重新配置。

音频处理图表API使用另一种不透明类型AUNode来表示图表上下文中的单个音频单元。使用图表时,您通常与节点交互作为其包含的音频单元的代理,而不是直接与音频单元交互。

但是,在将图形放在一起时,您必须配置每个音频单元,并且必须通过音频单元API直接与音频单元交互。音频单元节点本身不可配置。通过这种方式,构建图需要您使用这两个API,如Use the Two Audio Unit APIs in Concert中所述。

您还可以将AUNode实例用作复杂图形中的元素,方法是将节点定义为表示完整的音频处理子图。在这种情况下,子图末尾的I / O单元必须是通用输出单元 - 一种不连接到设备硬件的I / O单元。

构建音频处理图需要三个任务:

  • 1.将节点添加到图形
  • 2.直接配置由节点表示的音频单元
  • 3.互连节点

有关这些任务的详细信息以及音频处理图形生命周期的其余部分,请参阅Constructing Audio Unit Apps。 有关此丰富API的完整说明,请参阅Audio Unit Processing Graph Services Reference


An Audio Processing Graph Has Exactly One I/O Unit - 音频处理图具有一个I / O单元

无论您正在进行录制,回放还是同时进行I / O,每个音频处理图都有一个I / O单元。 I / O单元可以是iOS中可用的任何一种,具体取决于您的应用程序的需求。 有关I / O单元在各种使用场景中如何适应音频处理图形体系结构的详细信息,请参阅Start by Choosing a Design Pattern

通过图表Graph,您可以通过AUGraphStartAUGraphStop函数启动和停止音频流。 这些函数依次通过调用其AudioOutputUnitStartAudioOutputUnitStop函数向I / O单元传递启动或停止消息。 通过这种方式,图形的I / O单元负责图形中的音频流。

后记

本篇主要讲述了音频处理图具有一个I / O单元,感兴趣的给个赞或者关注~~~~

AudioUnit框架详细解析(十一) —— 音频处理图管理音频单元之音频处理图具有一个I / O单元(一)_第1张图片

你可能感兴趣的:(AudioUnit框架详细解析(十一) —— 音频处理图管理音频单元之音频处理图具有一个I / O单元(一))