2012-01-27 5 views
5

Mi piacerebbe scrivere un'app che permetta agli utenti di identificare le canzoni mettendo il microfono vicino a un altoparlante e ascoltando la canzone per qualche secondo ... quindi esattamente cosa fa Shazam.come funzionalità shazam nell'app ios?

C'è qualche struttura o libreria o servizio che posso utilizzare per ottenere ciò in iOS?

+2

Sì e no. Il riconoscimento effettivo non viene eseguito sul dispositivo, ma i dati audio vengono inviati ad una postazione remota da analizzare (motivo per cui Shazam funziona solo con una connessione Internet). Puoi farlo su iOS. Non consiglierei nemmeno di provare ad implementare un algoritmo di analisi audio come quello su un singolo dispositivo iOS, né di farlo da solo, a meno che tu non sia un esperto di audio e/o matematica. – weltraumpirat

+0

Sono d'accordo, credo che il modo corretto sia quello di affidarsi ad una web api per rilevare la canzone ... ma non sono sicuro di quale API usare. Ce n'è uno là fuori? – zumzum

risposta

3

Hai bisogno di un'API che puoi richiedere. Un esempio uf un tale API è Gracenote Si potrebbe anche dare un'occhiata a Musicbrainz

+0

Quindi stai dicendo che uno di questi due offre la possibilità di ottenere ciò che ho bisogno di fare su iOS? O sono solo alcuni dei servizi che pensi possano farlo? – zumzum

+0

Musicbrainz consente di scaricare il loro database di tag musicali e un tagger open source scritto in python [MusicBrainz Picard] (http://musicbrainz.org/doc/MusicBrainz_Picard). Gracenote, al contrario, non è libero. Applicazioni come Tagalicious lo usano per il tagging. Queste non sono vere e proprie librerie iOS, quindi dovrai lavorare per la comunicazione con questi servizi. Per la parte di rete è possibile utilizzare un framework di rete come [AFNetworking] (https://github.com/AFNetworking/AFNetworking) – Sbhklr

1

Sì, è possibile dare un'occhiata alla biblioteca echoprint sviluppato da echonest here Essi forniscono una libreria C++ per calcolare l'impronta digitale audio che può essere utilizzato sotto iOS. Offrono anche l'esempio di ios!