Error detection, error correction and error concealment reading audio CDs

This experiment is aimed at analysing the way audio CD Players or CD ROM drives correct digital errors present in audio CDs. Three parameters are tested. The number of errors that the chipset can correct at the C2 stage of the CIRC decoding in burst errors, the accuracy of the C2 reporting of CD ROM drives, and the interpolation used to conceal uncorrectable errors.
I used no special hardware to test them. I tried to deduce them only from the digital data returned by the drives, using two different test CDs, and the DAEquality package made by Andre Wiethoff. That is why even people not interested in these drives may be interested in the methods used, that can be applied to any other drive.

These tests are based on Andre Wiethoff's DAE quality analisys tool, presented here in EAC's website. It is important to understand how it works before going on. Basically, a reference wav file is burned on a CD, then the CD is intentionally damaged. We will only use the damage done with a felt tip marker, turning unreadable a little part of data. Then the CD is extracted back to the computer, with some read errors due to the damage. Last, a little program called "analyse" compares the copy to the reference file, and outputs, besides other things, a text file with the number of errors that occured for each second of data. Read the above link for a full description.

Drives tested

Memorex DVD Maxx 1648 firmware GWH2 DVD ROM
Supports C2, no cache, accurate stream, rips from 17 to 32x with these settings

Teac CD 540E firmware 1.0a and 3.0a CD ROM
Supports C2, no cache, accurate stream, rips at about 6x only with firmware 1.0

Yamaha CRW3200EWK firmware 1.0d burner
Does not support C2, caches, accurate stream.

Sony DDU1621 DVD ROM firmware S1.6
Supports C2, no cache, accurate stream, rips from 17x to 32x with these settings

Yamaha CDX860 CD Player

Tests CD used

The first is made according to the template of the DAEquality package.

and the other is an old CDR that turned nearly unreadable at the beginning and at the end

another good copy, showing no errors in secure mode, was used as a reference.

The black zone on the first CD emulates a burst error : a whole range of information is missing, while the rest is correct. The seconds CD features random errors : some data can be wrong anywhere.

The tests were started as soon as the DAEquality pack 1.2 was available, as a result, different versions of the analyse program were used.

Analyse version 1.2 : Counts errors in full ranges in the log. Bug in digital silence handling, slight bug in error count for the graphs.
Analyse version 1.3 : Counts errors in mono samples in the log. First bug corrected.
Analyse version 1.4 : Second bug corrected.

Results

C2 accuracy


C2 accuracy on random errors, in %, of the Memorex DVD Maxx 1648 firmware GWH2 DVD ROM drive, versus error rate in mono samples


C2 accuracy on random errors, in %, of the Sony DDU1621 firmware S1.6 DVD ROM drive, versus error rate in mono samples


C2 accuracy on random errors, in %, of the Teac CD 540E firmware 1.0a and 3.0a CD ROM drive, versus error rate in mono samples

Note that the Teac only reached 9184 errors per seconds with this test CD. In comparison, the Sony performed well in this range too, but completely collapsed past 20,000 errors per second. A harder test CD should be used with the Teac in order to check for accuracy at higher error rates.

C2 Error correction in CIRC

Facing a burst error, like a scratch, for example, simulated by a black mark painted on the CD.

Drive C2 error correction Use of EFM
to flag wrong bytes
Memorex DVD Maxx 1648 firmware GWH2 DVD ROM up to 4 bytes No
Teac CD 540E firmware 1.0a and 3.0a CD ROM up to 4 bytes Yes
Yamaha CRW3200EWK firmware 1.0d burner up to 3 bytes No
Sony DDU1621 DVD ROM firmware S1.6 up to 4 bytes No
Yamaha CDX860 CD Player up to 2 bytes Yes

Error concealment

All drives were capable of performing linear interpolation on isolated samples.
PC drives can't do better : if more than one isolated sample is wrong, then they hold the last good value until the last wrong sample, that is interpolated between the hold value and the next sample.
The hifi player does better, it can perform a linear interpolation over 8 consecutive bad samples. Beyond, it holds the last valid sample, like PC drives.
The SPDIF output of the Memorex drive behaves exactly the same as the digital audio extraction : no less error correction, no more error concealment.

Complete results

DAEquality test CD results

DAE Results

C2 result

Dead CDR results

DAE results

DAE results comparison

C2 results

Analysis

C2 accuracy analysis

Error correction analysis (on request)

Error concealment analysis

Appendix

1 : How to analyse the data returned by ANALYSE.EXE with Microsoft Exel.

2 : How to detect the internal audio error correction ability of a CD ROM drive

Pio2001, created in september 2002, last updated february the 6th, 2003

Contact :