This article is from the CD-Recordable FAQ, by Andy McFadden (email@example.com) with numerous contributions by others.
Actually, they do. It is true that audio CDs use all 2352 bytes per block
for sound samples, while CD-ROMs use only 2048 bytes per block, with most
of the rest going to ECC (Error Correcting Code) data. The error
correction that keeps your CDs sounding the way they're supposed to, even
when scratched or dirty, is applied at a lower level. So while there
isn't as much protection on an audio CD as there is on a CD-ROM, there's
still enough to provide perfect or near-perfect sound quality under
All of the data written to a CD uses CIRC (Cross-Interleaved Reed-Solomon
Code) encoding. Every CD has two layers of error correction, called C1 and
C2. C1 corrects bit errors at the lowest level, C2 applies to bytes in a
frame (24 bytes per frame, 98 frames per sector). In addition, the data is
interleaved and spread over a large arc. (This is why you should always
clean CDs from the center out, not in a circular motion. A circular
scratch causes multiple errors within a frame, while a radial scratch
distributes the errors across multiple frames.)
If there are too many errors, the CD player will interpolate samples to get
a reasonable value. This way you don't get nasty clicks and pops in your
music, even if the CD is dirty and the errors are uncorrectable.
Interpolating adjacent data bytes on a CD-ROM wouldn't work very well, so
the data is returned without the interpolation. The second level of
ECC and EDC (Error Detection Codes) works to make sure your CD-ROM
stays readable with even more errors.
It should be noted that not all CD players are created equal. There are
different strategies for decoding CIRC, some better than others.
Some CD-ROM drives can report the number of uncorrected C2 errors back
to the application. This allows an audio extraction application to
guarantee that the extracted audio matches the original. The Plextor
UltraPlex 40 is one such drive.
See http://www.cdpage.com/dstuff/BobDana296.html for an overview of error
correction from the perspective of media testing. If you really want to
get into the gory technical details, try