I want to build a song recognition website
I was thinking about building a website for song recognition (something similar to midomi.com but much more simple):
User uploads a MP3 or posts a link to a Youtube video and the website will tell him (for free) the name of the track, artist and other info - basically all the stuff that should be in the MP3's ID3 tag.
The biggest problem is how should I recognize the song? I don't plan writing the algorithm myself (I can't spend that much time on something I want to offer for free :-)).
I know that e.g. Winamp uses the Gracenote database http://www.gracenote.com/ for MP3 identification. Can you do the same using PHP - by calling some their remote method that searches the database for a match with the provided file or its "footprint"?
开发者_如何学GoOr can you suggest any other databases or tools?
I found someone used Gracenote in PHP here: http://www.phpfreaks.com/forums/index.php?topic=240930.0 But that's basically just editing the texts in the tags. What about song recognition?
This article should get you started with the comparison of audio samples: http://en.wikipedia.org/wiki/Acoustic_fingerprint
MusicBrainz offers a webservice you can query for track information: http://musicbrainz.org/doc/XMLWebService
- They also offer information on audio fingerprinting: http://musicbrainz.org/doc/AudioFingerprint
An MP3 file would use ID3 Tags
to identify the song. The Title
and Artist
name are embedded in the song. ID3 tags
can also include the ISRC
number (International Standard Music Number) for identification. Grace note is primarily concerned about CD Identification, *.cda files in the CD, and may be MCDI (Music CD Identifier).
There is a fingerprint recognition service with api. It has clients for different languages and free for test apps.
精彩评论