3

在 iOS 上,是否可以以解压缩格式获取用户的音频流?例如,将 MP3 作为可用于音频分析的 WAV 返回?我对 iOS 平台比较陌生,我记得在旧的 iOS 版本中这是不可能的。我读到 iOS 4 引入了一些高级 API,但我不确定在哪里可以找到这些的文档/示例。

4

3 回答 3

3

如果您不介意使用 iOS 4.1 及更高版本的 API,您可以尝试使用AVAssetReader班级和朋友。在这个类似的问题中,您有一个关于如何提取视频帧的完整示例。我希望同样适用于音频,而且好处是读者可以处理解压缩的所有细节。您甚至可以使用组合AVComposition来合并多个流。

这些类是AVFramework的一部分,它不仅允许阅读,还允许创建自己的内容。

于 2011-08-30T07:30:38.860 回答
2

Apple 在http://developer.apple.com/library/mac/#samplecode/OpenALExample/Introduction/Intro.html有一个 OpenAL 示例,您应该对 Scene.m 感兴趣。

Apple 文档中有这张图片,其中 Core Audio 框架清楚地显示它为您提供 MP3。它还指出,如果需要,您可以以更激进的方式访问音频单元。

如果对您有所帮助,同一个 Core Audio 文档还提供了一些有关使用 MIDI 的信息。

编辑:你今天很幸运

于 2011-08-29T15:53:26.073 回答
1

这个例子中,一个音频文件被加载并输入到一个 AudioUnit 图中。您可以相当轻松地编写自己的 AudioUnit 并将其放入此图中,并根据您认为合适的方式分析 PCM 流。您甚至可以在回调函数中执行此操作,尽管这可能不是一个好主意,因为鼓励回调尽可能简单。

于 2011-08-29T16:32:32.407 回答