Compact Disc Database

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die Compact Disc Database (Abkürzung CDDB) ist eine Datenbank mit Informationen über auf dem Markt befindliche Audio-CDs (Interpreten, Titel, Tracklängen, Musikgenre), die über das Internet abgerufen werden können. Zurzeit sind rund 7,6 Millionen CDs mit 97,2 Millionen Titeln (Stand 21. Dezember 2008) erfasst. Die Erkennung geschieht mit Hilfe eines sogenannten Hash-Wertes. Umgekehrt ist es den Benutzern auch möglich, noch nicht erfasste CD-Daten in die Datenbank einzugeben. Diese Informationen können mit vielen Computer-Musikkodier- und -abspielprogrammen abgerufen oder direkt über die CDDB-Website eingesehen werden.

CDDB wurde 1995 von Ti Kan und Steve Scherf entwickelt, 1998 gründeten sie die gleichnamige Firma. Diese wurde von Escient übernommen und in Gracenote umbenannt. Gracenote hält seitdem die Rechte an der Datenbank. Im April 2008 wurde sie für 260 Millionen US-Dollar von der Sony Corporation of America aufgekauft.[1] Seit einem Relaunch der Webseiten von Gracenote im September 2010 ist die Musiksuche in der CDDB nicht mehr öffentlich über die Webseite zugänglich.

Eine Änderung der Lizenzbedingungen im Jahre 2001 und die Einführung eines geänderten Protokolls machten den kostenlosen Datenbankzugriff für kommerzielle Software und Shareware unmöglich (die Lizenzbedingungen von Gracenote erlauben hingegen den kostenlosen Zugriff für nicht-kommerzielle Software; Stand 18. August 2007).[2] Als Alternative wurden daraufhin die freedb-Datenbank und das MusicBrainz-Projekt gegründet. Gracenote wird inzwischen in verschiedenen Musikabspielprogrammen (z. B. iTunes) benutzt, zum Teil ist das aber nur nach Registrierung möglich.

Beispiel Hash-Wert nach CDDB1[Bearbeiten]

Zur Erzeugung des Hash-Wertes wird das Inhaltsverzeichnis (TOC, „Table of Contents“) der CD ausgelesen. Relevant sind die Anzahl und die Reihenfolge der Titel auf der CD sowie die jeweilige Titellänge. Beispiel:

# Track frame offsets:
#       150
#       15095
#       28530
#       40556
#       60479
#       81952
#       100762
#       112675
#       128656
#       145954
#
# Disc length: 2258

Aus den ausgelesenen Werten wird ein 4-Byte-Hash-Wert gebildet im Format XXYYYYZZ. Für das obige Beispiel: 6808d20a

  • Das letzte Byte (ZZ, im Beispiel: 0a) ist die Anzahl der Tracks auf dem Album.
  • Die zwei mittleren Bytes (YYYY, im Beispiel: 08d2) ergeben sich aus der Summe der Titellängen in Sekunden.
  • Das erste Byte ist eine Checksumme aller Werte des Inhaltsverzeichnisses. Die Summe wird gebildet aus allen Stellen der Anfangspositionen aller Titel (Tracks) (in Sekunden), modulo 255.

Es gibt diverse Programme im Web, die Beispiel-IDs für CDDB1 berechnen können.[3]

ID-Kollisionen[Bearbeiten]

Haben zwei CDs die gleiche Anzahl von Tracks und die gleiche Gesamtlänge, dann besteht eine Chance von 1:255 oder mehr, dass sie dieselbe ID haben [4]

Eine solche Kollision wurde als möglicher Grund für falsche Titelangaben bei der SOS-Kinderdorf-CD genannt[5]

Weblinks[Bearbeiten]

Quellen[Bearbeiten]

  1. drmwatch.com Sony Acquires Gracenote
  2. heise.de CDDB akzeptiert nur noch registrierte Nutzer
  3. Robert Sedgewick, Wayne, Kevin: CDDB.java. Princeton University Computer Science Department. 5. März 2007. Abgerufen am 19. Oktober 2007.
  4. http://quimby.gnus.org/circus/notes/cddb.html
  5. http://www.heise.de/newsticker/meldung/Wirbel-um-Weihnachts-CD-der-SOS-Kinderdoerfer-1784486.html