Some xz man changes.

This commit is contained in:
Lasse Collin 2009-08-17 22:45:50 +03:00
parent 10242a21e9
commit fe111a25cd
1 changed files with 43 additions and 45 deletions

View File

@ -638,20 +638,22 @@ compressing.
.PP .PP
Filters take filter-specific Filters take filter-specific
.I options .I options
as a comma-separated list. Unneeded commas in as a comma-separated list. Extra commas in
.I options .I options
are ignored. Every option has a default value, so you need to are ignored. Every option has a default value, so you need to
specify only those you want to change. specify only those you want to change.
.TP .TP
\fB\-\-lzma1\fR[\fB=\fIoptions\fR], \fB\-\-lzma2\fR[\fB=\fIoptions\fR] \fB\-\-lzma1\fR[\fB=\fIoptions\fR], \fB\-\-lzma2\fR[\fB=\fIoptions\fR]
Add LZMA1 or LZMA2 filter to the filter chain. LZMA1 is a legacy filter, Add LZMA1 or LZMA2 filter to the filter chain. These filter can be used
which is supported almost solely due to the legacy only as the last filter in the chain.
.IP
LZMA1 is a legacy filter, which is supported almost solely due to the legacy
.B .lzma .B .lzma
file format, which supports only LZMA1. The file format, which supports only LZMA1. LZMA2 is an updated
version of LZMA1 to fix some practical issues of LZMA1. The
.B .xz .B .xz
format uses LZMA2, and doesn't support LZMA1 at all. LZMA2 is an updated format uses LZMA2, and doesn't support LZMA1 at all. Compression speed and
version of LZMA1 to fix some practical issues. Compression speed and ratios ratios of LZMA1 and LZMA2 are practically the same.
of LZMA1 and LZMA2 are practically the same.
.IP .IP
LZMA1 and LZMA2 share the same set of LZMA1 and LZMA2 share the same set of
.IR options : .IR options :
@ -683,24 +685,23 @@ from which the default values for the rest of the LZMA1 or LZMA2
are taken. are taken.
.TP .TP
.BI dict= size .BI dict= size
Specify the dictionary (history buffer) size. This option has the biggest Dictionary (history buffer) size indicates how many bytes of the recently
effect on compression ratio and memory usage. processed uncompressed data is kept in memory. One method to reduce size of
.IP
Dictionary size indicates how many bytes of the recently processed
uncompressed data is kept in memory. One method to reduce size of
the uncompressed data is to store distance-length pairs, which the uncompressed data is to store distance-length pairs, which
indicate what data to repeat from the dictionary buffer. Thus, indicate what data to repeat from the dictionary buffer. The bigger
the bigger the dictionary, the better the compression ratio usually is. the dictionary, the better the compression ratio usually is,
but dictionaries bigger than the uncompressed data are waste of RAM.
.IP .IP
Typical dictionary size is from 64 KiB to 64 MiB. The minimum is 4 KiB. Typical dictionary size is from 64 KiB to 64 MiB. The minimum is 4 KiB.
The maximum for compression is currently 1.5 GiB. The decompressor already The maximum for compression is currently 1.5 GiB. The decompressor already
supports dictionaries up to 4 GiB (actually one byte less than 4 GiB). supports dictionaries up to one byte less than 4 GiB, which is the
maximum for LZMA1 and LZMA2 stream formats.
.IP .IP
Dictionary size has the biggest effect on compression ratio. Dictionary size has the biggest effect on compression ratio.
Dictionary size and match finder together determine the memory usage of Dictionary size and match finder together determine the memory usage of
the LZMA1 or LZMA2 encoder. The same dictionary size is required the LZMA1 or LZMA2 encoder. The same dictionary size is required
when decompress that was used when compressing, thus the memory usage of the for decompressing that was used when compressing, thus the memory usage of
decoder is determined by the dictionary size used when compressing. the decoder is determined by the dictionary size used when compressing.
.TP .TP
.BI lc= lc .BI lc= lc
Specify the number of literal context bits. Specify the number of literal context bits.
@ -732,29 +733,6 @@ for
.I presets .I presets
.BR 3 \- 9 . .BR 3 \- 9 .
.TP .TP
.BI nice= nice
Specify what is considered to be a nice length for a match. Once a match
of at least
.I nice
bytes is found, the algorithm stops looking for possibly better matches.
.IP
.I nice
can be 2\-273 bytes. Higher values tend to give better compression ratio
at expense of speed. The default is
.B 8
for
.I preset
.BR 0 ,
.B 32
for
.I presets
.BR 1\-5 ,
and
.B 64
for
.I presets
.BR 6\-9 .
.TP
.BI mf= mf .BI mf= mf
Match finder has a major effect on encoder speed, memory usage, and Match finder has a major effect on encoder speed, memory usage, and
compression ratio. Usually Hash Chain match finders are faster than compression ratio. Usually Hash Chain match finders are faster than
@ -836,6 +814,18 @@ Memory usage:
* 11.5 * 11.5
.RE .RE
.TP .TP
.BI nice= nice
Specify what is considered to be a nice length for a match. Once a match
of at least
.I nice
bytes is found, the algorithm stops looking for possibly better matches.
.IP
.I nice
can be 2\-273 bytes. Higher values tend to give better compression ratio
at expense of speed. The default depends on the
.I preset
level.
.TP
.BI depth= depth .BI depth= depth
Specify the maximum search depth in the match finder. The default is the Specify the maximum search depth in the match finder. The default is the
special value special value
@ -877,7 +867,9 @@ and
\fB\-\-armthumb\fR[\fB=\fIoptions\fR] \fB\-\-armthumb\fR[\fB=\fIoptions\fR]
.TP .TP
\fB\-\-sparc\fR[\fB=\fIoptions\fR] \fB\-\-sparc\fR[\fB=\fIoptions\fR]
Add a branch/call/jump (BCJ) filter to the filter chain. Add a branch/call/jump (BCJ) filter to the filter chain. These filters
can be used only as non-last filter in the filter chain.
.IP
A BCJ filter converts relative addresses in the machine code to their A BCJ filter converts relative addresses in the machine code to their
absolute counterparts. This doesn't change the size of the data, but absolute counterparts. This doesn't change the size of the data, but
it increases redundancy, which allows e.g. LZMA2 to get better it increases redundancy, which allows e.g. LZMA2 to get better
@ -942,8 +934,14 @@ for the whole executable.
.RE .RE
.TP .TP
\fB\-\-delta\fR[\fB=\fIoptions\fR] \fB\-\-delta\fR[\fB=\fIoptions\fR]
Add Delta filter to the filter chain. Currently only simple byte-wise Add Delta filter to the filter chain. The Delta filter
delta calculation is supported. can be used only as non-last filter in the filter chain.
.IP
Currently only simple byte-wise delta calculation is supported. It can
be useful when compressing e.g. uncompressed bitmap images or uncompressed
PCM audio. However, special purpose algorithms may give significantly better
results than Delta + LZMA2. This is true especially with audio, which
compresses faster and better e.g. with FLAC.
.IP .IP
Supported Supported
.IR options : .IR options :
@ -1104,7 +1102,7 @@ and
.I lp .I lp
is possible with is possible with
.B xz .B xz
and with LZMA SDK <http://7-zip.org/sdk.html>. and with LZMA SDK.
.PP .PP
The implementation of the LZMA1 filter in liblzma requires The implementation of the LZMA1 filter in liblzma requires
that the sum of that the sum of
@ -1201,6 +1199,6 @@ XZ Embedded supports BCJ filters, but only with the default start offset.
.PP .PP
XZ Utils: <http://tukaani.org/xz/> XZ Utils: <http://tukaani.org/xz/>
.br .br
XZ Embedded: <http://tukaani.org/xz/embedded.html> FIXME XZ Embedded: <http://tukaani.org/xz/embedded.html>
.br .br
LZMA SDK: <http://7-zip.org/sdk.html> LZMA SDK: <http://7-zip.org/sdk.html>