How to Reliably Record CDs

With typical burn times for full CD-Rs ranging from under 3 minutes (40x or faster speeds) to as long as 80 minutes (1x), it is frustrating when a buffer underrun or some other problem forces you to rewrite your CD-RW disc, or worse yet, turn your CD-R media to a coaster—an unusable disc that must be discarded.

Five major factors influence your ability to create a working CD-R: interface type, drive buffer size, the location and condition of the data you want to record to CD-R, the recording speed, and whether the computer is performing other tasks while trying to create the CD-R.

To improve the odds of getting reliable CD-R/RW creation, look for drives with the following:

  • A large data buffer (2MB or larger), or better yet some form of buffer underrun protection. The data buffer in the drive holds information read from the original data source, so that if a pause in data reading occurs, there's less of a possibility of a buffer underrun until the on-drive buffer runs empty. A larger buffer minimizes the chance of "running out of data." Newer drives with buffer underrun protection virtually eliminate this problem, no matter what size buffer is in the drive.

  • Support for UDMA operating modes. As you've already seen, UDMA modes transfer data more quickly and with less CPU intervention than earlier versions of ATA. To use this feature, you'll also need a motherboard with a busmastering UDMA interface with the appropriate drivers installed.

An alternative approach is to use packet-writing software to create your CD-R. All late-model CD-R/ CD-RW drives support packet writing, which allows drag-and-drop copying of individual files to the CD-R/RW rather than transferring all the files at once as with normal mastering software.

This "a little at a time" approach means that less data must be handled in each write and can make the difference between success and failure. If your drive supports this feature, it probably includes packet-writing software in the package.

Note that although packet-written CDs can be read with Windows 9x/Me and NT/2000/XP, they can't be read with Windows 3.1 and MS-DOS because these operating systems don't have drivers available that support packet-written CDs. Note that some CD-mastering software supports packet-writing to CD-Rs, but others don't.

For example, the DirectCD program included with Roxio Easy CD Creator can packet-write to both CD-R and CD-RW media and close CD-R media for reading on any drive, but Nero Burning ROM's InCD packet-writing software doesn't support CD-R. If your CD-R/RW drive is SCSI based, be sure you have the correct type of SCSI interface card and cables.

Although many drive vendors take the uncertainty out of this issue by supplying an appropriate card and cables, others don't. If you must buy your own SCSI card for your recorder, follow these tips:

  • Forget about ISA cards. Many new motherboards no longer include ISA slots, and even if they do, the performance of the ISA bus presents a bottleneck that will seriously inhibit drive performance.

  • PCI or Cardbus SCSI works well. PCI's 32-bit data bus and 33MHz typical performance is far faster than ISA's 16-bit data bus and 8.33MHz typical performance. Cardbus is PCI for notebooks, so the same benefits apply there as well.

  • Make sure the SCSI card is rated for CD-RW/CD-R use. The SCSI host adapters that are designed for use with and are sometimes bundled with low-performance devices such as scanners and Zip drives are not adequate for use with a CD-R or CD-RW drive.

Buffer Underruns

Whenever a drive writes data to a CD-R/RW disc in either Disk at Once or Track at Once mode, it writes to the spiral track on the CD, alternating on and off to etch the pattern into the raw media. Because the drive can't easily realign where it starts and stops writing like a hard drive can, after it starts writing it must typically continue until it's finished with the track or disc.

Otherwise, the recording (and disc if it is a CD-R) will be ruined. This means that the CD recording software, in combination with your system hardware, must be capable of delivering a consistent stream of data to the drive while it's writing. To aid in this effort, the software uses a buffer that it creates on your hard disk to temporarily store the data as it is being sent to the drive.

If the system is incapable of delivering data at a rate sufficient to keep the drive happy, you receive a buffer underrun message and the recording attempt fails. The buffer underrun message indicates that the drive had to abort recording because it ran out of data in its buffer to write to the CD.

For many years, this was the biggest problem people had when recording to CD-R/RW media. And for many years, the best way to prevent buffer underruns was to either slow down the writing speeds or have a large buffer in the recording drive, as well as to use the fastest interface and reading drive as possible.

Nobody wants to write at lower speeds (otherwise, why buy a fast drive?), so buffer sizes grew as did the interface speeds. Still, it was possible to get a buffer underrun if, for example, you tried browsing Web pages or doing other work while burning a disc.

Buffer Underrun Protection

Sanyo was the first to develop a technology that eliminates buffer underruns once and for all. It calls the technology BURN-Proof ("BURN" stands for "buffer underrun"), which sounds a little confusing (some people thought it prevented any writing on discs), but in practice it has proven to be excellent.

After Sanyo, several other companies have developed similar and compatible technology with various names. Including Sanyo's, the most common you'll see are

  • BURN-Proof, from Sanyo

  • JustLink, from Ricoh

  • Waste-Proof, from Yamaha

  • Safeburn, from Yamaha

  • Superlink, from Mediatek

