Echoprint?

Any of you using Echoprint successfully?

It's basically an open-source Shazam back-end: you feed their server chunks of audio and it tells you what songs are in it.

So, you know what would be awesome, is to run that over the archived DNA webcasts to generate actual playlists after the fact.

Except, it seems to barely match anything, even the hits of the 80s. I was testing it on Depeche Mode's Some Great Reward, because hey, not exactly obscure, but when feeding it successive 30 second chunks of each song, it seems to get a match about one time in 50.

Here's my rough draft of the code: echoprint.pl.

Tags: , , , ,

9 Responses:

  1. hey jwz, check out the ENMFP & echoprint faq. You are likely running into the small db of Echoprint's hosted service (on EN). Also, if the music from the webcast is being played live, neither FP will work (neither will Shazam.) Echoprint's DB is growing very large very soon, and you might also want to try ENMFP -- it has 35m songs backing it.

    • jwz says:

      So, if the problem is that I'm talking to a small DB, is there a bigger DB I can talk to?

      I changed it to add the version number and it doesn't seem to have changed matters in any way that I noticed.

      I'm doing my tests with music ripped from normal CDs, nothing fancy.

      • You could try ENMFP (use the downloadable codegen -- it's not OSS but it is free to use) -- with version <4.0 song/identify queries the ENMFP server that has a ton more data (right now.) But if OSS and the other features of Echoprint are valuable, hook up with Andrew below and he'll figure out why your samples aren't matching (they definitely should.)

      • And re: the version: i misread your code. You were sending version in the JSON block (via the codegen) which is fine.

  2. Also, from a brief look at your code I don't see you setting the version # -- if you are using echoprint with song/identify, you need to explicitly set the version # (4.15)

  3. Hi jwz,

    I did some experiments using your echoprint.pl script, also running it over all successive segments of every track of Depeche Mode's Some Great Reward. In my case, when using relatively clean source audio for the queries, every segment was recognized correctly.

    Is the source audio in your case very distorted, noisy, stretched in time, or shifted in pitch? Echoprint can cope with very mild distortions, but we're working on making it even more robust in these situations (and also expanding the database, as Brian mentioned above).

    Do you have a link to the source audio which used to evaluate it? That would be really helpful; if you could please send that to us I can take a closer and get some more details about why it's not working for you.

    Andrew

    • Chris says:

      I have so much lazyweb jealousy right now.

    • jwz says:

      These are 128k MP3 files, ripped from my own CDs ages and ages ago. They're only 128k because I never bothered to re-rip them, but really, they sound completely normal. It's not like it's from vinyl or the radio or something. I can mail you some examples if you like...

      E.g., with my script, walking through Blasphemous Rumors 30 seconds at a time, I get only one match (out of the 14 segments), at 2:00. And sometimes -- but not always -- I get back artist_id "AR6LZB61187B9AF431" but no artist_name, though I always get a title.

      • These are 128k MP3 files, ripped from my own CDs ages and ages ago. They're only 128k because I never bothered to re-rip them, but really, they sound completely normal.

        On the basis of that description, that should be fine.

        It's not like it's from vinyl or the radio or something. I can mail you some examples if you like...

        Yes, that would be great. Could you please email me at anesbit@echonest.com.

        E.g., with my script, walking through Blasphemous Rumors 30 seconds at a time, I get only one match (out of the 14 segments), at 2:00.

        That sounds strange. If you send me some examples then I'll be able to independently verify.

        And sometimes -- but not always -- I get back artist_id "AR6LZB61187B9AF431" but no artist_name, though I always get a title.

        I think I know what you mean, but I'm not sure. Can you give us an example?