I'm a bit confused by the database license. Why do you want people to contribute additional data specifically back to you, rather than requiring them to release it under a compatible license which would allow you to incorporate it if you wish? This is substantially different from usual copyleft licenses.
As an example, notice that Wikipedia does not require people to send modified articles back to the Wikimedia Foundation, or to allow them to use the data as they see fit (this is clause D. 3. d. in your license). They just require people to contribute under a copyleft license, and they can thus incorporate derivative versions published elsewhere if they want. This is nice because it ensures that the Wikipedia content can be useful even if the Wikimedia Foundation disappears.
Why do you want people to contribute additional data specifically back to you…
One possibility is so that database can be created on the backs of the users, then the database owner can slam the door and turn it proprietary, like the CDDB did.
Their stated goals don't lean that way, but I don't see a clause that either permits or forbids the database owner this action. Lawyers will be required to figure that out. I suspect there is an implicit ability for the grantor to terminate the license, but that is what lawyers are for.
(I did notice that the termination effects reference clauses that don't exist.)
Given how threat-, or, let's say, notification-happy Landmark was just a while ago [1], does anyone have an idea regarding the patent situation? Is this implementation different enough to be considered (reasonably) "safe"?
We invented everything about Echoprint from scratch, working with some awesome scientists and audio guys. I'm not a lawyer and won't comment on legal stuff here though.
FWIW, inventing something from scratch, as far as I understand things, will only save you from copyrighted code etc. It won't save you from overly general, and trivial patents.
Exactly. Be prepared to be bullied by Shazam -- at least, that's what happened the last time someone posted audio fingerprinting code online. And inventing something yourself doesn't save you from patents. I'll be watching from the sidelines to see how this plays out.
Whenever I have a chance to use both, it's seriously a tossup- it depends on the song, environment, and phone, but they're usually equivalent in my experience.
The main reason I use Shazam over SoundHound is simply that SoundHound doesn't have a Windows Phone 7 app.
This is really amazing, and I can't wait to see all of the possibilities it opens up now that people can create their own databases. I'm tempted to set up an app to fingerprint and dedupe all of the music spread out throughout the network here at work.
I highly recommend MusicBrainz Picard for autotagging. I went through tagging somewhere around 70 gigs of music with it, and the entire experience was rather painless. It will also rename and organize the files for you as a bonus.
It looks up the data (as it should be), so you rarely will have to enter anything yourself. It sometimes helps to add data for 1 track for horribly mistagged stuff, but after that you can usually drag and drop the rest of the album.
For others, like myself, that are unfamiliar, yet very interested. MusicBrainz[1] is written in python, distributed under the GPL, and I will be trying it ASAP.
MusicBrainz is written in Perl (and SQL). MB Picard is Python. MB is a database and associated server. MB Picard is a client.
MB is a bit of a monster. If you're tagging a lot of music you may want to install it locally. My experience with this is documented at http://acooke.org/cute/Installing3.html
Personally, I was not too impressed with MB itself - ended up using LastFM's API instead. But this was for generating playlists, not tagging.
About your data dumps: you're about to get hammered, so please share them in torrent! This would be much better for the thousands of people wanting to bootstrap.
Also, I understand json is very easy to use, etc. But those big dumps cry for a binary format. Or at least add zlib/lzma compression so people don't waste bandwidth on uuencoded binary data in json.
the dumps are in a format that other code understands (fastingest.py)
The code data is compressed using zlib (and then base64'd.) It's all on s3-- in our experience, big data dumps like this get relatively little traffic after the original hype dies down and a torrent doesn't make sense. We're pretty sure amazon can handle the load :)
there's a google group-- that's probably the easiest for now. you can pester alastairp on the musicbrainz IRC channel too (he's our resident musicbrainz/EN liaison)
No relationship. Obviously the intent is the same.
Distinction: we handle small pieces of audio from anywhere in the song (20s), ours works "over the air" via microphone, we have a huge database via our content partners.
I'm curious about the hashing algorithm. I read about the planned whitepaper, but some preliminary info would be cool (e.g refs to academic papers that you build on).
if it's echoprint related, write echoprint@echonest.com -- otherwise contact@echonest.com (i'm brian@echonest.com but i doubt you want to write just me)
I think the fingerprinting part is similar to pHash: http://www.phash.org/ but echoprint is more focused on music and they are building a database of fingerprints.
I think pHash also has functions for fingerprinting music but might not be as precise since pHash is not strictly focused on music.
Echonest are some cool people. Their earlier APIs enabled the illustrious although sadly now defunct http://www.donkdj.com which was done by a classmate of mine as a project for a Generative Creativity course we did at uni.
Looks like their research has taken them a lot further!
can you file an issue on echoprint-codegen or write us at the google group so we don't lose that? That definitely shouldn't be happening, there's an issue somewhere for sure.
If the fingerprint data of a track is covered then by that logic its SHA1 hash etc. would also be covered, and I can't see that line of argument going anywhere.
My thinking was that while the fingerprint is derived from the music, it contains no audio data and there is no way to go back from the fingerprint to any representation of the recorded work. Much like a cryptographic hash.
All the fingerprint comprises is a bunch of abstract statistical data about the music, its not qualitatively different from the output of say, a visualisation algorithm in a music player. Just much more useful.
But then again, copyright law makes no fucking sense, so who knows.
Maybe they are, to the best of my knowledge there's no definite answer that they aren't. I find it unintuitive but I do think that rationally there's a case to be made that they are, in fact, 'derived works'.
Even if so, there's a decent fair-use argument. The cases are mixed, but there have been some lawsuits over book summaries that came out in favor of the defendant, even though in a sense a summary of a book "derives" from the book. No idea what a court would hold, but fingerprints seem like they'd be on even stronger footing, since to the extent they're a summary, it isn't even much of a human-interpretable one, intended instead for indexing purposes, so it replaces the original work even less than a book summary does.
Objectively, they're meta-data, on the order of box scores from a baseball game or the cast credits from a movie. So there's no particularly solid argument for them to infringe on the copyright of the original work.
- game: a baseball game is not a "work" under the Berne convention
- cast credits: they are descriptive, but not derived from the movie.
One of the criteria to assess "fair use" is "was anything creative added in the process of making the derivative", which is per definition not true in the checksum or fingerprint case. I don't find your argument compelling - it's not a closed and shut case.
They're not really meta-data - they describe aspects of the sound recording, just like a list of notes and durations would (ie a MIDI file derived from analysing the recording).
This is huge. I've been mulling some ideas for awhile that would require music fingerprinting, but I've always been too overwhelmed by the available options, from a licensing and implementation standpoint. I can't wait to play with this!! :D
Looks incredible! One note though, the page seems to partially break for me in Safari on the Mac (the sidebar overlaps onto the content as I scroll horizontally).
But the tech looks incredible. Good work for releasing this!
As an example, notice that Wikipedia does not require people to send modified articles back to the Wikimedia Foundation, or to allow them to use the data as they see fit (this is clause D. 3. d. in your license). They just require people to contribute under a copyleft license, and they can thus incorporate derivative versions published elsewhere if they want. This is nice because it ensures that the Wikipedia content can be useful even if the Wikimedia Foundation disappears.
Anyway, awesome work, congrats!