Error Correction for a Repeating Stream

I have an application in which I need to use error correction. I am not sure which approach makes the most sense. Reed Solomon seems to be the most popular choice, but I thought I just listed my environment to see if something else appears.

I have a potentially very noisy data stream with 50% data loss and random synchronization loss. The sender will repeat the data many times. The receiver can read several copies of the data, but each of them is subject to various losses and may have parts of the data that are missing. In each data block, I can determine which bytes were lost due to transmission, but error correction should also include a way to check and correct the entire data block.

When I say that things are missing, I mean the loss of synchronization. I will exit the data stream and return at some arbitrary point later. It is impossible to tell where I am in the stream without any marker codes. I can add myself, but if there is a standard approach here, that would be nice.

If Reed-Solomon is the way to go, does anyone know of a good C ++ implementation?

+3
source share
1 answer

Source code of Reed-Solomon: http://sourceforge.net/projects/rscode/

However, for 50% data loss, I think that turbo code or LDPC will have better performance than Reed-Solomon.

-1
source

All Articles