CDDB , abreviatura de Compact Disc Database , es una base de datos para aplicaciones de software que buscan información de CD de audio ( disco compacto ) en Internet . Esto lo realiza un cliente que calcula un ID de disco (casi) único y luego consulta la base de datos. Como resultado, el cliente puede mostrar el nombre del artista, el título del CD, la lista de pistas y alguna información adicional. CDDB es una marca comercial con licencia de Gracenote , Inc. [1] [2]
La base de datos se utiliza principalmente en reproductores multimedia y programas de extracción de CD . Si un reproductor multimedia o un programa de extracción de CD no reconoce un CD , se puede añadir a la base de datos si el usuario rellena los nombres y artistas, etc. en un reproductor multimedia como iTunes o MusicMatch Jukebox .
La necesidad de la CDDB es una consecuencia directa del diseño original del CD, que fue concebido como una evolución del disco de gramófono y no consideraba las pistas de audio como archivos de datos que se debían identificar e indexar. El formato del CD de audio no incluye el nombre del disco ni los nombres de las pistas, por lo que se necesita una base de datos complementaria para proporcionar esta información cuando se utilizan discos con sistemas de medios modernos. Un desarrollo posterior llamado CD-Text es otra solución al mismo problema.
CDDB fue inventado por Ti Kan a fines de 1993 [3] como una base de datos local que se entregaba con su popular aplicación de reproducción de música xmcd. El historial de cambios de la aplicación menciona por primera vez el acrónimo CDDB en la versión 1.1 publicada el 25 de febrero de 1994. Los usuarios enviaban nuevas entradas a la base de datos por correo electrónico a Kan.
La base de datos se volvió rápidamente difícil de manejar y Kan solicitó la ayuda de Steve Scherf para crear una versión accesible en red de la base de datos que operaba como CDDB Inc. [4] en 1995. [5] Graham Toal proporcionó alojamiento para el servidor CDDB y creó un modelo de ingresos por publicidad en banners para pagar el alojamiento. El software original detrás de CDDB fue lanzado bajo la Licencia Pública General de GNU , y muchas personas enviaron información de CD pensando que el servicio también seguiría siendo gratuito.
El proyecto se constituyó finalmente como CDDB LLC en 1998 [6] y pronto fue vendido por Kan, Scherf y Toal a un fabricante de productos electrónicos de consumo de alta tecnología llamado Escient . En una entrevista de 2006 en Wired , Scherf afirmó que Escient era la única empresa que garantizaría el desarrollo continuo del servicio por parte de sus fundadores, así como proteger la operación en un ambiente en el que numerosas empresas estaban pujando (y en un caso, intentando extorsionar) para adquirir y vender inmediatamente el CDDB a actores importantes como Microsoft , que quería un servicio de reconocimiento de CD pero no trataría directamente con CDDB Inc. [7]
En 2000, CDDB Inc. pasó a llamarse Gracenote . [8] Un anuncio de 1999 había afirmado que el acceso al servicio CDDB "seguiría siendo 100% gratuito para los desarrolladores de software y los consumidores". [9] No obstante, Gracenote cambió a una licencia propietaria, lo que provocó críticas de que esto estaba explotando el trabajo de contribuyentes no remunerados y motivó el lanzamiento de Freedb en 2001, basado en la última versión con licencia libre de CDDB. [10] [11] [12] En marzo de 2001, Gracenote prohibió a todas las aplicaciones sin licencia (como Freedb) acceder a su base de datos. Las nuevas licencias para CDDB1 (la versión original de CDDB) ya no estaban disponibles, ya que Gracenote quería obligar a los programadores a cambiar a CDDB2, una nueva versión incompatible con CDDB1. [12] Freedb rápidamente se volvió más popular que Gracenote, [10] pero en 2006 fue descrito como "estancado", lo que Scherf (en ese entonces arquitecto jefe de Gracenote) tomó como evidencia de que "el enfoque y la dedicación requeridos para que CDDB creciera no podrían [haberse] encontrado en un esfuerzo comunitario". [11]
En junio de 2008, Sony Corporation of America completó la adquisición (propiedad total) de Gracenote, según la nota de prensa en el sitio web de Gracenote. [13] Luego, en 2014, Tribune Media Services (TMS) adquirió Gracenote de Sony, [14] solo para revenderla a Nielsen en diciembre de 2016. [15]
CDDB fue diseñado para identificar CDs completos, no solo pistas individuales. El proceso de identificación implica la creación de un "discid", una especie de " huella digital " de un CD creada mediante la realización de cálculos sobre la información de duración de las pistas almacenada en la tabla de contenidos del CD (consulte la siguiente sección para ver un ejemplo de cálculo). Este discid se utiliza con la base de datos de Internet, normalmente para descargar los nombres de las pistas de todo el CD o para enviar los nombres de las pistas de un CD recién identificado.
Esta información suele ser proporcionada por los usuarios finales . [16] En iTunes , que utiliza Gracenote, los usuarios nombran las pistas del CD y luego utilizan la opción "Enviar nombres de pistas" debajo del encabezado "Avanzado" en la barra de herramientas para enviar la información de las pistas. [17]
Dado que la identificación de los CD se basa en la duración y el orden de las pistas, CDDB no puede identificar listas de reproducción en las que se haya modificado el orden de las pistas ni compilaciones de pistas de distintos CD. CDDB tampoco puede distinguir entre distintos CD que tengan la misma cantidad de pistas y la misma duración de las mismas.
CDDB1 identifica los CD con un número de 32 bits, que normalmente se muestra como un número hexadecimal que contiene 8 dígitos: XXYYYYZZ. Los dos primeros dígitos (etiquetados como XX) representan una suma de comprobación basada en los tiempos de inicio de cada pista del CD, mod 255. Los siguientes cuatro dígitos (YYYY) representan el tiempo total del CD en segundos desde el inicio de la primera pista hasta el final de la última pista. Los dos últimos dígitos (ZZ) representan la cantidad de pistas del CD.
Por ejemplo, supongamos que un CD contiene una sola pista con una duración de 3610 segundos.
Primero, se calcula la suma de comprobación XX sumando los tiempos de inicio de las pistas mod 255. Dado que los CD tienen un desfase de 2 segundos desde el inicio de los datos del disco, XX se convierte en "02".
En segundo lugar, la duración total de reproducción del CD de 3610 segundos en hexadecimal es 0e1a, por lo que AAAA se convierte en "0e1a".
Finalmente, hay una pista en este CD, por lo que ZZ se convierte en "01".
El ID de disco completo del CD de ejemplo es "020e1a01". Cualquier CD que contenga una pista con una duración de 3610 segundos comenzando 2 segundos después del comienzo del CD tendrá este ID de disco. Para distinguir entre diferentes CD que tengan el mismo ID de disco, la base de datos CDDB1 está organizada en múltiples categorías. Si hay un conflicto con diferentes lanzamientos de CD que poseen el mismo ID CDDB1, se pueden colocar en una categoría diferente (como clásica, rock, blues, folk o miscelánea).
El código de muestra para calcular los identificadores de disco CDDB1 en varios lenguajes de programación está disponible en la web, como en Java . [18]
En sus orígenes, CDDB estaba orientada a la música pop/rock con la típica estructura artista/álbum/canción. Su base de datos a menudo carece de información adecuada sobre los CD de música clásica , principalmente debido a su estructura, que originalmente carecía de una forma estándar de almacenar los nombres de los compositores. [19] [20] En 2007, Gracenote anunció un formato mejorado, la Classical Music Initiative (CMI), que coloca toda la información adicional en la estructura de tres campos. El título de una pista clásica ahora contendría el compositor, por ejemplo " Vivaldi : Las cuatro estaciones , Op. 8/1, 'Primavera' - 1. Allegro". El campo del artista contendría toda la información sobre el conjunto, el director y quizás el solista , por ejemplo " Joseph Silverstein , Seiji Ozawa , Orquesta Sinfónica de Boston ". En 2007, alrededor de 10.000 CD de música clásica se habían convertido a esta nueva convención. [21] [22]