Slashdot Mirror


Using CDDB to Fill ID3 Information in Existing MP3s?

masonbrown asks: "I've got about 2000 songs in my MP3 collection, using iTunes on the Mac. I'd love to fill in the empty ID3 tags such as Album Title, Date, etc. automatically from something like CDDB. Is there any way to automate this after the song is already in MP3 format (like going by Artist and Song Title)?"

3 of 68 comments (clear)

  1. CDDB? Shouldn't we be using freedb instead? by WIAKywbfatw · · Score: 5, Insightful

    Unless you've been living in a cave for the past two years you'd know that CDDB has been hijacked by Gracenote who've turned what was a nice, cooperative development, steadily built up by thousands of unpaid users into a private, commercial venture.

    Nowadays, if you're developing commercial software that accesses the CDDB database you have to pony up licensing fees or look elsewhere.

    That elsewhere is freedb. Check it out and use it instead of using CDDB.

    --

    "Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
  2. Only 2000? by teridon · · Score: 4, Informative

    You probably want to use Applescript for this. Check out this page for a buttload of iTunes applescripts. For example the "Get CDDB Track Names" script will tag the selected tracks in iTunes with info from a CDDB webpage (that you searched for). And you can use the built-in applescripts to search the CDDB.

    But honestly, with only 2000 songs, it would probably be less work to do it yourself, especially if you can use iTunes multiple-edit mode on tracks from the same album.

    --
    I hold it, that a little rebellion, now and then, is a good thing. -- Thomas Jefferson
  3. Re:you should know how it works by nathanh · · Score: 5, Informative
    CDDB works by doing a simple lookup of the CD's ID (burned in )

    What total rot. There's no such thing as a "CD ID". The CDDB ID is a one-way hash of the track lengths. Here is a comment from a script I wrote a few years ago.

    # The cddb disc id looks like this: sum the digits of each track's
    # starting point in seconds, shove that in the high byte; find the
    # total _playing_ time (subtract leadins) and put into the 2nd and
    # 3rd bytes; put the number of tracks in the low byte. The playing
    # time can't exceed approx 80 mins, so it will never overflow. The
    # summation of digits can overflow so the specs require the modulo
    # 255 first (not bitwise-and like you'd expect, weird huh).

    It might be possible to create a CDDB ID from a full album of MP3s. But I think there's no hope if you have random MP3s from incomplete albums.