首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AUGraph在iOS上的采样率变化

AUGraph在iOS上的采样率变化
EN

Stack Overflow用户
提问于 2011-12-28 16:18:36
回答 3查看 1.5K关注 0票数 3

我实现了一个类似于AUGraph的iOS开发者图书馆。然而,在我的应用程序中,我需要能够以不同的采样率(可能是两个不同的)播放声音。

我一直在查看苹果的文档,还没有找到在运行时设置样本率的方法。我一直在想三种可能的工作:

  1. 每次需要改变采样率时,重新初始化AUGraph;
  2. 为每个不同的采样率初始化不同的AUGraph;
  3. 在播放前转换每个声音的采样率;

这些方法在处理器上看起来都很笨重。

在运行时更改AUGraph的采样率的最佳方法是什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-28 18:54:15

通常为连续音频流方案#1。

通过使用您所列出的另一种方法,您的程序可能有特殊的需要或好处:

  • #2:您需要处理不需要重新初始化的地方。
  • #3:你需要同时用不同的输入采样率混合和处理两个流,特别是当你发现自己多次SRCing信号的时候。

但是,如果您只需要使用SRC进行回放,并且延迟最低并不需要考虑,您可以尝试使用AudioQueue。

票数 1
EN

Stack Overflow用户

发布于 2011-12-28 18:43:36

我很确定它不能在运行时完成。解决方案2是您最好的选择,与#3一样。对于示例速率转换,libsndfile可能可以适应您的需要。

票数 0
EN

Stack Overflow用户

发布于 2011-12-28 18:58:04

如果您不希望从拆卸和重建音频图形的延迟,您可能需要重采样声音数据(除了一个样本率)。

您可以在开始播放之前对声音数据进行重采样,或者作为音频图的一部分运行实时重放。许多iOS音乐应用程序将后者作为基于内置采样器的合成单元的一部分,因此该设备具有足够的计算能力。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8658396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档