You will see these technologies on many vendors' drives because most developers of this technology license it to various drive makers. Buffer underrun protection technology involves having a special chipset in the drive that monitors the drive buffer.

When it anticipates that a buffer underrun might occur (the buffer is running low on data), it temporarily suspends the recording until more data fills the buffer. When the buffer is sufficiently restocked, the drive then locates exactly where the recording left off earlier and restarts recording again immediately after that position.

According to the Orange Book specification, gaps between data in a CD recording must not be more than 100 milliseconds in length. The buffer underrun technology can restart the recording with a gap of 40–45 milliseconds or less from where it left off, which is well within the specification.

These small gaps are easily compensated for by the error correction built into the recording, so no data is lost. Note that it is important that the drive incorporate buffer underrun technology, but the recording software must support it as well for everything to work properly.

Fortunately, all the popular CD recording programs on the market now support this technology. If your drive incorporates buffer underrun protection, you can multitask—do other things while burning CDs—without fear of producing a bad recording.

Producing Error-Free Recordings

If you have an older drive that doesn't feature buffer underrun protection, follow these recommendations to help ensure error-free recordings and prevent buffer underruns:

  • Whenever possible, move all the data you want to put onto a CD-R to a fast local hard drive. If you can't do this, avoid using the following sources for data: floppy drives, parallel port–connected storage drives, and slower CD-ROM drives (especially 8x or slower). These locations for data usually can't feed data quickly enough to maintain data flow to the recording drive.

  • Before you master the CD-R, check your hard disk or data source for errors (the Windows 9x/Me Scandisk or Windows 2000/XP error-checking program can often be used for this). Also try defragmenting the drive. This ensures that disk errors or file fragmentation, both of which slow down disk access, won't be a factor in program or data search and retrieval.

  • Avoid trying to burn from active files or zero-byte files (often used for temporary storage). If you must burn these files to make an archival copy of your current system configuration, use a program such as Norton Ghost or PowerQuest Drive Image. These programs create a single compressed file from your drive's contents. Then, burn the disc using the resulting compressed file.

  • Turn off power management for your hard disk and other peripherals. In Windows you normally do this through the Power icon in the Control Panel.

  • Make sure your temporary drive has at least twice the empty space of your finished CD. Your CD's estimated space requirements are shown during the mastering process with programs such as Roxio Easy CD-Creator or NERO Burning ROM. Thus, if you're creating a CD with 500MB of data, your temporary drive should have at least 1GB of empty space.

  • With Windows 9x/Me, you'll improve disk caching by adjusting the typical role of the computer from workstation to server in the Performance tab of the System Properties dialog box. Note that this change works correctly with Windows 95B and 95C (OSR 2.x) and Windows 98/Me, but the Registry keys are incorrect in Windows 95 original retail and OSR1 (95A) versions.

Check Microsoft's Web site for the correct Registry key settings for Windows 95/95A, back up and edit the Registry, and restart the computer before making this change with those versions.

  • If your original data is coming from a variety of sources, consider using the Create Disk Image option found in most CD mastering software. This feature creates an image file on your hard drive that contains all the files you want to put onto a CD. Then, use Create CD from Disk Image to actually master the CD from that information.

  • If you're uncertain of success, why waste a CD-R blank? Use a CD-RW instead, which usually is written at a slower speed, or use the "test-then-create" option found in most recording software that does a simulated burn of the CD before the actual creation. After the simulation, you're warned of any problems before the actual process begins. This is not always foolproof, but it can help.

  • Small files are harder to use in mastering a CD than large ones because of the excessive drive tracking necessary to find them and load them. You might want to use the Packet Writing mode instead if your drive and software support it.

  • Keep your drives clean and free from dust. Use a cleaning CD if necessary. Dirty drives cause data-read errors or data-write errors if your recording drive is the dirty one.

  • Don't multitask. If you run another program during the mastering process, the computer is forced to perform time-slicing, which causes it to start a process, switch away from it to start the next process, switch back to the first process, and so forth.

This switching process could cause the recording drive to run out of data because it isn't receiving data in a steady stream. Forget about surfing the Internet, playing Solitaire, or creating a label for your new CD during the burning process if you want reliable mastering on a drive that doesn't feature buffer underrun protection.

If you're still having buffer underrun problems despite taking all the precautions listed here, try dropping down a speed. Go to the next lower speed and see how you do. Using a lower speed than the drive is rated for can be frustrating, but it's preferable to wasting time creating unusable discs.

As a final note, I have also seen problems with burning CDs caused by inadequate power supplies. An inadequate or over-taxed power supply can cause myriad recording problems (including buffer underruns). I've seen cases in which the system seemed to be normal in most respects, but there were tremendous problems recording CDs, from buffer underruns to power calibration errors.

After upgrading the power supply with a high-quality, high-output unit, the problems all but disappeared. I've said it many times, but the power supply is the foundation of a PC, and in general it is the most failure-prone or problematic piece of hardware in the system.