LZX
Dan Tobias (Talk | contribs) |
(add specifications and source links and mention XNB) |
||
Line 7: | Line 7: | ||
'''LZX''' is both a compression algorithm (of the Lempel-Ziv family) and an archiving program (and file format). The archiving program and compression algorithm were both created by Jonathan Forbes and Tomi Poutanen in Canada, and the archiver was released for the Amiga computer in both shareware and registered versions. When the authors ended support for the program in 1997, they released a key for the registered version so that anybody could use it free. | '''LZX''' is both a compression algorithm (of the Lempel-Ziv family) and an archiving program (and file format). The archiving program and compression algorithm were both created by Jonathan Forbes and Tomi Poutanen in Canada, and the archiver was released for the Amiga computer in both shareware and registered versions. When the authors ended support for the program in 1997, they released a key for the registered version so that anybody could use it free. | ||
− | One of the authors, Jonathan Forbes, later worked for Microsoft, and used LZX compression in some Microsoft formats, including [[Cabinet]], [[CHM]], [[LIT]], [[WIM]], | + | One of the authors, Jonathan Forbes, later worked for Microsoft, and used LZX compression in some Microsoft formats, including [[Cabinet]], [[CHM]], [[LIT]], [[WIM]], [[Xbox Live Avatar]]s, and [[Microsoft XNA Compiled Format]]. |
+ | |||
+ | == Specification == | ||
+ | [http://msdn.microsoft.com/library/bb417343.aspx#lzxdatacompressionformat Microsoft's LZX description] is available, but has several errors—see libmspack's comments. There is also an [http://msdn.microsoft.com/en-us/library/cc483133.aspx LZX delta] variant of the format, with a much clearer and correct specification. | ||
+ | |||
+ | == Source == | ||
+ | |||
+ | [http://sourceforge.net/p/libmspack/code/HEAD/tree/libmspack/trunk/mspack/lzxd.c libmspack's implementation] is complete and somewhat commented. Note especially the description of errors in Microsoft's LZX specification. | ||
== Links == | == Links == |
Revision as of 23:40, 22 September 2013
LZX is both a compression algorithm (of the Lempel-Ziv family) and an archiving program (and file format). The archiving program and compression algorithm were both created by Jonathan Forbes and Tomi Poutanen in Canada, and the archiver was released for the Amiga computer in both shareware and registered versions. When the authors ended support for the program in 1997, they released a key for the registered version so that anybody could use it free.
One of the authors, Jonathan Forbes, later worked for Microsoft, and used LZX compression in some Microsoft formats, including Cabinet, CHM, LIT, WIM, Xbox Live Avatars, and Microsoft XNA Compiled Format.
Specification
Microsoft's LZX description is available, but has several errors—see libmspack's comments. There is also an LZX delta variant of the format, with a much clearer and correct specification.
Source
libmspack's implementation is complete and somewhat commented. Note especially the description of errors in Microsoft's LZX specification.