2012-01-27 21 views
5

我想写一个应用程序,允许用户通过将麦克风放在扬声器旁边并听歌几秒钟来识别歌曲......这正是Shazam所做的。在ios应用程序中的shazam like功能?

是否有任何框架或图书馆或服务,我可以用它来完成在iOS?

+2

是的,没有。实际识别不在设备上完成,但声音数据被发送到远程位置进行分析(这就是为什么Shazam只能与互联网连接)。你可以在iOS上做到这一点。我不建议即使尝试在单个iOS设备上实现像这样的音频分析算法,也不会自己做,除非您是音频和/或数学专家。 – weltraumpirat 2012-01-27 13:00:48

+0

我同意,我相信正确的方法是依靠web api来检测歌曲...只是不确定使用什么api。那里有一个吗? – zumzum 2012-01-27 14:55:16

回答

3

您需要一个您可以查询的API。一个例子UF这样的API是Gracenote 你也可以看看Musicbrainz

+0

那么你是说那两个中的任何一个都能够获得我需要在iOS上完成的任务?或者那些只是您认为可以实现的一些服务? – zumzum 2012-01-27 14:56:05

+0

Musicbrainz让你真正下载他们的音乐标签数据库和一个用python [MusicBrainz Picard](http://musicbrainz.org/doc/MusicBrainz_Picard)编写的开源标签。 Gracenote恰恰相反,并不是免费的。 Tagalicious等应用程序将其用于标记。这些不是实际的iOS库,因此您将不得不为与这些服务的通信做一些工作。对于网络部分,您可以使用网络框架,如[AFNetworking](https://github.com/AFNetworking/AFNetworking) – Sbhklr 2012-01-27 15:31:19

1

是的,你可以看看开发的echonest here 他们提供了一个C++库echoprint库来进行音频指纹可以使用在iOS下。他们也给了ios的例子!

相关问题