Problems Copying Audio CDs


The audio CD standard was designed from the beginning for sequential access (audio streaming) only. The digital audio, on the other hand, was intended to be read in real time and converted to an analog signal.

Reading audio with random access and moving digital data over the data bus without converting it to an analog signal, is a relatively new feature added only recently to CD-ROM drives. The main problem with reading CD audio data over the data bus is the low degree of seek accuracy provided by CD-ROM drives when accessing CD audio blocks. This is caused by the fact that CD audio data are stored in a different format that CD computer data.

Problem Accessing CD Audio Blocks

In a computer data block there are 2,048 bytes of user data plus header and error correction information. The header information in a computer data block contains the precise address of the block allowing the drive to precisely seek the correct block before reading. In an audio data block, the 2,352 bytes of the physical block are entirely filled up by audio data. There is no header containing the block address, no sync codes and no error correction. This means that the drive must use the Q sub-code information to find an individual block. Unfortunately, the Q sub-code information was only designed to allow consumer audio CD players to provide audio positioning and position display within an accuracy of 1 second. As a result, Q sub-code addressing is only approximate. When searching for a specific audio data block, a CD-ROM drive moves the laser assembly to a position near where the block should be located, starts reading, and compares the Q sub-code information to the desired block address. When a Q sub-code address close to the desired block address is located, the drive begins transferring data. Most CD-ROM drive specifications state that "the actual starting audio address will be within four Q sub-code addresses of the requested starting audio address", in other words 4 audio blocks or 4/75th of a second. As a result, given the address of a single block, a read request might return any one of 9 blocks (according to specifications of the drive). Some drives may be even less accurate than four Q sub-code addresses.

Buffer Overflow Problem

A second problem with CD audio data capture occurs when the computer cannot accept audio data from the drive fast enough. This is referred as a "buffer overflow", because the CD-ROM drive must write data into its internal buffer before the computer has finished retrieving data already in the buffer. During a CD duplication process, a buffer overflow condition is usually a direct result of the CD-ROM drive reading faster than the CD recorder writes. It is common to see 32X or 40X CD-ROM drives while the fast CD recorders are usually 4X, 6X or 8X. When a buffer overflow occurs, the read operation must be restarted. The next read may not begin transferring data at exactly the same sample (a side effect of the 4 audio blocks accuracy problem) resulting in a few lost or repeated samples. This lost or extra data can create audible artifacts in the resulting sound file. Because of the previous problems, it is not possible to reliably read accurately an audio stream without a re-matching or re-synchronization procedure.

About Digital Audio Extraction

If you are having problems with the quality of audio tracks that have been recorded to CD-R disc, please check that your source CD-ROM drive is capable of "Digital Audio Extraction" at a least twice the speed that your recorder is set to record at. Copying audio digitally from a CD requires a CD-ROM drive or CD recorder which supports digital audio extraction (DAE). A CD-ROM drive may play audio CD's perfectly, but this does not mean that it is capable of the far more complex task of extracting Audio digitally. Many CD-ROM drives do not support DAE at all. Some support DAE but not very well. Few high speed CD-ROM drives can extract audio successfully at or even near their top-rated data speed. If your CD-ROM drive is not capable of DAE then it is preferable that you write the audio tracks to and then from an image file on your hard drive. All CD recorders can perform DAE.

Unsuccessful audio extraction will give you clicks, pops, or hissing within the track. The most common reason is that DAE was performed at too high a speed for your source CD-ROM or CD recorder to maintain proper synchronization of the audio data (some professional duplicators, such as the Microboards DSR 8880) allow you to change the DA reading speed, see). Audio samples are skipped or repeated, causing errors which sound to the human ear like clicks, pops, or hiss. The solution is to slow down DAE. However, for some drives to get a clean audio extraction, it requires reading at very slow speeds, with lots of going back and re-reading the same audio samples over again to make sure that everything is in the right place. This is refered to jitter correction. Sometimes the read will be so slow that it becomes impossible to copy directly from the source audio CD to the CD recorder. In this case you will have to copy the audio tracks to hard disk and then record them back to CD.

A CD-ROM drive that is not capable of extracting digital audio can also cause read errors when trying to record an audio CD from it. If your CD ROM is capable of Digital Audio Extraction and you are getting this problem, try dropping the extraction speed (i.e. change the Audio Extraction to a slower setting). Some drives are better at extracting Audio at higher speeds than others. Once the audio tracks have been copied to a disc, they will be saved in the specified temporary folder as Wave files. You can listen to these using either your soundcard software or Windows media player. If you find that the quality is good, but once written to a CD, the quality is poor, try dropping the recording speed.

About "jitter" and "jitter correction"

There are two kinds of jitter that relate to audio CDs. The usual meaning of "jitter" refers to a time-base error when digital samples are converted back to an analog signal. The other form of "jitter" is used in the context of digital audio extraction from CDs. This kind of "jitter" causes extracted audio samples to be doubled-up or skipped entirely.

The problem occurs because the Philips CD specification does not require block-accurate addressing. While the audio data is being fed into a buffer (a FIFO whose high- and low-water marks control the spindle speed), the address information for audio blocks is pulled out of the subcode channel and fed into a different part of the controller. Because the data and address information are disconnected, the CD player is unable to identify the exact start of each block. The inaccuracy is small, but if the system doing the extraction has to stop, write data to disk, and then go back to where it left off. The CD player will not be able to seek to the exact same position. As a result, the extraction process will restart a few samples early or late, resulting in doubled or omitted samples. These glitches often sound like tiny repeating clicks during playback.

As discussed previously, the blocks on a computer data CD-ROM have a 12-byte sync pattern in the header, as well as a copy of the block's address. It is possible to identify the start of a block and get the block's address by referencing to the data FIFO alone. This is why it is so much easier to pull single blocks off of a computer data CD-ROM.

With most CD-ROM drives that support digital audio extraction, you can get jitter-free audio by using a program that extracts the entire track all at once. The problem with this method is that if the hard drive being written to cannot keep up, some of the samples will be dropped. Since the output buffer used during DAE is small comparing to the input buffer, this worsens the problem. Some CD-ROM drives, e.g. most of the Plextor models, include special circuitry that enables them to accurately detect the start of a block.

"Jitter correction" is the process of compensating for jitter and restoring the audio to its intended form. Jitter correction can be done by software. This involves performing overlapping reads, and then sliding the data around to find overlaps at the edges. Most DAE programs will perform jitter correction.

  iSchoolMedia logo (2K) Comments concerning this page, call 23369662 or e-mail to info@ischoolmedia.com.

The material in this document is for information only and is subject to change without prior notice. Whilst reasonable efforts have been made in the preparation of this document to assure its accuracy, iSCHOOL NEW MEDIA LIMITED assumes no liability resulting from the use of the information contained herein. Company names and products are property of their respective owners.