LDPC/LDGM is a llarge block forward error correction codec library.
Version: 2.1LDPC/LDGM is a llarge block forward error correction codec library. It is significantly faster than traditional Reed-Solomon codecs.
Operating System: Linux
Traditional small block Forward Error Correction (FEC) codes, like the Reed-Solomon erasure (RSE) code, are known to raise efficiency problems in particular when they are applied to the Asynchronous Layered Coding (ALC) reliable multicast protocol. We have therefore designed a large block FEC codec, derived from the well known Low-Density Parity Check (LDPC) codes, and capable of operating on source blocks that are several tens or hundreds of megabytes long. This work is based on the theoretical work done by Gallager in the early 1960's.
What's New in This Release:
· The codec supports any size of symbols (in previous releases, the symbol size had to be multiple of 4). Note that sometimes the packet size must still be a power of two (i.e. if multiple symbols are packed in the same packet).
· Improved performances (6.3% relative improvement during encoding, 3.8% during decoding with LDPC-Staircase codes, with a 20,000 symbol object and 2/3 code rate).
· Source code clarifications. In particular, the src/ldpc_profile.h file gathers all the codec compilation controls. Don’t hesitate to give a look at it and change when needed.
· A new SPARSE_MATRIX_OPT_SMALL_INDEX mode reduces significantly the memory requirements of sparse matrices (the matrix size is decreased by 1/6 on 32-bit systems).
· Tested on 64-bit architectures (Pentium D)/Linux.
· This version is in line with IETF Internet-Draft: draft-ietf-rmt-bb-fec-ldpc-03.txt (available in the doc/ directory), and is compatible with release 2.0 (but not the 1.* releases).
· There is no major change in the API. Yet an LDPCFecSession::GetMaxN() method has been added which can be useful in SPARSE_MATRIX_OPT_SMALL_INDEX mode.