Change way stream blocks are computed to maximize compression.

* Add Dictionary Size computation and setting capability.
* Remove 7/9 scaling for lzma levels. Default still 5.
* LZMA levels now 1-9.
* Improve info displays.
* Assembler will now select either nasm or yasm.
* ETA will be displayed after each chunk is processed.
* Decompression status updated every 5 seconds or so.
* Documentation updates.
* Code cleanups (whitespace removal, comment alignment).
This commit is contained in:
Peter Hyman 2019-12-17 07:22:36 -06:00
parent 4f1adeaec4
commit 2979c8ec26
19 changed files with 264 additions and 121 deletions

View file

@ -7,7 +7,7 @@ Assembler is enabled by
and disabled by
./configure --disable-asm
not
ASM=no ./configure
ASM=no ./configure
New files replace 32 and 64 bit assembler code.
fixes to lzma/C/Makefile.am permit libtool linking.
@ -38,7 +38,7 @@ which will automatically not include the asm module or
change the line
ASM_OBJ=7zCrcT8.o 7zCrcT8U.o
to
to
ASM_OBJ=7zCrc.o
in Makefile. This will change the dependency tree.

View file

@ -88,7 +88,7 @@ explain.
lzo testing for incompressible data...OK for chunk 43408.
Compressed size = 52.58% of chunk, 1 Passes
Progress percentage pausing during lzma compression...
lzo testing for incompressible data...FAILED - below threshold for chunk 523245383.
lzo testing for incompressible data...FAILED - below threshold for chunk 523245383.
Compressed size = 98.87% of chunk, 50 Passes
This was for a video .VOB file of 1GB. A compression threshold of 2 was used.

View file

@ -2,30 +2,41 @@
# anything beginning with a # or whitespace will be ignored
# valid parameters are separated with an = and a value
# parameters and values are not case sensitive except where specified
#
#
# lrzip 0.24+, peter hyman, pete@peterhyman.com
# ignored by earlier versions.
# Compression Window size in 100MB. Normally selected by program. (-w)
# WINDOW = 20
# Compression Level 1-9 (7 Default). (-L)
# COMPRESSIONLEVEL = 7
# Use -U setting, Unlimited ram. Yes or No
# UNLIMITED = NO
# Compression Method, rzip, gzip, bzip2, lzo, or lzma (default), or zpaq. (-n -g -b -l --lzma -z)
# May be overriden by command line compression choice.
# COMPRESSIONMETHOD = lzma
# Perform LZO Test. Default = YES (-T )
# LZMA Dictionary Size. 0 = default value used. 12-30 = 2^ds (--dictsize)
# DICTIONARYSIZE = 0
# Perform LZO Test. Default = YES (-T)
# LZOTEST = NO
# Hash Check on decompression, (-c)
# HASHCHECK = YES
# Show HASH value on Compression even if Verbose is off, YES (-H)
# SHOWHASH = YES
# Default output directory (-O)
# OUTPUTDIRECTORY = location
# Verbosity, YES or MAX (v, vv)
# VERBOSITY = max
# Show Progress as file is parsed, YES or no (NO = -q option)
# SHOWPROGRESS = YES
@ -38,14 +49,12 @@
# Delete source file after compression (-D)
# this parameter and value are case sensitive
# value must be YES to activate
# DELETEFILES = NO
# Replace existing lrzip file when compressing (-f)
# this parameter and value are case sensitive
# value must be YES to activate
# REPLACEFILE = YES
# REPLACEFILE = YES
# Override for Temporary Directory. Only valid when stdin/out or Test is used
# TMPDIR = /tmp

View file

@ -32,7 +32,7 @@ Rzip Chunk Data:
XX Stream 0 header data
XX Stream 1 header data
Stream Header Data:
Stream Header Data:
Byte:
0 Compressed data type
(RCD0 bytes) Compressed data length