首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在iOS中使用aubio框架?

如何在iOS中使用aubio框架?
EN

Stack Overflow用户
提问于 2014-01-23 16:10:05
回答 4查看 2K关注 0票数 7

我正在尝试在iOS中检测音频文件的节拍、音调、开头和快速傅立叶变换(FFT),我发现aubio提供了这些功能,iOS framework也可用。

到目前为止,我使用The Amazing Audio Engine接收Core AudioAudioBufferList格式的音频数据,如下所示:

代码语言:javascript
复制
id<AEAudioReceiver> receiver = [AEBlockAudioReceiver audioReceiverWithBlock:
                               ^(void                     *source,
                                 const AudioTimeStamp     *time,
                                 UInt32                    frames,
                                 AudioBufferList          *audio) {
    // I don't know how to use audio library.
}];

我能否使用此AudioBufferList中的aubio检测节拍、音高、首音和快速傅立叶变换(FFT),以及如何检测?如果我走错了路,请给我一些建议。

EN

回答 4

Stack Overflow用户

发布于 2014-03-26 14:01:01

看看aubio download页面,我相信他们已经把它编译成了iOS框架,你可以直接导入到你的Xcode中。

参考:http://aubio.org/download#ios

票数 1
EN

Stack Overflow用户

发布于 2015-06-29 06:55:44

download page中有一个与iOS一起使用的编译框架。

一个你已经将库拖放到你的项目中,确保你也有如下的框架:

  • Accelerate.framework
  • AudioToolbox.framework

现在,如果您下载Aubio的源代码,您将拥有一个examples文件夹。在那里,你可以找到用C语言编写的用于检测节拍、音高、声母(还有快速傅立叶变换)的代码,因为ObjC是C的超集,所以它也可以在你的项目中工作。

票数 0
EN

Stack Overflow用户

发布于 2015-10-09 20:22:17

我的解决方案是将音频缓冲区写入一个文件,然后将该文件发送到aubio。每当你得到一个新的音频缓冲区时,你可以附加到文件中(如果你想要分析到目前为止的整个事情),或者如果你只对增量片段感兴趣,就直接覆盖它。

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

https://stackoverflow.com/questions/21302677

复制
相关文章

相似问题

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