The range encoder is a fast multisymbol entropy coder (similar to arithmetic coding) with GNU general public license (other licenses on request). It's compression is within 0.01% of arithmetic coding. It is based on an article dated 1979, so it is believed to be patent free.
The range encoder is an entropy coder similar to the arithmetic coder or huffman coder. Compared to an arithmetic coder the files are minimally larger (less than 0.01% in most cases) but the operation speed is nearly twice as fast. This range coder is distributed for free with GNU general public license.
The range encoder is based on an article presented by G.N.N. Martin on the Data Recording Conference, Southampton, July 1979. Our copyright allows you to make copies of that article for research purposes, however if it is illegal in your country you are not allowed to download that file. If you know the copyright holder please tell me. There also was a poster on the Data Compression Conference 1998 where proceedings page (inhouse use only, copyright IEEE) and poster are available.
This package contains building bricks for a compression program. The files are distributed with GNU general public license. If this doesn't fit your needs (free of charge, availability of source code for your program too) email me at email@example.com , I am sure we can arrange. Politics: if you charge I charge - but less than you need to hire a programmer to write & test it. I will not warrant more than your employee would when writing such a program if I charge. I will not warrant anything on the freeware - see the license. However this coder has been tested on several GB of data during test of my freeware szip data compression program.
I have been told that IBM UK did not apply for any patent on this 1979 range coder method as described in the article, so I have good reasons to claim it patent free.
Having done this legalize stuff, here for the fun part :)
Contained in the source archive (DOS/Windows or Unix) is:
There is a supplementary file called renorm95.c distributed under different conditions (basically: research purposes) that changes the rangecoder into an arithmetic coder to allow comparisons. It can be downloaded from here (DOS) or here (Unix) for research purposes. These programs differ in the closing from the ones used to produce the tables in the DCC98 poster so filesize does vary by some bytes.
History: (all versions are compatible)
1.2 added some more examples (order 1, simple)
1.3 fixed a bug that could occur when compressing >16MB without resetting and removed references to eiunix.tuwien.ac.at from files.
My daughter would be pleased to receive stamps from various countries,
so if you like please send a postcard to
Austria - Europe
If you have any questions or suggestions regarding range encoding please mail firstname.lastname@example.org  Compressconsult.com will also assist in adaption to your needs, integration or other data compression related issues.
You also might want to look at our Huffman Coding Hints or our free compressor szip. We also give compression advice or knowhow, see the company page
Michael Schindler, Oct. 1999. If you locate a spelling error click here
szip and the >data</// logo are trademarks or registered trademarks
of Michael Schindler.
All other trademarks or registered trademarks are held by their owners.