I recently went through a hassle trying to submit CD
CDDB data to freedb.freedb.org because of an improper
DISCID creation. I was using KsCD to submit because
grip does not submit via HTTP (only e-mail, and that
is harder to set up on my box). Anyway, libkcddb.so.1
had a bug in it that has been fixed, but I see that
grip has the same problem!
This only happens for a few CDs, but there appears to
be a bug in the algorithm used to compute DISCIDs.
I will attach my e-mail log with Joerg at freedb.org,
and will attach the sample CDDB data generated by grip
that exhibits the same problem.
Basically, I understand that the DISCID computation is
supposed to take the disc size and subtract off the
index to the beginning of the first track. I imagine
that grip is not subtracting that offset.
The DISCID is in the form xxyyyyzzz. Basically, the
yyyy portion of the DISCID is off by +1 under some
circumstances. Naturally, this will prevent you from
being able to get CDDB data on certain disks for
queries, and not just prevent you from submitting CD
data to freedb.org.
Email transcript describing bad DISCID
Logged In: YES
user_id=697549
Attached detailed description of problem, along with
references to correct algorithms to compute DISCID. Do not
dismiss the attachement because KsCD and libkcddb.so.1 is
being discussed. grip exhibits exactly the same bug that
KsCD experienced on exactly the same CDs.
CDDB data generated by grip with bad DISCID
Logged In: YES
user_id=697549
Attached grip generated CDDB data that has the incorrect DISCID.
The correct DISKID is 0d108211, and not 0d108311 as
generated by grip 3.3.1.
Logged In: YES
user_id=697549
A second example of a bad DISCID generated by grip 3.3.1.
freedb.org says:
Invalid DB submission: disc ID generated from track offsets
(da106511) not found in DISCID
See attached. The correct DISCID is da106511, and not da106611.
CDDB data generated by grip with bad DISCID