Home
Name Modified Size InfoDownloads / Week
LZW.cs 2014-07-25 39.2 kB
README.txt 2014-07-24 2.3 kB
Totals: 2 Items   41.6 kB 0
-------------------------------------------------------------------------------
                   LZWStream - The LZW algorithm in C#
-------------------------------------------------------------------------------

1.  INTRO

1.1 ABOUT
	Implementation of the LZW algorithm in C#, adhering to the built-in 
	System.IO.Compression. 
	The algorithm and code is much improved, compared to projects like 
	SharpLZW. 
	The LZW algorithm is for arbitrary lossless data compression and 
	are noticeable for simplicity and low (compared to others) memory 
	consumption. Making it interesting for eg. embedded use. 
	There're many other LZW implementations out there. This one is focused on 
	KISS and C#.
	
	This document is subject to change.

1.3 CREDITS
	The projected is created by me, Morten Kvistgaard, anno 2014. 
	Original work is based on SharpLZW: https://sourceforge.net/projects/sharplzw
	And Mark Nelson: http://marknelson.us/2011/11/08/lzw-revisited/

2.  USAGE
	The library consists of a single C# file: LZW.cs
	- Include the file in your own project.
	- Compile. 
	
	Be aware of the legal issues connected to the LZW algorithm. 

3.  TECHNICAL

3.1 ALLOCATIONS
	The algorithm will do a lot of allocations/frees due to the "ByteString" 
	implementation. Though, no more than normal string manipulations and usage. 
	
3.2 ADAPTIVE DICTIONARY DROP
	The algorithm could profit from a "drop dictionary" symbol. This is not 
	implemented. This could let the encoder rebuild the dictionary whenever 
	it's full, thereby readjusting to the new data layout and improve the 
	compression. 

4.  TESTS
	The algorithm is tested with the Canterbury file collection. 
	It hasn't been tested against any 3rd party implementations. 

5.  SUPPORT
	There's no support for the project at this time. That's reserved for our 
	customers. If you write to me, I'm unlikely to answer. 

6.  REPORT ERRORS
	Yeh, there be errors alright. There always are. Try writing to me 
	at mk@pch-engineering.dk.

7.  CONTRIBUTE
	Really? You think it's missing something? It's not really meant as a huge 
	glorified project you know, but if you really must, try contacting me
	at mk@pch-engineering.dk.
	
8.  MISC
	Project web page is located at: 
	https://sourceforge.net/projects/lzwstream/
Source: README.txt, updated 2014-07-24