DOC/Methods-Extern.md
| ID | Codec, Author | 7-Zip Plugin Author |
|---|---|---|
| F7 0x xx | reserved | |
| F7 10 xx | LZHAM, Rich Geldreich | Rich Geldreich |
| F7 11 01 | Zstandard, Yann Collet | Tino Reichardt |
| F7 11 02 | Brotli, Google | Tino Reichardt |
| F7 11 04 | LZ4, Yann Collet | Tino Reichardt |
| F7 11 05 | LZ5, Przemyslaw Skibinski | Tino Reichardt |
| F7 11 06 | Lizard, Przemyslaw Skibinski | Tino Reichardt |
Description: Lossless is a data compression codec with LZMA-like ratios but 1.5x-8x faster decompression speed.
License: LZHAM library is provided as open source software using the MIT license.
7-Zip Container Header:
Byte _ver;
Byte _dict_size;
Byte _level;
Byte _flags;
Byte _reserved[1];
Algorithm author: Rich Geldreich
Codec plugin author: Rich Geldreich
Description: Zstandard is a real-time compression algorithm, providing high compression ratios. It offers a very wide range of compression / speed trade-off, while being backed by a very fast decoder.
License: Zstandard library is provided as open source software using the BSD license.
7-Zip Container Header: This header is mandatory and must be exact 3 or 5 bytes. The data within that header is for informational purposes only and not used by the decoder. If the header is not there, or has another size, the decoder will not decompress the content.
Byte _ver_major; // currently 1
Byte _ver_minor; // currently 2
Byte _level; // currently 1..22 or 33..MaxFastLevel
Byte _reserved[2]; // not given in 3 byte header
Algorithm author: Yann Collet
Codec plugin author: Tino Reichardt
Modes:
Versions: The 7-Zip codec will be kept in sync with the current releases of Zstandard.
Description: Brotli is a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling, with a compression ratio comparable to the best currently available general-purpose compression methods. It is similar in speed with deflate but offers more dense compression.
License: The Brotli library is provided as open source software using the MIT license.
7-Zip Container Header (3 bytes): This header is mandatory and must be exact 3 bytes. The data within that header is for informational purposes only and not used by the decoder. If the header is not there, or has another size, the decoder will not decompress the content.
Byte _ver_major; // currently 0
Byte _ver_minor; // currently 6
Byte _level; // currently 0..11 (Brotli quality)
Algorithm author: Google Staff
Codec plugin author: Tino Reichardt
Modes:
Versions: The 7-Zip codec will be kept in sync with the current releases of Brotli.
Description: LZ4 is lossless compression algorithm, providing compression speed at 400 MB/s per core (0.16 Bytes/cycle). It features an extremely fast decoder, with speed in multiple GB/s per core (0.71 Bytes/cycle). A high compression derivative, called LZ4_HC, is available, trading customizable CPU time for compression ratio.
License: LZ4 library is provided as open source software using the BSD license.
7-Zip Container Header: This header is mandatory and must be exact 3 or 5 bytes. The data within that header is for informational purposes only and not used by the decoder. If the header is not there, or has another size, the decoder will not decompress the content.
Byte _ver_major; // currently 1
Byte _ver_minor; // currently 7
Byte _level; // 1..12
Byte _reserved[2]; // not given in 3 byte header
Algorithm author: Yann Collet
Codec plugin author: Tino Reichardt
Modes:
Versions: The 7-Zip codec will be kept in sync with the current releases of LZ4.
Description: LZ5 is a modification of LZ4 which gives a better ratio at cost of slower compression and decompression.
License: LZ5 library is provided as open source software using the BSD license.
7-Zip Container Header: This header is mandatory and must be exact 3 or 5 bytes. The data within that header is for informational purposes only and not used by the decoder. If the header is not there, or has another size, the decoder will not decompress the content.
Byte _ver_major; // currently 1
Byte _ver_minor; // currently 5
Byte _level; // 1..15
Byte _reserved[2]; // not given in 3 byte header
Algorithm author: Przemyslaw Skibinski
Codec plugin author: Tino Reichardt
Modes:
Versions: The 7-Zip LZ5 codec will be frozen to v1.5 of this codec. No updates are planned.
Description: Lizard is an efficient compressor with very fast decompression. It achieves compression ratio that is comparable to zip/zlib and zstd/brotli (at low and medium compression levels) at decompression speed of 1000 MB/s and faster.
License: Lizard library is provided as open source software using the BSD license.
7-Zip Container Header: This header is mandatory and must be exact 3 bytes. The data within that header is for informational purposes only and not used by the decoder. If the header is not there, or has another size, the decoder will not decompress the content.
Byte _ver_major; // currently 1
Byte _ver_minor; // currently 0
Byte _level; // 10..49
Algorithm author: Przemyslaw Skibinski
Codec plugin author: Tino Reichardt
Modes:
Versions: The 7-Zip Lizard codec will be kept in sync with the current releases of Lizard.