5106:
5096:
3894:
3884:
3874:
700:
43:
2074:(up to 4, from the LZMA header or LZMA2 properties packet) least significant bits of the dictionary position (the number of bytes coded since the last dictionary reset modulo the dictionary size). Note that the dictionary size is normally the multiple of a large power of 2, so these values are equivalently described as the least significant bits of the number of uncompressed bytes seen since the last dictionary reset.
84:
131:
265:, using a complex model to make a probability prediction of each bit. The dictionary compressor finds matches using sophisticated dictionary data structures, and produces a stream of literal symbols and phrase references, which is encoded one bit at a time by the range encoder: many encodings are possible, and a
273:
the bitfields in each representation of a literal or phrase: this is nearly as simple as a generic byte-based model, but gives much better compression because it avoids mixing unrelated bits together in the same context. Furthermore, compared to classic dictionary compression (such as the one used in
3207:
LZMA2 is a modified version of LZMA that offers a better compression ratio for uncompressible data (random data expands about 0.005%, compared to 1.35% with original LZMA), and optionally can compress multiple parts of large files in parallel, greatly increasing compression speed but with a possible
2106:
is an array of 8 values in the 0–2 range, one for each bit position in a byte, which are 1 or 2 if the previous packet was a *MATCH and it is either the most significant bit position or all the more significant bits in the literal to encode/decode are equal to the bits in the corresponding positions
1642:
In the 7-zip LZMA file format, configuration is performed by a header containing the "properties" byte followed by the 32-bit little-endian dictionary size in bytes. In LZMA2, the properties byte can optionally be changed at the start of LZMA2 LZMA packets, while the dictionary size is specified in
289:
In LZMA compression, the compressed stream is a stream of bits, encoded using an adaptive binary range coder. The stream is divided into packets, each packet describing either a single byte, or an LZ77 sequence with its length and distance implicitly or explicitly encoded. Each part of each packet
272:
Prior to LZMA, most encoder models were purely byte-based (i.e. they coded each bit using only a cascade of contexts to represent the dependencies on previous bits from the same byte). The main innovation of LZMA is that instead of a generic byte-based model, LZMA's model uses contexts specific to
440:
The distance encoding starts with a 6-bit "distance slot", which determines how many further bits are needed. Distances are decoded as a binary concatenation of, from most to least significant, two bits depending on the distance slot, some bits encoded with fixed 0.5 probability, and some context
1466:
Non-reverse bit-tree decoding works by keeping a pointer to the tree of variables, which starts at the root. As long as the pointer does not point to a leaf, a bit is decoded using the variable indicated by the pointer, and the pointer is moved to either the left or right children depending on
244:
is a simple container format that can include both uncompressed data and LZMA data, possibly with multiple different LZMA encoding parameters. LZMA2 supports arbitrarily scalable multithreaded compression and decompression and efficient compression of data which is partially incompressible.
763:
Embedded decoder by Lasse Collin included in the Linux kernel source from which the LZMA and LZMA2 algorithm details can be relatively easily deduced: thus, while citing source code as reference is not ideal, any programmer should be able to check the claims below with a few hours of work.
2557:
The LZMA2 container supports multiple runs of compressed LZMA data and uncompressed data. Each LZMA compressed run can have a different LZMA configuration and dictionary. This improves the compression of partially or completely incompressible files and allows multithreaded compression and
391:
LONGREP packets remove the distance used from the list of the most recent distances and reinsert it at the front, to avoid useless repeated entry, while MATCH just adds the distance to the front even if already present in the list and SHORTREP and LONGREP don't alter the list.
290:
is modeled with independent contexts, so the probability predictions for each bit are correlated with the values of that bit (and related bits from the same field) in previous packets of the same type. Both the lzip and the LZMA SDK documentation describes this stream format.
1474:
Reverse bit-tree decoding instead decodes from least significant bit to most significant bits, and thus only supports ranges that are powers of two, and always decodes the same number of bits. It is equivalent to performing non-reverse bittree decoding with a power of two
2558:
multithreaded decompression by breaking the file into runs that can be compressed or decompressed independently in parallel. Criticism of LZMA2's changes over LZMA include header fields not being covered by CRCs, and parallel decompression not being possible in practice.
1470:
Non-reverse bit-tree decoding thus happens from most significant to least significant bit, stopping when only one value in the valid range is possible (this conceptually allows to have range sizes that are not powers of two, even though LZMA does not make use of this).
1662:
value is conceptually based on which of the patterns in the following table match the latest 2–4 packet types seen, and is implemented as a state machine state updated according to the transition table listed in the table every time a packet is output.
1446:
The range decoder also provides the bit-tree, reverse bit-tree and fixed probability integer decoding facilities, which are used to decode integers, and generalize the single-bit decoding described above. To decode unsigned integers less than
1651:
The LZMA packet format has already been described, and this section specifies how LZMA statistically models the LZ-encoded streams, or in other words which probability variables are passed to the range decoder to decode each bit.
2099:
value is the byte that would have been decoded if a SHORTREP packet had been used (in other words, the byte found at the dictionary at the last used distance); it is only used just after a *MATCH packet.
2876:
LZHAM (LZ, Huffman, Arithmetic, Markov), is an LZMA-like implementation that trades compression throughput for very high ratios and higher decompression throughput. It was placed by its author in the
986:
2780:
used during compression. Small code size and relatively low memory overhead, particularly with smaller dictionary lengths, and free source code make the LZMA decompression algorithm well-suited to
1084:
1203:
779:(typically implemented using a 16-bit data type) representing the predicted probability of the bit being 0, which is read and updated by the range decoder (and should be initialized to
1655:
Those probability variables are implemented as multi-dimensional arrays; before introducing them, a few values that are used as indices in these multidimensional arrays are defined.
1307:
1514:
added to the conceptual value), and the variable at index 0 in the array is unused, while the one at index 1 is the root, and the left and right children indices are computed as 2
434:
As in LZ77, the length is not limited by the distance, because copying from the dictionary is defined as if the copy was performed byte by byte, keeping the distance constant.
2845:: another LZMA implementation mostly for Unix-like systems to be directly competing with xz. It mainly features a simpler file format and therefore easier error recovery.
2776:
Decompression-only code for LZMA generally compiles to around 5 KB, and the amount of RAM required during decompression is principally determined by the size of the
2118:
The literal/Literal set of variables can be seen as a "pseudo-bit-tree" similar to a bit-tree but with 3 variables instead of 1 in every node, chosen depending on the
56:
2944:- LZMA Unix Port was finally replaced by xz which features better and faster compression; from here we know even LZMA Unix Port was a lot better than gzip and bzip2.
1422:
and floor operation is done before the multiplication, not after (apparently to avoid requiring fast hardware support for 32-bit multiplication with a 64-bit result)
1414:
1250:
907:
806:
2129:
is incorrect; they are instead coded simply as their byte value, but using the pseudo-bit-tree just described and the additional context listed in the table below.
2708:
LZMA2 compression, which is an improved version of LZMA, is now the default compression method for the .7z format, starting with version 9.30 on
October 26, 2012.
2660:
The LZMA compressed data, starting with the 5 bytes (of which the first is ignored) used to initialize the range coder (which are included in the compressed size)
105:
2594:
0x80–0xff denotes an LZMA chunk, where the lowest 5 bits are used as bit 16–20 of the uncompressed size minus one, and bit 5–6 indicates what should be reset
2955:
2904:
775:
Context-based range decoding is invoked by the LZMA algorithm passing it a reference to the "context", which consists of the unsigned 11-bit variable
3389:
LZHAM is a lossless data compression codec written in C/C++ with a compression ratio similar to LZMA but with 1.5–8 times faster decompression speed.
1541:
Fixed probability integer decoding simply performs fixed probability bit decoding repeatedly, reading bits from the most to the least significant.
281:
formats), the dictionary sizes can be and usually are much larger, taking advantage of the large amount of memory available on modern systems.
62:
3930:
839:
to the 32-bit value starting at the second byte in the stream interpreted as big-endian; the first byte in the stream is completely ignored.
2677:, while the .7z file format, which can contain either LZMA or LZMA2 data, is documented in the 7zformat.txt file contained in the LZMA SDK.
4598:
4409:
813:
Fixed probability range decoding instead assumes a 0.5 probability, but operates slightly differently from context-based range decoding.
756:
No complete natural language specification of the compressed format seems to exist, other than the one attempted in the following text.
1583:
is the number of high bits of the previous byte to use as a context for literal encoding (the default value used by the LZMA SDK is 3)
92:
3460:
5140:
4804:
4627:
4421:
4112:
4809:
4386:
1459:
11-bit probability variables is provided, which are conceptually arranged as the internal nodes of a complete binary tree with
2895:
1372:
unconditionally. The resulting sign bit is used to both decide the bit to return and to generate a mask that is combined with
3104:
923:
2803:-like command line tool, supporting both LZMA and LZMA2 in its xz file format. It made its way into several software of the
4539:
717:
148:
261:
with huge dictionary sizes and special support for repeatedly used match distances), whose output is then encoded with a
2111:, while otherwise it is 0; the choice between the 1 or 2 values depends on the value of the bit at the same position in
4916:
4654:
4593:
4404:
4354:
4177:
1026:
772:
LZMA data is at the lowest level decoded one bit at a time by the range decoder, at the direction of the LZMA decoder.
388:
LONGREP refers to LONGREP packets, *REP refers to both LONGREP and SHORTREP, and *MATCH refers to both MATCH and *REP.
141:
4037:
4022:
3923:
2690:
1143:
743:
173:
70:
3428:
2085:(up to 4, from the LZMA header or LZMA2 properties packet) most significant bits of the previous uncompressed byte.
725:
5029:
5039:
4877:
4728:
4647:
4441:
5012:
4632:
4426:
4214:
3791:
2864:
2724:
1538:
is implicitly represented by its logarithm, and has its own independent implementation for efficiency reasons.
1467:
whether the bit is 0 or 1; when the pointer points to a leaf, the number associated with the leaf is returned.
710:
2963:
2908:
5109:
4145:
3877:
3453:
2736:
2732:
1266:
4774:
5099:
5002:
4544:
4102:
3916:
3605:
3284:
2125:
The claim, found in some sources, that literals after a *MATCH are coded as the XOR of the byte value with
5145:
4092:
4087:
3559:
2773:(for images) and BCJ for executable code. It also provides some other compression algorithms used in 7z.
2728:
437:
Distances are logically 32-bit and distance 0 points to the most recently added byte in the dictionary.
5034:
4961:
4799:
4779:
4723:
4381:
4172:
3975:
3854:
2744:
238:), while still maintaining decompression speed similar to other commonly used compression algorithms.
5135:
5044:
4985:
4911:
4759:
4349:
4344:
4199:
4042:
3828:
3195:
2836:
2740:
199:
31:
3078:
2122:
value at the bit position of the next bit to decode after the bit-tree context denoted by the node.
5049:
4622:
4416:
4117:
3897:
3446:
2896:
2720:
2698:
441:
encoded bits, according to the following table (distance slots 0−3 directly encode distances 0−3).
203:
3324:
3171:
4990:
4361:
4248:
4204:
4017:
4000:
3990:
3887:
3408:
721:
97:
4615:
4366:
4150:
3995:
1425:
Fixed probability decoding is not strictly equivalent to context-based range decoding with any
4887:
3433:
5019:
3625:
2694:
1666:
The initial state is 0, and thus packets before the beginning are assumed to be LIT packets.
1392:
1228:
885:
784:
4703:
4165:
4127:
3948:
3873:
2615:
LZMA state resets cause a reset of all LZMA state except the dictionary, and specifically:
17:
2792:
In addition to the 7-Zip reference implementation, the following support the LZMA format.
8:
4934:
4825:
4784:
4769:
4738:
4733:
4642:
4549:
4482:
4451:
4436:
4219:
3818:
3640:
2824:
2712:
266:
2578:
LZMA2 data consists of packets starting with a control byte, with the following values:
2092:
value denotes whether a packet that includes a length is a LONGREP rather than a MATCH.
1364:, for performance reasons, does not include a conditional branch, but instead subtracts
5007:
4977:
4956:
4862:
4794:
4688:
4376:
4192:
4182:
4077:
4057:
4052:
3513:
3493:
2859:
starting with version 12.1. It also can use various other compression methods such as
1429:
value, due to the fact that context-based range decoding discards the lower 11 bits of
4588:
4951:
4939:
4921:
4789:
4673:
4610:
4456:
4371:
4327:
4288:
3970:
3823:
3803:
3796:
3786:
3781:
3771:
3766:
3756:
3751:
3728:
3723:
3688:
3683:
3678:
3663:
3653:
3630:
3610:
3503:
2852:
2848:
2651:
A 16-bit big-endian value encoding the low 16 bits of the uncompressed size minus one
274:
4926:
4882:
4855:
4850:
4708:
4693:
4603:
4512:
4507:
4336:
4069:
4047:
3939:
3648:
3620:
254:
215:
4845:
4659:
4583:
4564:
4534:
4502:
4468:
4027:
3965:
3813:
3498:
2781:
3243:"PyLZMA – Platform independent python bindings for the LZMA compression library"
3006:
4637:
4431:
4160:
4155:
4012:
3985:
3957:
3743:
3718:
3469:
3242:
2777:
2770:
262:
223:
2766:
2697:, with an additional special exception for linked binaries, but was placed by
1437:
as just described, while fixed probability decoding only discards the last bit
5129:
4944:
4892:
4559:
4554:
4529:
4461:
4082:
3980:
3808:
3349:
2877:
2759:
2702:
3384:
3030:
338:
A one-byte LZ77 sequence. Distance is equal to the last used LZ77 distance.
5065:
4032:
4007:
3908:
3658:
3574:
3508:
3124:
2828:
2816:
382:
An LZ77 sequence. Distance is equal to the fourth last used LZ77 distance.
360:
An LZ77 sequence. Distance is equal to the second last used LZ77 distance.
2933:
371:
An LZ77 sequence. Distance is equal to the third last used LZ77 distance.
5024:
4902:
4698:
4574:
4524:
3635:
3175:
2900:
2755:
2689:
is available as LZMA SDK. It was originally dual-licensed under both the
2611:
3: state reset, properties reset using properties byte, dictionary reset
428:
The length encoded using 8 bits, gives the lengths range from 18 to 273.
269:
algorithm is used to select an optimal one under certain approximations.
3263:
420:
The length encoded using 3 bits, gives the lengths range from 10 to 17.
5081:
4872:
4867:
4754:
4713:
4519:
3844:
2751:
412:
The length encoded using 3 bits, gives the lengths range from 2 to 9.
30:"LZMA" redirects here. For the airport with the ICAO code "LZMA", see
3584:
3483:
2804:
230:
in 1977 and features a high compression ratio (generally higher than
227:
195:
3413:
3309:
2561:
The LZMA2 header consists of a byte indicating the dictionary size:
1498:
function in the Linux kernel, integers are actually returned in the
728:. Statements consisting only of original research should be removed.
349:
An LZ77 sequence. Distance is equal to the last used LZ77 distance.
4995:
4840:
4497:
3579:
3539:
3220:
2796:
2670:
1601:
is the number of low bits of the dictionary position to include in
1589:
is the number of low bits of the dictionary position to include in
816:
The range decoder state consists of two unsigned 32-bit variables,
760:
235:
3438:
3363:
4764:
4238:
4187:
3703:
3698:
3057:
2643:
The data to be copied verbatim into the dictionary and the output
1360:
The Linux kernel implementation of fixed-probability decoding in
327:
A typical LZ77 sequence describing sequence length and distance.
3418:
2765:
In addition to LZMA, the SDK and 7-Zip also implements multiple
2654:
A 16-bit big-endian value encoding the compressed size minus one
1215:
Fixed-probability range decoding of a bit proceeds in this way:
83:
4278:
3549:
3529:
2985:
2856:
2832:
3288:
2827:
systems contains xz code, and many software distributors like
2585:
1 denotes a dictionary reset followed by an uncompressed chunk
5113:
4718:
4311:
4258:
3668:
3534:
2860:
2808:
2716:
2686:
231:
211:
202:. It has been under development since either 1996 or 1998 by
3151:
2657:
A properties/lclppb byte if bit 6 in the control byte is set
2571:
Odd values less than 40 indicate a 3×2 bytes dictionary size
316:
A single byte encoded using an adaptive binary range coder.
4268:
4122:
4107:
4097:
3849:
3776:
3761:
3733:
3693:
3569:
3564:
3544:
3488:
2842:
2820:
2812:
2800:
2568:
Even values less than 40 indicate a 2 bytes dictionary size
2413:
distance: 14+ distance slots, after fixed probability bits
278:
258:
234:) and a variable compression-dictionary size (up to 4
219:
2735:
bindings for the C++ library, as well as ports of LZMA to
2640:
A 16-bit big-endian value encoding the data size minus one
2588:
2 denotes an uncompressed chunk without a dictionary reset
1555:"properties" byte and a dictionary size. The value of the
4243:
4209:
3859:
3713:
3673:
3615:
3423:
3403:
2132:
The probability variable groups used in LZMA are those:
827:
Initialization of the range decoder consists of setting
3600:
2705:
on
December 2, 2008, with the release of version 4.62.
2673:
format, which can contain LZMA2 data, is documented at
981:{\displaystyle \lfloor range/2^{11}\rfloor \times prob}
207:
2927:
2925:
2903:
that the algorithm is his own creation. (2004-02-19).
2608:
2: state reset, properties reset using properties byte
2769:
intended to improve compression, ranging from simple
1395:
1269:
1231:
1146:
1029:
926:
888:
787:
2922:
2715:LZMA compression library was originally written in
824:(representing the encoded point within the range).
2762:as the basis for its dictionary search algorithm.
2750:The 7-Zip implementation uses several variants of
1408:
1301:
1244:
1197:
1078:
980:
901:
800:
689:
3052:
3050:
3048:
3046:
2680:
1079:{\displaystyle \lfloor 2^{11}-prob\rfloor /2^{5}}
5127:
868:Context-based range decoding of a bit using the
3024:
3022:
1198:{\displaystyle prob-\lfloor prob/2^{5}\rfloor }
3043:
3031:"Xz format inadequate for long-term archiving"
1623:must not be greater than 4. In LZMA2 streams,
759:The description below is based on the compact
3924:
3454:
3434:Data compression, Compressors & Archivers
3073:
3071:
3028:
2807:world with its high performance (compared to
2799:: a streaming implementation that contains a
1607:(the default value used by the LZMA SDK is 2)
1595:(the default value used by the LZMA SDK is 0)
284:
3938:
3019:
2934:"A Quick Benchmark: Gzip vs. Bzip2 vs. LZMA"
2931:
1296:
1270:
1192:
1162:
1058:
1030:
960:
927:
3316:
3149:
3145:
3143:
3141:
2983:
1534:range to a caller-provided variable, where
1441:
872:probability variable proceeds in this way:
71:Learn how and when to remove these messages
3931:
3917:
3883:
3461:
3447:
3341:
3068:
2977:
2839:now use xz for compressing their releases.
3385:"LZHAM – Lossless Data Compression Codec"
3325:"Accepted dpkg 1.17.0 (source amd64 all)"
3322:
2953:
744:Learn how and when to remove this message
174:Learn how and when to remove this message
3138:
3102:
2855:compressions format that was created by
2787:
108:of all important aspects of the article.
3261:
2685:The LZMA implementation extracted from
2629:The last distances for repeated matches
2565:40 indicates a 4 GB − 1 dictionary size
1646:
1302:{\displaystyle \lfloor range/2\rfloor }
767:
14:
5128:
2396:>> 1) − 1)-bit reverse bit-tree
1526:function instead adds integers in the
857:Read a byte from the compressed stream
104:Please consider expanding the lead to
3912:
3442:
3282:
3240:
3152:"LZMA SDK (Software Development Kit)"
1643:the LZMA2 header as later described.
1549:The LZMA decoder is configured by an
1544:
3356:
2664:
2540:match length: after bit sequence 11
2517:match length: after bit sequence 10
860:Set the least significant 8 bits of
842:Normalization proceeds in this way:
693:
124:
77:
36:
3838:Document packaging and distribution
3744:Software packaging and distribution
3468:
3419:LZMA SDK (Software Development Kit)
3264:"Programming Help: Pascal LZMA SDK"
3058:"LZMA Specification.7z in LZMA SDK"
3004:
2490:match length: after bit sequence 0
2460:match length: after bit sequence 1
2066:values consist of respectively the
820:(representing the range size), and
27:Lossless data compression algorithm
24:
395:The length is encoded as follows:
25:
5157:
3397:
2598:Bits 5–6 for LZMA chunks can be:
2574:Values higher than 40 are invalid
810:, representing 0.5 probability).
188:Lempel–Ziv–Markov chain algorithm
151:and remove advice or instruction.
52:This article has multiple issues.
5105:
5104:
5095:
5094:
3893:
3892:
3882:
3872:
3347:
3285:"compress/lzma package for Go 1"
2954:Klausmann, Tobias (2008-05-08).
2636:Uncompressed chunks consist of:
1615:must not be greater than 8, and
1099:is greater than or equal to the
698:
214:archiver. This algorithm uses a
129:
82:
41:
5141:Lossless compression algorithms
3377:
3302:
3276:
3255:
3234:
3213:
3208:reduction in compression ratio.
3188:
3164:
3117:
2956:"Gzip, Bzip2 and Lzma compared"
2899:has asserted multiple times on
2552:
1678:next state when next packet is
690:Decompression algorithm details
218:scheme somewhat similar to the
96:may be too short to adequately
60:or discuss these issues on the
3096:
2998:
2947:
2889:
2811:) and small size (compared to
2681:7-Zip reference implementation
2389:distance: 4–13 distance slots
293:There are 7 types of packets:
106:provide an accessible overview
13:
1:
3429:Windows Binaries for XZ Utils
3241:Bauch, Joachim (2010-04-07).
3103:Collin, Lasse; Pavlov, Igor.
2883:
2731:. There are also third-party
2582:0 denotes the end of the file
3283:Vieru, Andrei (2012-06-28).
3262:Birtles, Alan (2006-06-13).
3007:"Data Compression Explained"
1639:must not be greater than 4.
7:
2932:Lasse Collin (2005-05-31).
2386:, reverse bit-tree context
2345:256 values pseudo-bit-tree
2134:
1668:
724:the claims made and adding
456:Fixed 0.5 probability bits
443:
401:Length code (bit sequence)
397:
299:Packed code (bit sequence)
295:
248:
10:
5162:
4986:Compressed data structures
4308:RLE + BWT + MTF + Huffman
3976:Asymmetric numeral systems
3855:Open Packaging Conventions
285:Compressed format overview
206:and was first used in the
29:
5090:
5074:
5058:
4976:
4901:
4833:
4824:
4747:
4681:
4672:
4573:
4490:
4481:
4397:
4345:Discrete cosine transform
4335:
4326:
4275:LZ77 + Huffman + context
4228:
4138:
4068:
3956:
3947:
3868:
3837:
3742:
3594:Archiving and compression
3593:
3522:
3476:
3409:Lzip format specification
2591:3–0x7f are invalid values
2545:
2522:
2495:
2418:
2410:reverse bit-tree context
2398:
2371:
2347:
1880:
1877:
1874:
1871:
1868:
1861:
1858:
1789:
1786:
1783:
1780:
1777:
1774:
1766:
1677:
1674:
1479:, and reversing the last
1333:is greater or equal than
200:lossless data compression
32:Martin Airport (Slovakia)
5050:Smallest grammar problem
2871:
2647:LZMA chunks consist of:
2308:after bit sequence 1111
1442:Range coding of integers
257:algorithm (a variant of
4991:Compressed suffix array
4540:Nyquist–Shannon theorem
3414:XZ format specification
3172:"Browse /LZMA SDK/4.23"
3105:"lib/xz/xz_dec_lzma2.c"
2960:Blog of an Alpha animal
2719:but has been ported to
2416:4-bit reverse bit-tree
2363:, 5), bit-tree context
2283:after bit sequence 111
2258:after bit sequence 110
1254:, perform normalization
911:, perform normalization
680:(((slot − 1) / 2) − 5)
222:algorithm published by
3850:OEBPS Container Format
3364:"What is a Zipx File?"
3221:"HISTORY of the 7-Zip"
2880:on 15 September 2020.
2851:: an extension to the
2632:All LZMA probabilities
2523:middle bits of length
2226:after bit sequence 11
1611:In non-LZMA2 streams,
1433:before multiplying by
1410:
1409:{\displaystyle 2^{11}}
1303:
1246:
1245:{\displaystyle 2^{24}}
1199:
1080:
982:
903:
902:{\displaystyle 2^{24}}
864:to the byte value read
802:
801:{\displaystyle 2^{10}}
255:dictionary compression
216:dictionary compression
5020:Kolmogorov complexity
4888:Video characteristics
4265:LZ77 + Huffman + ANS
3424:LZMA Utils = XZ Utils
3387:. Richard Geldreich.
3125:"The .xz File Format"
2788:Other implementations
2767:preprocessing filters
2695:Common Public License
2419:low bits of distance
2399:low bits of distance
2342:after bit sequence 0
2201:after bit sequence 1
1411:
1304:
1247:
1200:
1081:
983:
904:
803:
459:Context encoded bits
5110:Compression software
4704:Compression artifact
4660:Psychoacoustic model
3150:Igor Pavlov (2013).
3079:"Lzip Stream Format"
2984:Igor Pavlov (2013).
2546:high bits of length
2543:256 values bit-tree
2435:match length: start
2081:value is set to the
1647:LZMA coding contexts
1491:bits of the result.
1393:
1267:
1229:
1144:
1027:
924:
886:
785:
768:Range coding of bits
450:6-bit distance slot
149:rewrite this article
5100:Compression formats
4739:Texture compression
4734:Standard test image
4550:Silence compression
3029:Antonio Diaz Diaz.
2537:, bit-tree context
2514:, bit-tree context
2496:low bits of length
2487:, bit-tree context
2369:64 values bit-tree
2348:literal byte value
2339:, bit-tree context
446:
305:Packet description
267:dynamic programming
5146:Israeli inventions
5008:Information theory
4863:Display resolution
4689:Chroma subsampling
4078:Byte pair encoding
4023:Shannon–Fano–Elias
3845:OEB Package Format
3404:Official home page
2520:8 values bit-tree
2493:8 values bit-tree
1545:LZMA configuration
1524:rc_bittree_reverse
1406:
1299:
1242:
1195:
1076:
978:
899:
798:
709:possibly contains
445:Distance encoding
444:
5123:
5122:
4972:
4971:
4922:Deblocking filter
4820:
4819:
4668:
4667:
4477:
4476:
4322:
4321:
3906:
3905:
3350:"Lzip Benchmarks"
3329:Debian Package QA
3196:"Inno Setup Help"
2665:xz and 7z formats
2550:
2549:
2333:literal_pos_state
2329:prev_byte_lc_msbs
2144:Parameterized by
2079:prev_byte_lc_msbs
2064:literal_pos_state
2056:
2055:
1675:previous packets
1592:literal_pos_state
754:
753:
746:
711:original research
687:
686:
666:((slot / 2) − 5)
432:
431:
386:
385:
321:1+0 + len + dist
184:
183:
176:
166:
165:
142:a manual or guide
123:
122:
75:
16:(Redirected from
5153:
5136:Data compression
5108:
5107:
5098:
5097:
4927:Lapped transform
4831:
4830:
4709:Image resolution
4694:Coding tree unit
4679:
4678:
4488:
4487:
4333:
4332:
3954:
3953:
3940:Data compression
3933:
3926:
3919:
3910:
3909:
3896:
3895:
3886:
3885:
3876:
3523:Compression only
3463:
3456:
3449:
3440:
3439:
3392:
3391:
3381:
3375:
3374:
3372:
3371:
3360:
3354:
3353:
3352:. LZIP (nongnu).
3345:
3339:
3338:
3336:
3335:
3320:
3314:
3313:
3306:
3300:
3299:
3297:
3296:
3287:. Archived from
3280:
3274:
3273:
3271:
3270:
3259:
3253:
3252:
3250:
3249:
3238:
3232:
3231:
3229:
3228:
3217:
3211:
3210:
3204:
3203:
3198:. jrsoftware.org
3192:
3186:
3185:
3183:
3182:
3168:
3162:
3161:
3159:
3158:
3147:
3136:
3135:
3133:
3132:
3121:
3115:
3114:
3112:
3111:
3100:
3094:
3093:
3091:
3089:
3075:
3066:
3065:
3054:
3041:
3040:
3038:
3037:
3026:
3017:
3016:
3014:
3013:
3002:
2996:
2995:
2993:
2992:
2981:
2975:
2974:
2972:
2971:
2962:. Archived from
2951:
2945:
2943:
2941:
2940:
2929:
2920:
2919:
2917:
2916:
2907:. Archived from
2893:
2602:0: nothing reset
2449:len_dec.choice2
2366:distance: start
2337:literal_bit_mode
2135:
2120:literal_bit_mode
2104:literal_bit_mode
1669:
1634:
1606:
1594:
1575:
1560:
1554:
1533:
1525:
1509:
1497:
1490:
1458:
1417:
1415:
1413:
1412:
1407:
1405:
1404:
1387:The division by
1363:
1310:
1308:
1306:
1305:
1300:
1292:
1253:
1251:
1249:
1248:
1243:
1241:
1240:
1206:
1204:
1202:
1201:
1196:
1191:
1190:
1181:
1087:
1085:
1083:
1082:
1077:
1075:
1074:
1065:
1042:
1041:
989:
987:
985:
984:
979:
959:
958:
949:
910:
908:
906:
905:
900:
898:
897:
834:
809:
807:
805:
804:
799:
797:
796:
749:
742:
738:
735:
729:
726:inline citations
702:
701:
694:
447:
398:
376:1+1+1+1+1 + len
365:1+1+1+1+0 + len
296:
198:used to perform
179:
172:
161:
158:
152:
140:is written like
133:
132:
125:
118:
115:
109:
86:
78:
67:
45:
44:
37:
21:
5161:
5160:
5156:
5155:
5154:
5152:
5151:
5150:
5126:
5125:
5124:
5119:
5086:
5070:
5054:
5035:Rate–distortion
4968:
4897:
4816:
4743:
4664:
4569:
4565:Sub-band coding
4473:
4398:Predictive type
4393:
4318:
4285:LZSS + Huffman
4235:LZ77 + Huffman
4224:
4134:
4070:Dictionary type
4064:
3966:Adaptive coding
3943:
3937:
3907:
3902:
3864:
3833:
3814:Package (macOS)
3738:
3589:
3518:
3472:
3470:Archive formats
3467:
3400:
3395:
3383:
3382:
3378:
3369:
3367:
3362:
3361:
3357:
3346:
3342:
3333:
3331:
3323:Guillem Jover.
3321:
3317:
3308:
3307:
3303:
3294:
3292:
3281:
3277:
3268:
3266:
3260:
3256:
3247:
3245:
3239:
3235:
3226:
3224:
3219:
3218:
3214:
3201:
3199:
3194:
3193:
3189:
3180:
3178:
3170:
3169:
3165:
3156:
3154:
3148:
3139:
3130:
3128:
3123:
3122:
3118:
3109:
3107:
3101:
3097:
3087:
3085:
3077:
3076:
3069:
3056:
3055:
3044:
3035:
3033:
3027:
3020:
3011:
3009:
3005:Mahoney, Matt.
3003:
2999:
2990:
2988:
2982:
2978:
2969:
2967:
2952:
2948:
2938:
2936:
2930:
2923:
2914:
2912:
2894:
2890:
2886:
2874:
2790:
2683:
2667:
2619:The range coder
2555:
2424:len_dec.choice
1649:
1624:
1602:
1590:
1562:
1556:
1550:
1547:
1527:
1523:
1499:
1495:
1484:
1480:
1452:
1444:
1418:when computing
1400:
1396:
1394:
1391:
1390:
1388:
1361:
1288:
1268:
1265:
1264:
1262:
1236:
1232:
1230:
1227:
1226:
1224:
1186:
1182:
1177:
1145:
1142:
1141:
1139:
1070:
1066:
1061:
1037:
1033:
1028:
1025:
1024:
1022:
954:
950:
945:
925:
922:
921:
919:
893:
889:
887:
884:
883:
881:
832:
792:
788:
786:
783:
782:
780:
770:
750:
739:
733:
730:
715:
703:
699:
692:
453:Highest 2 bits
287:
251:
180:
169:
168:
167:
162:
156:
153:
146:
134:
130:
119:
113:
110:
103:
91:This article's
87:
46:
42:
35:
28:
23:
22:
15:
12:
11:
5:
5159:
5149:
5148:
5143:
5138:
5121:
5120:
5118:
5117:
5102:
5091:
5088:
5087:
5085:
5084:
5078:
5076:
5072:
5071:
5069:
5068:
5062:
5060:
5056:
5055:
5053:
5052:
5047:
5042:
5037:
5032:
5027:
5022:
5017:
5016:
5015:
5005:
5000:
4999:
4998:
4993:
4982:
4980:
4974:
4973:
4970:
4969:
4967:
4966:
4965:
4964:
4959:
4949:
4948:
4947:
4942:
4937:
4929:
4924:
4919:
4914:
4908:
4906:
4899:
4898:
4896:
4895:
4890:
4885:
4880:
4875:
4870:
4865:
4860:
4859:
4858:
4853:
4848:
4837:
4835:
4828:
4822:
4821:
4818:
4817:
4815:
4814:
4813:
4812:
4807:
4802:
4797:
4787:
4782:
4777:
4772:
4767:
4762:
4757:
4751:
4749:
4745:
4744:
4742:
4741:
4736:
4731:
4726:
4721:
4716:
4711:
4706:
4701:
4696:
4691:
4685:
4683:
4676:
4670:
4669:
4666:
4665:
4663:
4662:
4657:
4652:
4651:
4650:
4645:
4640:
4635:
4630:
4620:
4619:
4618:
4608:
4607:
4606:
4601:
4591:
4586:
4580:
4578:
4571:
4570:
4568:
4567:
4562:
4557:
4552:
4547:
4542:
4537:
4532:
4527:
4522:
4517:
4516:
4515:
4510:
4505:
4494:
4492:
4485:
4479:
4478:
4475:
4474:
4472:
4471:
4469:Psychoacoustic
4466:
4465:
4464:
4459:
4454:
4446:
4445:
4444:
4439:
4434:
4429:
4424:
4414:
4413:
4412:
4401:
4399:
4395:
4394:
4392:
4391:
4390:
4389:
4384:
4379:
4369:
4364:
4359:
4358:
4357:
4352:
4341:
4339:
4337:Transform type
4330:
4324:
4323:
4320:
4319:
4317:
4316:
4315:
4314:
4306:
4305:
4304:
4301:
4293:
4292:
4291:
4283:
4282:
4281:
4273:
4272:
4271:
4263:
4262:
4261:
4253:
4252:
4251:
4246:
4241:
4232:
4230:
4226:
4225:
4223:
4222:
4217:
4212:
4207:
4202:
4197:
4196:
4195:
4190:
4180:
4175:
4170:
4169:
4168:
4158:
4153:
4148:
4142:
4140:
4136:
4135:
4133:
4132:
4131:
4130:
4125:
4120:
4115:
4110:
4105:
4100:
4095:
4090:
4080:
4074:
4072:
4066:
4065:
4063:
4062:
4061:
4060:
4055:
4050:
4045:
4035:
4030:
4025:
4020:
4015:
4010:
4005:
4004:
4003:
3998:
3993:
3983:
3978:
3973:
3968:
3962:
3960:
3951:
3945:
3944:
3936:
3935:
3928:
3921:
3913:
3904:
3903:
3901:
3900:
3890:
3880:
3869:
3866:
3865:
3863:
3862:
3857:
3852:
3847:
3841:
3839:
3835:
3834:
3832:
3831:
3826:
3821:
3816:
3811:
3806:
3801:
3800:
3799:
3794:
3789:
3779:
3774:
3769:
3764:
3759:
3754:
3748:
3746:
3740:
3739:
3737:
3736:
3731:
3726:
3721:
3716:
3711:
3708:
3707:
3706:
3696:
3691:
3686:
3681:
3676:
3671:
3666:
3661:
3656:
3651:
3646:
3643:
3638:
3633:
3628:
3623:
3618:
3613:
3608:
3603:
3597:
3595:
3591:
3590:
3588:
3587:
3582:
3577:
3572:
3567:
3562:
3557:
3552:
3547:
3542:
3537:
3532:
3526:
3524:
3520:
3519:
3517:
3516:
3511:
3506:
3501:
3496:
3491:
3486:
3480:
3478:
3477:Archiving only
3474:
3473:
3466:
3465:
3458:
3451:
3443:
3437:
3436:
3431:
3426:
3421:
3416:
3411:
3406:
3399:
3398:External links
3396:
3394:
3393:
3376:
3355:
3340:
3315:
3301:
3275:
3254:
3233:
3212:
3187:
3163:
3137:
3116:
3095:
3067:
3042:
3018:
2997:
2976:
2946:
2921:
2887:
2885:
2882:
2873:
2870:
2869:
2868:
2846:
2840:
2789:
2786:
2784:applications.
2778:sliding window
2771:delta encoding
2760:Patricia trees
2711:The reference
2682:
2679:
2666:
2663:
2662:
2661:
2658:
2655:
2652:
2645:
2644:
2641:
2634:
2633:
2630:
2627:
2620:
2613:
2612:
2609:
2606:
2605:1: state reset
2603:
2596:
2595:
2592:
2589:
2586:
2583:
2576:
2575:
2572:
2569:
2566:
2554:
2551:
2548:
2547:
2544:
2541:
2538:
2532:
2529:
2525:
2524:
2521:
2518:
2515:
2505:
2502:
2498:
2497:
2494:
2491:
2488:
2478:
2475:
2471:
2470:
2467:
2464:
2461:
2458:
2453:
2450:
2446:
2445:
2442:
2439:
2436:
2433:
2428:
2425:
2421:
2420:
2417:
2414:
2411:
2408:
2405:
2401:
2400:
2397:
2390:
2387:
2381:
2378:
2374:
2373:
2372:distance slot
2370:
2367:
2364:
2357:
2354:
2350:
2349:
2346:
2343:
2340:
2326:
2323:
2319:
2318:
2315:
2312:
2309:
2306:
2301:
2298:
2294:
2293:
2290:
2287:
2284:
2281:
2276:
2273:
2269:
2268:
2265:
2262:
2259:
2256:
2247:
2244:
2240:
2239:
2236:
2230:
2227:
2224:
2219:
2216:
2212:
2211:
2208:
2205:
2202:
2199:
2194:
2191:
2187:
2186:
2183:
2180:
2177:
2174:
2165:
2162:
2158:
2157:
2156:If bit 1 then
2154:
2153:If bit 0 then
2151:
2148:
2145:
2142:
2141:LZMA SDK name
2139:
2054:
2053:
2050:
2047:
2044:
2041:
2038:
2035:
2033:
2031:
2027:
2026:
2023:
2020:
2017:
2014:
2011:
2008:
2006:
2004:
2000:
1999:
1996:
1993:
1990:
1987:
1984:
1981:
1979:
1977:
1973:
1972:
1969:
1966:
1963:
1960:
1957:
1954:
1952:
1950:
1946:
1945:
1942:
1939:
1936:
1933:
1930:
1927:
1925:
1923:
1919:
1918:
1915:
1912:
1909:
1906:
1903:
1900:
1897:
1895:
1891:
1890:
1887:
1883:
1882:
1879:
1876:
1873:
1870:
1867:
1864:
1862:
1860:
1856:
1855:
1852:
1849:
1846:
1843:
1840:
1837:
1835:
1833:
1829:
1828:
1825:
1822:
1819:
1816:
1813:
1810:
1807:
1804:
1800:
1799:
1796:
1792:
1791:
1788:
1785:
1782:
1779:
1776:
1773:
1770:
1768:
1764:
1763:
1760:
1757:
1754:
1751:
1748:
1745:
1742:
1740:
1736:
1735:
1732:
1729:
1726:
1723:
1720:
1717:
1714:
1712:
1708:
1707:
1704:
1701:
1698:
1695:
1692:
1689:
1686:
1683:
1680:
1679:
1676:
1673:
1648:
1645:
1609:
1608:
1596:
1584:
1546:
1543:
1482:
1451:, an array of
1443:
1440:
1439:
1438:
1423:
1403:
1399:
1358:
1357:
1356:
1355:
1352:
1329:Otherwise (if
1327:
1326:
1325:
1311:
1298:
1295:
1291:
1287:
1284:
1281:
1278:
1275:
1272:
1255:
1239:
1235:
1213:
1212:
1211:
1210:
1207:
1194:
1189:
1185:
1180:
1176:
1173:
1170:
1167:
1164:
1161:
1158:
1155:
1152:
1149:
1132:
1118:
1095:Otherwise (if
1093:
1092:
1091:
1088:
1073:
1069:
1064:
1060:
1057:
1054:
1051:
1048:
1045:
1040:
1036:
1032:
1011:
990:
977:
974:
971:
968:
965:
962:
957:
953:
948:
944:
941:
938:
935:
932:
929:
912:
896:
892:
866:
865:
858:
855:
854:left by 8 bits
795:
791:
769:
766:
752:
751:
706:
704:
697:
691:
688:
685:
684:
681:
678:
675:
671:
670:
667:
664:
661:
657:
656:
653:
650:
647:
643:
642:
639:
636:
633:
629:
628:
625:
622:
619:
615:
614:
611:
608:
605:
601:
600:
597:
594:
591:
587:
586:
583:
580:
577:
573:
572:
569:
566:
563:
559:
558:
555:
552:
549:
545:
544:
541:
538:
535:
531:
530:
527:
524:
521:
517:
516:
513:
510:
507:
503:
502:
499:
496:
493:
489:
488:
485:
482:
479:
475:
474:
471:
468:
465:
461:
460:
457:
454:
451:
430:
429:
426:
422:
421:
418:
414:
413:
410:
406:
405:
402:
384:
383:
380:
377:
373:
372:
369:
366:
362:
361:
358:
355:
354:1+1+1+0 + len
351:
350:
347:
344:
343:1+1+0+1 + len
340:
339:
336:
333:
329:
328:
325:
322:
318:
317:
314:
311:
307:
306:
303:
300:
286:
283:
250:
247:
224:Abraham Lempel
210:format of the
182:
181:
164:
163:
137:
135:
128:
121:
120:
100:the key points
90:
88:
81:
76:
50:
49:
47:
40:
26:
9:
6:
4:
3:
2:
5158:
5147:
5144:
5142:
5139:
5137:
5134:
5133:
5131:
5115:
5111:
5103:
5101:
5093:
5092:
5089:
5083:
5080:
5079:
5077:
5073:
5067:
5064:
5063:
5061:
5057:
5051:
5048:
5046:
5043:
5041:
5038:
5036:
5033:
5031:
5028:
5026:
5023:
5021:
5018:
5014:
5011:
5010:
5009:
5006:
5004:
5001:
4997:
4994:
4992:
4989:
4988:
4987:
4984:
4983:
4981:
4979:
4975:
4963:
4960:
4958:
4955:
4954:
4953:
4950:
4946:
4943:
4941:
4938:
4936:
4933:
4932:
4930:
4928:
4925:
4923:
4920:
4918:
4915:
4913:
4910:
4909:
4907:
4904:
4900:
4894:
4893:Video quality
4891:
4889:
4886:
4884:
4881:
4879:
4876:
4874:
4871:
4869:
4866:
4864:
4861:
4857:
4854:
4852:
4849:
4847:
4844:
4843:
4842:
4839:
4838:
4836:
4832:
4829:
4827:
4823:
4811:
4808:
4806:
4803:
4801:
4798:
4796:
4793:
4792:
4791:
4788:
4786:
4783:
4781:
4778:
4776:
4773:
4771:
4768:
4766:
4763:
4761:
4758:
4756:
4753:
4752:
4750:
4746:
4740:
4737:
4735:
4732:
4730:
4727:
4725:
4722:
4720:
4717:
4715:
4712:
4710:
4707:
4705:
4702:
4700:
4697:
4695:
4692:
4690:
4687:
4686:
4684:
4680:
4677:
4675:
4671:
4661:
4658:
4656:
4653:
4649:
4646:
4644:
4641:
4639:
4636:
4634:
4631:
4629:
4626:
4625:
4624:
4621:
4617:
4614:
4613:
4612:
4609:
4605:
4602:
4600:
4597:
4596:
4595:
4592:
4590:
4587:
4585:
4582:
4581:
4579:
4576:
4572:
4566:
4563:
4561:
4560:Speech coding
4558:
4556:
4555:Sound quality
4553:
4551:
4548:
4546:
4543:
4541:
4538:
4536:
4533:
4531:
4530:Dynamic range
4528:
4526:
4523:
4521:
4518:
4514:
4511:
4509:
4506:
4504:
4501:
4500:
4499:
4496:
4495:
4493:
4489:
4486:
4484:
4480:
4470:
4467:
4463:
4460:
4458:
4455:
4453:
4450:
4449:
4447:
4443:
4440:
4438:
4435:
4433:
4430:
4428:
4425:
4423:
4420:
4419:
4418:
4415:
4411:
4408:
4407:
4406:
4403:
4402:
4400:
4396:
4388:
4385:
4383:
4380:
4378:
4375:
4374:
4373:
4370:
4368:
4365:
4363:
4360:
4356:
4353:
4351:
4348:
4347:
4346:
4343:
4342:
4340:
4338:
4334:
4331:
4329:
4325:
4313:
4310:
4309:
4307:
4302:
4300:
4297:
4296:
4295:LZ77 + Range
4294:
4290:
4287:
4286:
4284:
4280:
4277:
4276:
4274:
4270:
4267:
4266:
4264:
4260:
4257:
4256:
4254:
4250:
4247:
4245:
4242:
4240:
4237:
4236:
4234:
4233:
4231:
4227:
4221:
4218:
4216:
4213:
4211:
4208:
4206:
4203:
4201:
4198:
4194:
4191:
4189:
4186:
4185:
4184:
4181:
4179:
4176:
4174:
4171:
4167:
4164:
4163:
4162:
4159:
4157:
4154:
4152:
4149:
4147:
4144:
4143:
4141:
4137:
4129:
4126:
4124:
4121:
4119:
4116:
4114:
4111:
4109:
4106:
4104:
4101:
4099:
4096:
4094:
4091:
4089:
4086:
4085:
4084:
4081:
4079:
4076:
4075:
4073:
4071:
4067:
4059:
4056:
4054:
4051:
4049:
4046:
4044:
4041:
4040:
4039:
4036:
4034:
4031:
4029:
4026:
4024:
4021:
4019:
4016:
4014:
4011:
4009:
4006:
4002:
3999:
3997:
3994:
3992:
3989:
3988:
3987:
3984:
3982:
3979:
3977:
3974:
3972:
3969:
3967:
3964:
3963:
3961:
3959:
3955:
3952:
3950:
3946:
3941:
3934:
3929:
3927:
3922:
3920:
3915:
3914:
3911:
3899:
3891:
3889:
3881:
3879:
3875:
3871:
3870:
3867:
3861:
3858:
3856:
3853:
3851:
3848:
3846:
3843:
3842:
3840:
3836:
3830:
3827:
3825:
3822:
3820:
3817:
3815:
3812:
3810:
3807:
3805:
3802:
3798:
3795:
3793:
3790:
3788:
3785:
3784:
3783:
3780:
3778:
3775:
3773:
3770:
3768:
3765:
3763:
3760:
3758:
3755:
3753:
3750:
3749:
3747:
3745:
3741:
3735:
3732:
3730:
3727:
3725:
3722:
3720:
3717:
3715:
3712:
3709:
3705:
3702:
3701:
3700:
3697:
3695:
3692:
3690:
3687:
3685:
3682:
3680:
3677:
3675:
3672:
3670:
3667:
3665:
3662:
3660:
3657:
3655:
3652:
3650:
3647:
3644:
3642:
3639:
3637:
3634:
3632:
3629:
3627:
3624:
3622:
3619:
3617:
3614:
3612:
3609:
3607:
3604:
3602:
3599:
3598:
3596:
3592:
3586:
3583:
3581:
3578:
3576:
3573:
3571:
3568:
3566:
3563:
3561:
3558:
3556:
3553:
3551:
3548:
3546:
3543:
3541:
3538:
3536:
3533:
3531:
3528:
3527:
3525:
3521:
3515:
3512:
3510:
3507:
3505:
3502:
3500:
3497:
3495:
3492:
3490:
3487:
3485:
3482:
3481:
3479:
3475:
3471:
3464:
3459:
3457:
3452:
3450:
3445:
3444:
3441:
3435:
3432:
3430:
3427:
3425:
3422:
3420:
3417:
3415:
3412:
3410:
3407:
3405:
3402:
3401:
3390:
3386:
3380:
3365:
3359:
3351:
3344:
3330:
3326:
3319:
3311:
3305:
3291:on 2016-09-21
3290:
3286:
3279:
3265:
3258:
3244:
3237:
3222:
3216:
3209:
3197:
3191:
3177:
3173:
3167:
3153:
3146:
3144:
3142:
3126:
3120:
3106:
3099:
3084:
3080:
3074:
3072:
3063:
3059:
3053:
3051:
3049:
3047:
3032:
3025:
3023:
3008:
3001:
2987:
2980:
2966:on 2013-01-06
2965:
2961:
2957:
2950:
2935:
2928:
2926:
2911:on 2012-11-09
2910:
2906:
2902:
2898:
2892:
2888:
2881:
2879:
2878:public domain
2866:
2862:
2858:
2854:
2850:
2847:
2844:
2841:
2838:
2834:
2830:
2826:
2822:
2818:
2814:
2810:
2806:
2802:
2798:
2795:
2794:
2793:
2785:
2783:
2779:
2774:
2772:
2768:
2763:
2761:
2757:
2753:
2748:
2746:
2742:
2738:
2734:
2730:
2726:
2722:
2718:
2714:
2709:
2706:
2704:
2703:public domain
2700:
2696:
2692:
2688:
2678:
2676:
2672:
2659:
2656:
2653:
2650:
2649:
2648:
2642:
2639:
2638:
2637:
2631:
2628:
2625:
2621:
2618:
2617:
2616:
2610:
2607:
2604:
2601:
2600:
2599:
2593:
2590:
2587:
2584:
2581:
2580:
2579:
2573:
2570:
2567:
2564:
2563:
2562:
2559:
2542:
2539:
2536:
2533:
2530:
2528:len_dec.high
2527:
2526:
2519:
2516:
2513:
2509:
2506:
2503:
2500:
2499:
2492:
2489:
2486:
2482:
2479:
2476:
2473:
2472:
2468:
2466:10–17 length
2465:
2462:
2459:
2457:
2454:
2451:
2448:
2447:
2443:
2440:
2437:
2434:
2432:
2429:
2426:
2423:
2422:
2415:
2412:
2409:
2406:
2403:
2402:
2395:
2394:distance_slot
2391:
2388:
2385:
2384:distance_slot
2382:
2379:
2377:dist_special
2376:
2375:
2368:
2365:
2362:
2358:
2355:
2352:
2351:
2344:
2341:
2338:
2334:
2330:
2327:
2324:
2321:
2320:
2316:
2313:
2310:
2307:
2305:
2302:
2299:
2296:
2295:
2291:
2288:
2285:
2282:
2280:
2277:
2274:
2271:
2270:
2266:
2263:
2260:
2257:
2255:
2251:
2248:
2245:
2243:is_rep0_long
2242:
2241:
2237:
2235:
2231:
2228:
2225:
2223:
2220:
2217:
2214:
2213:
2209:
2206:
2203:
2200:
2198:
2195:
2192:
2189:
2188:
2184:
2181:
2178:
2176:packet start
2175:
2173:
2169:
2166:
2163:
2160:
2159:
2155:
2152:
2149:
2146:
2143:
2140:
2137:
2136:
2133:
2130:
2128:
2123:
2121:
2116:
2114:
2110:
2105:
2101:
2098:
2093:
2091:
2086:
2084:
2080:
2075:
2073:
2069:
2065:
2061:
2051:
2048:
2045:
2042:
2039:
2036:
2034:
2032:
2029:
2028:
2024:
2021:
2018:
2015:
2012:
2009:
2007:
2005:
2002:
2001:
1997:
1994:
1991:
1988:
1985:
1982:
1980:
1978:
1975:
1974:
1970:
1967:
1964:
1961:
1958:
1955:
1953:
1951:
1948:
1947:
1943:
1940:
1937:
1934:
1931:
1928:
1926:
1924:
1921:
1920:
1916:
1913:
1910:
1907:
1904:
1901:
1898:
1896:
1893:
1892:
1888:
1885:
1884:
1865:
1863:
1857:
1853:
1850:
1847:
1844:
1841:
1838:
1836:
1834:
1831:
1830:
1826:
1823:
1820:
1817:
1814:
1811:
1808:
1805:
1802:
1801:
1797:
1794:
1793:
1771:
1769:
1765:
1761:
1758:
1755:
1752:
1749:
1746:
1743:
1741:
1738:
1737:
1733:
1730:
1727:
1724:
1721:
1718:
1715:
1713:
1710:
1709:
1705:
1702:
1699:
1696:
1693:
1691:2nd previous
1690:
1688:3rd previous
1687:
1685:4th previous
1684:
1682:
1681:
1671:
1670:
1667:
1664:
1661:
1656:
1653:
1644:
1640:
1638:
1632:
1628:
1622:
1618:
1614:
1605:
1600:
1597:
1593:
1588:
1585:
1582:
1579:
1578:
1577:
1573:
1569:
1565:
1559:
1553:
1542:
1539:
1537:
1531:
1521:
1517:
1513:
1507:
1503:
1492:
1488:
1478:
1472:
1468:
1464:
1462:
1456:
1450:
1436:
1432:
1428:
1424:
1421:
1401:
1397:
1386:
1385:
1384:
1381:
1379:
1376:and added to
1375:
1371:
1367:
1353:
1351:
1347:
1343:
1339:
1338:
1336:
1332:
1328:
1323:
1322:
1320:
1317:is less than
1316:
1312:
1293:
1289:
1285:
1282:
1279:
1276:
1273:
1260:
1256:
1237:
1233:
1223:is less than
1222:
1218:
1217:
1216:
1208:
1187:
1183:
1178:
1174:
1171:
1168:
1165:
1159:
1156:
1153:
1150:
1147:
1137:
1133:
1131:
1127:
1123:
1119:
1117:
1113:
1109:
1105:
1104:
1102:
1098:
1094:
1089:
1071:
1067:
1062:
1055:
1052:
1049:
1046:
1043:
1038:
1034:
1020:
1016:
1012:
1010:
1006:
1002:
1001:
999:
996:is less than
995:
991:
975:
972:
969:
966:
963:
955:
951:
946:
942:
939:
936:
933:
930:
917:
913:
894:
890:
880:is less than
879:
875:
874:
873:
871:
863:
859:
856:
853:
849:
845:
844:
843:
840:
838:
830:
825:
823:
819:
814:
811:
793:
789:
778:
773:
765:
762:
757:
748:
745:
737:
727:
723:
719:
713:
712:
707:This section
705:
696:
695:
682:
679:
676:
673:
672:
668:
665:
662:
660:14–62 (even)
659:
658:
654:
651:
648:
645:
644:
640:
637:
634:
631:
630:
626:
623:
620:
617:
616:
612:
609:
606:
603:
602:
598:
595:
592:
589:
588:
584:
581:
578:
575:
574:
570:
567:
564:
561:
560:
556:
553:
550:
547:
546:
542:
539:
536:
533:
532:
528:
525:
522:
519:
518:
514:
511:
508:
505:
504:
500:
497:
494:
491:
490:
486:
483:
480:
477:
476:
472:
469:
466:
463:
462:
458:
455:
452:
449:
448:
442:
438:
435:
427:
424:
423:
419:
416:
415:
411:
408:
407:
403:
400:
399:
396:
393:
389:
381:
378:
375:
374:
370:
367:
364:
363:
359:
356:
353:
352:
348:
345:
342:
341:
337:
334:
331:
330:
326:
323:
320:
319:
315:
312:
310:0 + byteCode
309:
308:
304:
301:
298:
297:
294:
291:
282:
280:
276:
270:
268:
264:
263:range encoder
260:
256:
246:
243:
239:
237:
233:
229:
225:
221:
217:
213:
209:
205:
201:
197:
193:
189:
178:
175:
160:
150:
145:
143:
138:This article
136:
127:
126:
117:
107:
101:
99:
94:
89:
85:
80:
79:
74:
72:
65:
64:
59:
58:
53:
48:
39:
38:
33:
19:
5066:Hutter Prize
5030:Quantization
4935:Compensation
4729:Quantization
4452:Compensation
4298:
4018:Shannon–Fano
3958:Entropy type
3554:
3388:
3379:
3368:. Retrieved
3366:. WinZip.com
3358:
3348:Diaz, Diaz.
3343:
3332:. Retrieved
3328:
3318:
3304:
3293:. Retrieved
3289:the original
3278:
3267:. Retrieved
3257:
3246:. Retrieved
3236:
3225:. Retrieved
3223:. 2012-10-26
3215:
3206:
3200:. Retrieved
3190:
3179:. Retrieved
3166:
3155:. Retrieved
3129:. Retrieved
3127:. 2009-08-27
3119:
3108:. Retrieved
3098:
3086:. Retrieved
3082:
3061:
3034:. Retrieved
3010:. Retrieved
3000:
2989:. Retrieved
2979:
2968:. Retrieved
2964:the original
2959:
2949:
2937:. Retrieved
2913:. Retrieved
2909:the original
2905:"LZMA spec?"
2891:
2875:
2817:Linux kernel
2791:
2775:
2764:
2756:binary trees
2749:
2710:
2707:
2684:
2674:
2668:
2646:
2635:
2623:
2614:
2597:
2577:
2560:
2556:
2553:LZMA2 format
2534:
2511:
2507:
2501:len_dec.mid
2484:
2480:
2474:len_dec.low
2455:
2430:
2393:
2383:
2361:match_length
2360:
2336:
2332:
2328:
2303:
2278:
2253:
2249:
2233:
2221:
2196:
2171:
2167:
2150:Coding mode
2131:
2126:
2124:
2119:
2117:
2112:
2108:
2103:
2102:
2096:
2094:
2089:
2087:
2082:
2078:
2076:
2071:
2067:
2063:
2059:
2057:
1665:
1659:
1657:
1654:
1650:
1641:
1636:
1630:
1626:
1620:
1616:
1612:
1610:
1603:
1598:
1591:
1586:
1580:
1571:
1567:
1563:
1557:
1551:
1548:
1540:
1535:
1529:
1519:
1515:
1511:
1510:range (with
1505:
1501:
1493:
1486:
1476:
1473:
1469:
1465:
1460:
1454:
1448:
1445:
1434:
1430:
1426:
1419:
1382:
1377:
1373:
1369:
1365:
1359:
1354:Return bit 1
1349:
1345:
1341:
1334:
1330:
1324:Return bit 0
1318:
1314:
1258:
1220:
1214:
1209:Return bit 1
1135:
1129:
1125:
1121:
1115:
1111:
1107:
1100:
1096:
1090:Return bit 0
1018:
1014:
1008:
1004:
997:
993:
915:
877:
869:
867:
861:
851:
847:
841:
836:
828:
826:
821:
817:
815:
812:
776:
774:
771:
758:
755:
740:
731:
708:
674:15–63 (odd)
439:
436:
433:
425:1+1+ 8 bits
417:1+0+ 3 bits
404:Description
394:
390:
387:
302:Packet name
292:
288:
271:
253:LZMA uses a
252:
241:
240:
191:
187:
185:
170:
154:
147:Please help
139:
111:
95:
93:lead section
68:
61:
55:
54:Please help
51:
5025:Prefix code
4878:Frame types
4699:Color space
4525:Convolution
4255:LZ77 + ANS
4166:Incremental
4139:Other types
4058:Levenshtein
3176:SourceForge
3088:14 November
3083:Lzip Manual
2986:"7z Format"
2901:SourceForge
2897:Igor Pavlov
2752:hash chains
2713:open source
2699:Igor Pavlov
2675:tukaani.org
2469:18+ length
2452:LenChoice2
2444:10+ length
2441:2–9 length
2404:dist_align
2246:IsRep0Long
1383:Note that:
1362:rc_direct()
846:Shift both
204:Igor Pavlov
5130:Categories
5082:Mark Adler
5040:Redundancy
4957:Daubechies
4940:Estimation
4873:Frame rate
4795:Daubechies
4755:Chain code
4714:Macroblock
4520:Companding
4457:Estimation
4377:Daubechies
4083:Lempel–Ziv
4043:Exp-Golomb
3971:Arithmetic
3878:Comparison
3370:2016-03-14
3334:2015-10-21
3295:2013-06-16
3269:2013-06-16
3248:2013-06-16
3227:2013-06-16
3202:2013-06-16
3181:2014-02-12
3157:2013-06-16
3131:2013-06-16
3110:2013-06-16
3036:2018-07-20
3012:2013-11-13
2991:2013-06-16
2970:2013-06-16
2939:2015-10-21
2915:2013-06-16
2884:References
2829:kernel.org
2427:LenChoice
2353:dist_slot
2232:SHORTREP/
2147:Used when
2127:match_byte
2113:match_byte
2109:match_byte
2097:match_byte
1496:rc_bittree
734:April 2012
718:improve it
409:0+ 3 bits
57:improve it
5059:Community
4883:Interlace
4269:Zstandard
4048:Fibonacci
4038:Universal
3996:Canonical
3585:Zstandard
3310:"Zip-Ada"
3062:7-zip.org
2805:Unix-like
2512:pos_state
2485:pos_state
2264:SHORTREP
2254:pos_state
2172:pos_state
2161:is_match
2060:pos_state
1986:SHORTREP
1902:SHORTREP
1889:SHORTREP
1809:SHORTREP
1798:SHORTREP
1706:SHORTREP
1694:previous
1604:pos_state
1576:, where:
1522:+ 1. The
1297:⌋
1271:⌊
1193:⌋
1163:⌊
1160:−
1059:⌋
1044:−
1031:⌊
964:×
961:⌋
928:⌊
722:verifying
335:SHORTREP
228:Jacob Ziv
196:algorithm
157:July 2014
114:July 2014
98:summarize
63:talk page
5045:Symmetry
5013:Timeline
4996:FM-index
4841:Bit rate
4834:Concepts
4682:Concepts
4545:Sampling
4498:Bit rate
4491:Concepts
4193:Sequitur
4028:Tunstall
4001:Modified
3991:Adaptive
3949:Lossless
3898:Category
3792:Java RAR
3540:compress
2782:embedded
2691:GNU LGPL
2531:LenHigh
2380:SpecPos
2356:PosSlot
2325:Literal
2322:literal
2317:LONGREP
2314:LONGREP
2300:IsRepG2
2297:is_rep2
2292:LONGREP
2289:LONGREP
2275:IsRepG1
2272:is_rep1
2267:LONGREP
2238:LONGREP
2234:LONGREP
2218:IsRepG0
2215:is_rep0
2164:IsMatch
2138:XZ name
1959:LONGREP
1866:LONGREP
1772:LONGREP
1703:LONGREP
1561:byte is
1463:leaves.
1348:−
1128:−
1114:−
379:LONGREP
368:LONGREP
357:LONGREP
346:LONGREP
332:1+1+0+0
249:Overview
194:) is an
5003:Entropy
4952:Wavelet
4931:Motion
4790:Wavelet
4770:Fractal
4765:Deflate
4748:Methods
4535:Latency
4448:Motion
4372:Wavelet
4289:LHA/LZH
4239:Deflate
4188:Re-Pair
4183:Grammar
4013:Shannon
3986:Huffman
3942:methods
3626:Cabinet
2815:). The
2701:in the
2504:LenMid
2477:LenLow
2190:is_rep
2185:*MATCH
2037:*MATCH
2010:*MATCH
1886:*MATCH
1795:*MATCH
1574:× 9 × 5
1494:In the
1416:
1389:
1309:
1263:
1252:
1225:
1205:
1140:
1086:
1023:
988:
920:
909:
882:
808:
781:
716:Please
5114:codecs
5075:People
4978:Theory
4945:Vector
4462:Vector
4279:Brotli
4229:Hybrid
4128:Snappy
3981:Golomb
3550:Zopfli
3530:Brotli
2857:WinZip
2837:Fedora
2833:Debian
2737:Pascal
2733:Python
2727:, and
2721:ANSI C
2535:is_REP
2508:is_REP
2481:is_REP
2456:is_REP
2431:is_REP
2407:Align
2207:MATCH
2193:IsRep
2090:is_REP
2013:MATCH
1932:MATCH
1839:MATCH
1744:MATCH
1700:MATCH
1672:state
1570:× 9 +
1558:lclppb
1552:lclppb
1504:, 2 ×
835:, and
324:MATCH
4905:parts
4903:Codec
4868:Frame
4826:Video
4810:SPIHT
4719:Pixel
4674:Image
4628:ACELP
4599:ADPCM
4589:μ-law
4584:A-law
4577:parts
4575:Codec
4483:Audio
4422:ACELP
4410:ADPCM
4387:SPIHT
4328:Lossy
4312:bzip2
4303:LZHAM
4259:LZFSE
4161:Delta
4053:Gamma
4033:Unary
4008:Range
3669:lrzip
3535:bzip2
2872:LZHAM
2809:bzip2
2687:7-Zip
2669:The .
2626:value
2624:state
2304:state
2279:state
2250:state
2222:state
2210:*REP
2197:state
2168:state
2040:*REP
1660:state
1536:limit
1530:limit
1518:and 2
1512:limit
1506:limit
1502:limit
1487:limit
1477:limit
1461:limit
1455:limit
1449:limit
1431:range
1420:bound
1378:range
1368:from
1366:range
1350:range
1335:range
1319:range
1259:range
1221:range
1130:bound
1116:bound
1112:range
1108:range
1101:bound
1009:bound
1005:range
998:bound
916:bound
878:range
848:range
833:2 − 1
829:range
818:range
242:LZMA2
232:bzip2
212:7-Zip
4917:DPCM
4724:PSNR
4655:MDCT
4648:WLPC
4633:CELP
4594:DPCM
4442:WLPC
4427:CELP
4405:DPCM
4355:MDCT
4299:LZMA
4200:LDCT
4178:DPCM
4123:LZWL
4113:LZSS
4108:LZRW
4098:LZJB
3888:List
3829:XBAP
3809:MSIX
3762:APPX
3734:ZPAQ
3704:sitx
3694:rzip
3654:.egg
3649:.dmg
3645:DGCA
3570:lzop
3565:lzip
3555:LZMA
3545:gzip
3514:WARC
3494:shar
3489:cpio
3090:2019
2865:PPMd
2863:and
2861:BZip
2849:ZIPX
2843:lzip
2835:and
2823:and
2821:dpkg
2813:gzip
2801:gzip
2758:and
2743:and
2729:Java
2693:and
2622:The
2463:bit
2438:bit
2359:min(
2311:bit
2286:bit
2261:bit
2229:bit
2204:bit
2182:LIT
2179:bit
2095:The
2088:The
2077:The
2070:and
2062:and
2058:The
1983:LIT
1956:LIT
1929:LIT
1905:LIT
1899:LIT
1869:LIT
1842:LIT
1815:LIT
1812:LIT
1806:LIT
1778:LIT
1775:LIT
1750:LIT
1747:LIT
1722:LIT
1719:LIT
1716:LIT
1697:LIT
1658:The
1635:and
1619:and
1528:[0,
1457:− 1)
1435:prob
1427:prob
1374:code
1370:code
1346:code
1342:code
1340:Set
1331:code
1315:code
1257:Set
1136:prob
1134:Set
1126:code
1122:code
1120:Set
1106:Set
1097:code
1019:prob
1015:prob
1013:Set
1003:Set
994:code
914:Set
870:prob
862:code
852:code
850:and
837:code
822:code
777:prob
313:LIT
279:gzip
277:and
259:LZ77
226:and
220:LZ77
192:LZMA
186:The
18:LZMA
4962:DWT
4912:DCT
4856:VBR
4851:CBR
4846:ABR
4805:EZW
4800:DWT
4785:RLE
4775:KLT
4760:DCT
4643:LSP
4638:LAR
4623:LPC
4616:FFT
4513:VBR
4508:CBR
4503:ABR
4437:LSP
4432:LAR
4417:LPC
4382:DWT
4367:FFT
4362:DST
4350:DCT
4249:LZS
4244:LZX
4220:RLE
4215:PPM
4210:PAQ
4205:MTF
4173:DMC
4151:CTW
4146:BWT
4118:LZW
4103:LZO
4093:LZ4
4088:842
3860:PAQ
3824:XAP
3819:RPM
3804:MSI
3797:EAR
3787:WAR
3782:JAR
3777:ipa
3772:HAP
3767:deb
3757:App
3752:apk
3729:ZIP
3724:zoo
3719:Xar
3714:UDA
3710:SQX
3699:sit
3689:RAR
3684:PEA
3679:MPQ
3674:LZX
3664:LHA
3659:kgb
3641:dar
3636:cpt
3631:cfs
3616:ARJ
3611:ARC
3606:ACE
3560:LZ4
3509:WAD
3504:LBR
3499:tar
2853:ZIP
2825:RPM
2745:Ada
2717:C++
2107:in
2052:11
2049:11
2046:10
2030:11
2025:11
2022:11
2019:10
2003:10
1998:11
1995:11
1992:10
1971:11
1968:11
1965:10
1944:11
1941:11
1938:10
1481:log
1344:to
1337:):
1313:If
1261:to
1219:If
1138:to
1124:to
1110:to
1103:):
1017:to
1007:to
992:If
918:to
876:If
831:to
720:by
677:11
663:10
649:11
646:13
635:10
632:12
621:11
618:11
607:10
604:10
593:11
579:10
565:11
551:10
537:11
523:10
509:11
495:10
481:01
467:00
275:zip
5132::
4780:LP
4611:FT
4604:DM
4156:CM
3621:B1
3601:7z
3580:xz
3575:SQ
3484:ar
3327:.
3205:.
3174:.
3140:^
3081:.
3070:^
3060:.
3045:^
3021:^
2958:.
2924:^
2831:,
2819:,
2797:xz
2754:,
2747:.
2741:Go
2739:,
2725:C#
2723:,
2671:xz
2510:,
2483:,
2392:((
2335:,
2331:,
2252:,
2170:,
2115:.
2083:lc
2072:lp
2068:pb
2043:5
2016:4
1989:6
1976:9
1962:5
1949:8
1935:4
1922:7
1917:9
1914:8
1911:7
1908:3
1894:6
1881:9
1878:8
1875:7
1872:2
1859:5
1854:9
1851:8
1848:7
1845:1
1832:4
1827:9
1824:8
1821:7
1818:0
1803:3
1790:9
1787:8
1784:7
1781:0
1767:2
1762:9
1759:8
1756:7
1753:0
1739:1
1734:9
1731:8
1728:7
1725:0
1711:0
1637:pb
1631:lp
1629:+
1627:lc
1621:pb
1617:lp
1613:lc
1599:pb
1587:lp
1581:lc
1572:pb
1568:lp
1566:+
1564:lc
1402:11
1380:.
1321::
1238:24
1039:11
1021:+
1000::
956:11
895:24
794:10
761:XZ
683:4
669:4
655:5
652:0
641:5
638:0
627:4
624:0
613:4
610:0
599:3
596:0
590:9
585:3
582:0
576:8
571:2
568:0
562:7
557:2
554:0
548:6
543:1
540:0
534:5
529:1
526:0
520:4
515:0
512:0
506:3
501:0
498:0
492:2
487:0
484:0
478:1
473:0
470:0
464:0
236:GB
208:7z
66:.
5116:)
5112:(
3932:e
3925:t
3918:v
3462:e
3455:t
3448:v
3373:.
3337:.
3312:.
3298:.
3272:.
3251:.
3230:.
3184:.
3160:.
3134:.
3113:.
3092:.
3064:.
3039:.
3015:.
2994:.
2973:.
2942:.
2918:.
2867:.
1633:)
1625:(
1532:)
1520:i
1516:i
1508:)
1500:[
1489:)
1485:(
1483:2
1453:(
1398:2
1294:2
1290:/
1286:e
1283:g
1280:n
1277:a
1274:r
1234:2
1188:5
1184:2
1179:/
1175:b
1172:o
1169:r
1166:p
1157:b
1154:o
1151:r
1148:p
1072:5
1068:2
1063:/
1056:b
1053:o
1050:r
1047:p
1035:2
976:b
973:o
970:r
967:p
952:2
947:/
943:e
940:g
937:n
934:a
931:r
891:2
790:2
747:)
741:(
736:)
732:(
714:.
190:(
177:)
171:(
159:)
155:(
144:.
116:)
112:(
102:.
73:)
69:(
34:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.