Re: Precomp - a command-line file precompressor
- From: Malcolm Taylor <me@xxxxxx>
- Date: Wed, 13 Sep 2006 08:49:29 +1200
Hi again,
schnaader@xxxxxx wrote:
The "trial and error" part is what slows down Precomp. There are 9
different compression levels and 9 different memory levels, and they
don't appear in the zLib header, so the program has to check for
recompression 81 times per stream. But there are some optimizations
already that fasten up that part a lot.
Might I suggest gathering statistics while decompressing. Most likely, the deflate block size, and the maximum distance that the matches reach will help narrow down the choices (or at least help choose the most likely ones first).
Also, if you didn't, try Precomp several times on the files, like PDF
-> PCF -> PCF2 -> PCF3... this will lead to better results sometimes.
Precomp will tell you when this didn't lead to further savings.
You could probably make this automatic. Whenever you decompress a stream, you could look for valid deflate streams within it and recurse...
Deflate64 is not supported by zLib, and I'll have to use an
implementation from a different source like the 7-Zip source code. This
will follow when I added gzip support.
This is less likely to be of use, since to the best of my knowledge there are several different deflate64 implementations. WinRK's is custom built, 7zip's is too, and I know nothing about WinRAR's.
Malcolm
PS. Thanks, it is always fun to see something like this emerge! :) I just might have to fit the idea into WinRK... (if I can find the time)
.
- References:
- Re: Precomp - a command-line file precompressor
- From: Sportman
- Re: Precomp - a command-line file precompressor
- From: Stephan Busch (Squeeze Chart 2005)
- Re: Precomp - a command-line file precompressor
- Prev by Date: Re: Precomp - a command-line file precompressor
- Next by Date: Re: Precomp - a command-line file precompressor
- Previous by thread: Re: Precomp - a command-line file precompressor
- Next by thread: Re: Precomp - a command-line file precompressor
- Index(es):
Relevant Pages
|
|