Multi CD/DVD archiver

Cesky Ceska verze

MCD is a program for storing very large files onto several CDs or DVDs so that the original data can be reconstructed even if some files become unreadable in future. The original data can be reconstructed even after complete loss of one or two CD/DVD disks. MCD is not a burning program - it can only cut the data into several blocks, compute horizontal and vertical parity and store the result in subdirectories. Files from each subdirectory must be later burned onto a CD/DVD by other tool like Nero.

How MCD works

Before burning, the input data is divided into smaller blocks. Each disk contains up to 64 data blocks and two parity blocks. The block size is approximately 11 MB for CD and 70 MB for DVD disks. If there is a problem with reading of one or two data blocks then the parity blocks can be used to reconstruct the original data (horizontal parity). Finally, another one or two disks with vertical parity is added to the archive. These disks are used if there are more than two unreadable blocks on any media (or if some media is lost or become completely unreadable). If only one vertical parity disk is added then the archive can survive complete loss of a single disk. If two parity disks are generated then the archive will survive two lost disks.

Archive structure

The basic block structure of the archive is displayed below. Each disk contains up to 64 data blocks (for example d01_db02 is second data block of the first disk). Then two blocks with horizontal parity are added (d01_pb01 and d01_pb02). The last two disks contain vertical parity.

block structure

Future compatibility

One of the most important features of all archiving programs is compatibility with different computers and future versions of operating systems. Therefore, to increase chance for succesful archive restoration, MCD program is distributed together with full source code. Both program executable and source code is also copied to every archive. This way, it is possible to extract the original data even on machines without MCD installed. If for any reason the current version won't work on future operating systems then the source code can be modified and the program can be ported to the new environment.

MCD used for archiving digital video

MCD was originally developed for archiving huge files with digital video (DV) onto CD-ROMs. One hour of video in DV format has approximately 13 GB and needs over twenty 700MB CD disks. When DVD is used then only three media are used for data and one or two media for vertical parity. Due to much smaller number of DVD disks it is usually enough to use only single vertical parity disk. Three DVD disks are exactly enough to store 60 minutes in DV PAL format. It is good to know such limits already during video editing because 61 minutes would already need four data DVDs.

MCD was designed exclusively for storing very large files. It is very inefficient for files smaller than several tens of megabytes. When higher number of small files must be archived then the files should be first compressed into single big file.

System requirements

The program was compiled for Win32 API. It can work with very big files (over 4 GB) but such files must be stored on a NTFS partition (operating systems WinNT, Win2000 or WinXP). At the run time it needs approximately 50 MB RAM when a CD archive is created and 250 MB RAM for DVD archive creation. At the same time it needs free disk space approximately 1.2 - 1.5 times bigger than the original data.


MCD is freeware (free for any commercial and non-commercial use). It needs operating system Windows 98 or better. No installation is needed - just copy the mcd.exe and mcd_src.rar files into a directory and run the program. MCD is a console application (no windows or dialogs) and parameters must be specified at command line.

Download:  MCD 3.5 from 11-Mar-2004

(c) Libor Šindlar, 11.3.2004 Back