gpt4 book ai didi

objective-c - 如何使用 RemoteIO 核心音频最好地构建程序

转载 作者:行者123 更新时间:2023-11-29 04:13:50 24 4
gpt4 key购买 nike

我正在编写一个有两个 View Controller 的程序。一个 View Controller 配置通过远程IO音频单元播放的声音。另一个 View Controller 从麦克风接收音频,处理该音频并显示与从麦克风接收到的声音相关的信息。两个 View Controller 都需要使用相同的音频图。我使用 Apple 的 AurioTouch2 示例来指导我的代码,但该程序将大部分代码放在应用程序委托(delegate)(和帮助程序类)中,包括设置音频图以及传入和传出音频的回调。这似乎在应用程序委托(delegate)中放置了不必要的代码。构建我的应用程序的最佳实践是什么?音频单元应该安装在哪里?将音频发送到音频单元的回调应该在哪里?接收到的音频的回调应该在哪里?

最佳答案

由于 iOS 应用程序只有一个 RemoteIO 音频单元可用,因此单例 Controller 对象可能是集中定位与该音频单元相关的所有代码的好地方。应用程序委托(delegate)加上可能的辅助对象或类的组合可以充当小型简单应用程序中此单例 Controller 的代理。但在较大的应用程序中,最好使用单独的音频 Controller 类。某种模型类可能适合封装任何音频状态数据(波形数据等)

对音频 Controller 对象或数据模型对象的引用可以传递给需要控制或访问音频的任何其他 View Controller 。这将适合组合光(UIView)和声音(音频单元)的 MVC 模式。

请注意,音频单元 API 是 C API,因此也可以使用全局可见的 C 子例程和状态(例如,某些不与任何类关联的 .c 文件)。

关于objective-c - 如何使用 RemoteIO 核心音频最好地构建程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13993084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com