I took a look at the Songprint code. It looks like it's just finding means and standard deviation of energies in each of 16 frequency bands. That's a good first step, but it's a pretty coarse metric. Has anyone considered adding some measure of periodicity, such as autocorrelation or a beat tracker? That would be a good measure of a salient characteristic of music that's probably quite independent of the features already being used. Adding it would reduce the number of false near-matches we're sure to get with the current system.
I'd want to take rhythm-oriented measurements over the whole song in order to do good content analysis, but it does cost compute time, and for finding unique IDs it might be sufficient to do it on a few short segments.
For the record, I haven't run into any issues with collisions using the current system (yet). But given that the body of musical works is in the millions, I'm not going to say it won't happen. :)
We do in fact have a hitherto unseen new system that will expand the signatures into tempo, and to some extent melody detection. We'll probably piggyback this on the current system since its such a monumental task to build a songprint library from scratch (and guess who gets the honor of maintaining the servers all by his lonesome? :).
For anyone interested, on a good week I (personally) can get about 10-20K new signatures, not including user submissions. Help... please? :)
Log in to post a comment.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.