Hi,
I am trying to understand how Accurate Rip works and in particular why I get mismatches from time to time.
There are tools which calculate the checksums and there are other tools which can also find out some offset. My guess is, they calculate the checksum for various offsets and compare with the AR database which one gets the highest confidence. Calculating different offsets can probably be done cheaper than actually calculating the checksum again and again due to the construction of the checksum.
Question 1: Am I correct that offset means that there are n bytes of zeros (0x00) prepended or missing at the beginning of the track?
Does the track still have the same length, i.e. is the same number of bytes missing or appended at the end? Or is the track then shorter or longer?
Question 2: Zeros in the beginning shift the whole thing. Do zeros at the end influence the AR checksum or is that like adding zeros (no effect)?
This works consistently for many of my CDs. Pipeline uses abcde v2.9.3 on Linux, the offset of my drive seems to be 6, cdparanoia options are "-v -O 6 -z -S 8". I produce FLAC files. I hope that is correct so far.
When the checksums don't match, I see those possible reasons:
1. if a single track is different, let's say track 7 out of 12, there are probably real errors in the FLAC file. There is probably not much I can do apart from trying to read it again. Correct?
2. if it is a rare CD and it's not in the database, there is nothing to compare against. No chance.
3. Many CDs show a mismatch for the first track and all others are fine with checkCD.pl or arflac.py. This seems to be an offset, as trackverify shows a consistent offset for all tracks and calculates different AR sums.
Example for this last case:
checkCD.pl
Track Ripping Status [Disc ID: 0015c36c-b40ab30d 00d9b3e4]
1 ** Rip not accurate ** (confidence 200) [bc1bc698] [721e79dc]
2 ** Rip not accurate ** (confidence 200) [36d1055c] [d6e7cb16]
3 ** Rip not accurate ** (confidence 200) [a7b593fb] [749b790a]
4 ** Rip not accurate ** (confidence 200) [9f31ee0b] [d6de6492]
5 ** Rip not accurate ** (confidence 200) [5418b599] [4a96322b]
6 ** Rip not accurate ** (confidence 200) [072bf062] [6b360d52]
7 ** Rip not accurate ** (confidence 200) [e9af6adf] [4c760c78]
8 ** Rip not accurate ** (confidence 200) [f1664ad7] [0b6ac440]
9 ** Rip not accurate ** (confidence 200) [afd628a2] [c791b0d9]
10 ** Rip not accurate ** (confidence 200) [364ef5f9] [ef476b69]
11 ** Rip not accurate ** (confidence 200) [ee4edcab] [ec9b083b]
12 ** Rip not accurate ** (confidence 200) [3f346a8a] [9235d60f]
13 ** Rip not accurate ** (confidence 200) [127a479d] [85397434]
Your CD disc is possibly a different pressing to the one(s) stored in AccurateRip.
Track(s) Accurately Ripped: 0
**** Track(s) Not Ripped Accurately: 13 ****
Track(s) Not in Database: 0
trackverify -R
AccurateRip V1 AccurateRip V2
Track Confidence Offset Checksum Confidence Offset Checksum
───── ────────── ────── ──────── ────────── ────── ────────
01-S… 17 12 A0CFC979 32 0 5C0DD1A9
02-S… 17 12 AAD5801F 32 0 62E8B697
03-S… 17 12 BCCA651D 31 0 5EFB197D
04-S… 17 12 2B403D76 32 0 4A25F84C
05-S… 17 12 DFDCF85F 32 0 BE45327A
06-S… 17 12 3CC666CD 32 0 3629CFD5
07-S… 17 12 4403CC29 32 0 F2217619
08-S… 17 12 0A434936 32 0 F28D81C7
09-S… 17 12 DBDE7E0E 32 0 9C276863
10-S… 17 12 B8F7A524 32 0 6D14A186
11-S… 17 12 6770D37E 31 0 749A1765
12-S… 17 12 177D6712 32 0 B9E6DF1A
13-S… 17 12 3F73ADAE 32 0 583E7508
Question 3: Is it a good sign that the offsets of all tracks are the same?
Question 4: How can AR version 1 have a different offset than AR v2?
Question 5: Can I correct this offset after the fact such that other tools can verify it, too?