dvdisaster Version 0.72.6 / 0.79 (devel-3)
Česky     Deutsch     English     Русский

Questions and Answers
·Technical Questions
·Error messages
·Background information
-Error correction properties
-Image level data recovery
-RS01, RS02 and RS03
-Linear reading strategy
-Adaptive reading strategy
-Remarks on read errors
-Hints for storing the error correction files
Bug reporting
Privacy policy

Technical properties of the error correction

This page outlines the basic ideas behind dvdisaster so that you can see for yourself whether it meets your demands on data safety. If in doubt, you should not use dvdisaster or deploy additional data backup strategies.

Method of error correction.   dvdisaster uses a Reed-Solomon code together with an error correction algorithm optimized for the treatment of erasures. The implementation draws a lot of inspiration and program code from the excellent Reed-Solomon library written by Phil Karn.

Using the standard settings of an error correction file 223 medium sectors are combined into one error correction code ("ECC") block. Medium read errors are regarded as "erasures"; therefore a maximum of 32 bad medium sectors*) are correctable per ECC block.

The 223 sectors are selected so that they are evenly distributed over the medium surface. Therefore large contigous areas of defective sectors can be corrected before the threshold of 32 defects per ECC block*) is reached. This kind of error pattern is especially common for an aging medium where the outer area is starting to degenerate, and for scratches along the data spiral.

On the other hand, radial or diagonal scratches are expected to be correctable in the CD/DVD drive itself. If not, the employed error correction strategy performs rather neutral in these cases (neither especially good nor extraordinary bad).

Limits of error correction.   In the wost case, 33 defective sectors*) are sufficient to prevent a full data restoration. However to achieve this effect, the errors have to be distributed over the medium in such a way that they occur in the same ECC block - such a pattern is very unlikely.
Empirical tests have shown that on aging media about 10% of the overall sector count may become defective before the threshold of 33 defects per ECC block*) is reached.
Scratches will cause the threshold to be reached earlier, therefore it is recommended to visually check the media in regular intervals. Media with read errors caused by scratches should be replaced immediately.

Hardware limits.   Most drives will not recognize media when the lead-in area before the first sector (near the center hole) is damaged. In such cases, dvdisaster will not be able to recover any content from the media.

It is not feasible to enhance the reliability of poor quality media by using dvdisaster. Cheap media can decay within a few days to an extent which will exceed the capabilities of the error correction code.


*) The given threshold of 32 correctable errors per ECC block is the standard setting. It is possible to select other values for higher or lower error correction capabilities. When error correction data is put directly on the medium, the number of correctable errors depends on the free space on the medium.
Copyright 2004-2014 Carsten Gnörlich.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.