Offsets
updated July 1, '05

What?

Diagram A drive does not position exactly, it will position a little before or after where it should be. The picture illustrates the effect: if the drive positions 1000 samples too early, the entire rip will be shifted by 1000 samples (all tracks!).
This shift is called an offset. It is a constant number of samples, unique for each type of drive. The ASUS CD-S520/A drive has the biggest offset I know of: 1858 samples, which is about 1858/44100 = 0.042 sec = 42 milliseconds. This is a very small effect, inaudible even (because of the silent parts between the tracks). So an offset is not something to worry about. But if you want to make an exact duplicate of your CDs, you will want to correct it. The idea is simple: let EAC tell the ASUS CD-S520 to start 1858 samples later. The only challenge is to find out what your drive's offset value is. That's what this article will help you with. Please do not confuse offset with offset correction: the ASUS' offset is -1858 (minus!), the offset correction is +1858 (plus!).
The offset mentioned so far, is actually the read offset. There is also a write offset (see further).
If you have different drives, it is enough to find the offset for one of them. The other drives' offsets can be derived from it with a WAV comparison. For an example of such a WAV comparison, see below.

Correcting the Read Offset

Databases. If you are lucky, you will find your drive's offset in this, this, this or this database. Or search Google for offset and your drive model if you feel lucky ;-). All these databases show offset corrections which can directly be inserted in EAC: Drive Options | Offset/speed. The first database is very reliable, but the other databases may very well contain wrong values - that's why we will determine your offset with another method as well, as a check (see further). If you wonder about your drive's exact model, have a look in the logfile EAC creates for each rip.

Do-it-yourself. You can also find the offset by yourself. Even if you have found your offset in a database, you still might want to check it this way. There is no guarantee that you will find it, but we will do our best.
To find the offset, we will take advantage of AccurateRip. AccurateRip is a new plugin for EAC and any other ripper. It says whether the created rip is 'perfect' (by comparing it with other rips from a database, for more info see the AccurateRip website). Rips made with EAC should mostly be 'perfect' already, though. AccurateRip is still in the development stage, but we will already use it to find your offset.
You must have a recent EAC (version 0.95 prebeta 5 and later). Instructions on how to setup AccurateRip are here on the AccurateRip website. Summarized: if you insert a CD that can be used to configure AccurateRip, a message pops up and guides you through the configuration. After that EAC will automatically use the found offset correction for the configured drive.
Don't panic if you don't have the right CDs. There is another, older way to find your offset, via EAC. Special CDs are again needed: they are listed at the bottom of this page. The ID code you see in the right column must be the same as the ID code on your own CD (on the CD's inner ring). Once you have found such a CD, you can find your offset with EAC via Drive Options | Offset/speed | Detect read sample offset correction.
Unfortunately some CDs give wrong results with this last method (this is due to different CD pressings with the same ID, which have different, unexpected offsets). So don't rely on just 1 CD, as chances are too big that your offset will be wrong. To be sure you need 2 or preferably 3 CDs that give the same result.

Overreading. Offset correction tells your drive to read a little away from its normal position. For the first or last track that implies reading out of the drive's normal read range, also called overreading. Not every drive can overread. If yours cannot, EAC will simply fill up the missing samples with silence. If yours can, activate the overread setting in EAC (see previous Screenshot), otherwise EAC would not ask the drive to overread. To find out whether your drive can overread, there are several possibilities. With the right CDs it can be detected by EAC (see previous screenshot). The alternative is done in our Ripping Guide: rip with the overread setting enabled, a sync error or CRC mismatch will appear in the last track if your drive can't overread. A last method is described here.

Correcting the Write Offset

Also for writing an offset comes into play: the write offset. It can be easily derived from the read offset. EAC is the only burning program I know that can correct the write offset (update: Burrrn and Plextools now as well), but it does not support all burners (update: not-supported burners can still burn with the EAC version that includes CDRDAO).
To find your write offset, you just need a WAV file, a burning program and a CD-RW disc. Burn the WAV as an audio CD and rip it again with a corrected read offset. The ripped WAV will be the same as the original WAV but shifted due to the write offset. To find that shift, do Tools | Compare WAVs. In this example the ripped WAV has 6 samples that are not in the original WAV. EAC uses the words 6 repeated samples or 6 missing samples to say that the WAVs are the same but 6 samples shifted. In our example we conclude that the write offset is +6. Insert your result in EAC. Verify your result by doing the same experiment again (use EAC for burning now). There should be no shift at all. A few different samples may occur if your drive doesn't overread.

Combined Offset Correction

This offset is only useful for people who don't know their offsets, and want to burn an offset-corrected CD. It is the combination of the previous 2 offsets. It is a 'total' offset for a reader-writer combination. Tracks on your harddisk will have a wrong offset, only those burnt on CD will be offset-corrected (and only if they are burnt with the one, unique writer the combined offset was found for). Also some samples of the first & last track will be missing. The combined read/write offset correction can be found similarly to the last paragraph: burn, rip (without offset correction) and compare the 2 WAVs. The correction value is then the amount of repeated samples in the ripped WAV (or missing samples in the original WAV). Insert the value in EAC.