Hi. The RSCODE project is an implementation of a Reed-Solomon error correction algorithm. Error correcting codes are marvelous jewels of
mathematics and algorithms, providing an almost supernatural ability to recover good data
from a corrupted channel.
This implementation of the Reed-Solomon codes provide convenient 'byte-sized' block coding
which is convenient for adding protection to data which is stored as eight-bit bytes (i.e., most
common computer data).
The Reed-Solomon code is the same one used for encoding of data on Audio CD's and CD-ROM
disks, as well as many magnetic and optical disk controllers. You basically want to use
Reed-Solomon coding in any situation where "forward error correction" is needed, i.e., the
decoder will not have the option of requesting retransmission of bad blocks.
There are many
ways you might use error correction coding, such as a high-reliability layer on top
of a real-time streaming audio protocol which is implemented atop an unreliable
protocol such as UDP. Or else telemetry from a remote data probe, or encoding of
data into a photographic image.
If you would like me to help you implement an algorithm,
or have questions about the coding mechanism, I can answer some questions (or
can send you my consulting rates).
The code is licensed under the LGPL, although I will consider granting
other licenses for people who wish to modify and use the code in commercial products
and who do not wish to have their project code subject to GPL.
Have fun!
hqm@ai.mit.edu
If you find this code useful (as thousands of people have already) you
can donate some money (via PayPal) to help in further development, and to make me happy.
Links
Other Projects Using RSCODE library
QR Code decoder library implementation of a 2d Bar code reader for mobile phones
in Japan(runs under au mobilephone which supports EzAppli(Java).
(EzAppli is docomo i-Appli-like platform in Japan.))