data compression link collection

Run Length Encoding/RLE

Run Length Encoding is a conceptually simple form of compression. RLE consists of the process of searching for repeated runs of a single symbol in an input stream, and replacing them by a single instance of the symbol and a run count.

A Compressed Bitset Class

We have developed the CMJBitset class as a plug-in replacement for bitset. The CMJBitset classm depending on compilation optionsm may take as little as 7 bytes to represent a bitset of any size, assuming all the bits are set or reset. In comparision, a 1024 bitset will take 128 bytes. In essence, the CMJBitset operates by run length encoding a bitset if the bitset is either almost all set/reset, but otherwise uses the STL bitset class.

* * * * *

Posted in June 27th, 2004

Basic Compression Library

Marcus Geelnard has created a batch of compression routines that you can plug and ply into your programs at will. Marcus is using the wonderfully open zlib license, which means thare are just about no reason you can’t use this code. The 1.0.5 added an LZ77 codec to the RLE, Huffman, and Rice coders

Satisfied user Todd W said: I needed a simple set of compression routines for use in an embedded system. I must be able to store a fair amount of information in a small EEPROM as a generic database. The Huffman coder works very well in the application and has met my needs exactly! Very nice!

* * * * *

Posted in May 14th, 2004

Michael Dipperstein’s Run Length Encoding (RLE) Page

The ever-productive Michael Dipperstein now has a useful page on Run Length Encoding, including ANSI C code.

* * * * *

Posted in May 10th, 2004


This is the Assembler code used to compress or decompress some data by modified RLE algorithm. The ZIP file contains ASM/OBJ files + a PAS unit which represents packing functions in easy to use manner (can compress files, streams etc) and can be used in Delphi applications.


Posted in May 6th, 2003

The Standard Function Library: Compression Functions

The guys at iMatix had the idea that they could write a super-library of C functions that woud be so useful it would rule the world. As far as I can tell, it didn’t catch on. However, there are a few compression functions here that some folks might find interesting.


Posted in May 4th, 2003

Windows GDI Bitmap Compression

A description of the format used to implement bitmap compression under Windows.

* * *    

Posted in October 12th, 2002

TCompress Component Set

File and database compression components for Delphi. Compress to/from file, memory, and blob. Uses RLE, LZH, and LZW. Shareware.

Version 7.0 was released in September of 2002.

* * * *  

Posted in September 15th, 2002

Wikipedia Entry: Run Length Encoding

The Wikipedia entry for RLE. Given the simple nature of RLE, this provides an adequate explanation.


Posted in January 27th, 2002


A bijective RLE compressor written in Java. Includes all source code, seems to be free.

* * * *  

Posted in August 11th, 2001

A Second Modified Run Length Encoding Scheme for Blocksort Transformed Data

Another paper by Michael Maniscalo discussing a scheme for Run Length Encoding of data that’s been put through the blocksort transform. His first paper uses fixed length codes, this uses variable lenghts.


Posted in June 21st, 2001

RLE - Run Length Encoding

The Data Compression Reference Center wants to teach you about Run Length Encoding. A tutorial here, plus some links.
This link points to an archived site, as the original has disappeared. Links on the archived page may or may not work properly.

* * *    

Posted in October 3rd, 2000

The Utah RLE (Run Length Encoded) format

A specification of a file format that uses RLE.


Posted in October 3rd, 2000

A Run Length Encoding Scheme For Block Sort Transformed Data

A paper by Michael A. Maniscalco that desribes an RLE algorithm tailored for use with the BWT compression technique.

* * * *  

Posted in September 21st, 2000

An Optimizing Hybrid LZ77 RLE Data Compression Program

An Optimizing Hybrid LZ77 RLE Data Compression Program, aka Improving Compression Ratio for Low-Resource Decompression by Pasi Ojala.

Presents a new literal tagging system, a fast exhaustive string
match algorithm, an optimal parsing algorithm, and results on
Calgary Corpus and Canterbury Corpus.

* * * *  

Posted in December 13th, 1999

Run Length Encoding

Arturo Campos describes the simple RLE algorithm, used in BWT to improve sorting speed.

* * * * *

Posted in November 17th, 1999

EGI compression schemes

This page discusses the various compression schemes used by EGI, Shannon-Fano, BWT, and RLE. EGI is a player of animation sequences.


Posted in November 14th, 1999