温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

iOS Audio Unit 之 I/O Units

发布时间:2020-07-04 05:45:04 来源:网络 阅读:4468 作者:SelinaCheng 栏目:移动开发

iOS 提供了三个 I/O unit : Remote I/O unit 、Voice-Processing unit 和 Generic Output unit 。大多数audio unit 的应用都是使用 remote I/O unit 连接到输入和输出硬件,并实时访问传入和传出的音频采样。对于VoIP应用程序,Voice-Processing I / O unit 扩展 Remote I / O unit, 加入回音消除、音质处理等多种功能。如果要把音频送回应用程序,而不是输出的音频硬件,使用 Generic Output unit。


Remote I/O Unit


Remote I/O unit (subtype kAudioUnitSubType_RemoteIO) 连接硬件设备的I/O,实时地输入和输出音频数据。用于播放、录音、实时音频的输入和输出(不消除回声)。

设备的音频硬件在Remote I/O Unit的两侧设置音频流的格式。可以通过“Understanding Where and How to Set Stream Formats”了解如何设置音频流格式。audio unit 提供了audio converter ,用于转换硬件格式和应用的音频格式。

官方示例aurioTouch 实现了如何使用这个音频单元。

下图详细描述 Remote I/O unit 的使用


iOS  Audio Unit 之 I/O Units


Voice-Processing I / O Unit


Voice-Processing I / O unit (subtype kAudioUnitSubType_VoiceProcessingIO) 在 Remote I/O unit 的基础上增加了回声抑制、双向双工通信、自动增益校正,调整语音处理质量,和静音。这个Voice-Processing I / O unit 用于VoIP应用程序。


Generic Output Unit

Generic Output unit (subtype kAudioUnitSubType_GenericOutput )是把audio graph 输出的音频数据送回app,用于离线的音频处理。像其它audio unit一样,Generic Output unit 实现audio graph 音频格式与用户需要的音频格式之间的转换。



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI