Tutorials
Compress Files like a Pro
DropStuff Expert Compression Settings
When you choose "Custom" in the "Compression Level" preference for any of the formats (StuffIt, Zip, Tar), StuffIt offers an "Expert" mode dialog that allows you to
"fine-tune" the StuffIt Engine to configure exactly how the compression algorithm goes about the job of compressing your files.
StuffIt X Expert Compression Settings
StuffIt X Compression Method
Compression method allows you to select different compressors for use when adding files to a StuffIt X archive with compression.
- No Compression: Files will be added to the archive without being compressed.
- Fastest Compression and Expansion (LZ): Lempel-Ziv or LZ is a common compression method that provides compression optimized for speed of both compression and
decompression. It works by replacing a series of bytes with a reference to a previous occurrence of the same series of bytes. LZ is used when the compression level is set to
"Faster".
- Best Size/Speed Trade Off (BWT): Burrows-Wheeler Transform or BWT provides the best trade-off between compression/decompression speed and archive file size and
works well on a variety of different file types. This compression method does a reversible sort on the data, placing like data closer together which makes it more
compressible.
Note: There is a newer implementation of BWT in StuffIt 10 and later. This method is faster and makes smaller archives, but is not backwards compatible. Archives
created with this compression method must be opened with StuffIt Expander 9.02 or later on the Macintosh, or StuffIt Expander 9.0 or later on Windows. You can easily make
archives that are backwards compatible by selecting that option in the StuffIt X preferences. The older implementation of BWT will be substituted.
- Best Text Compression (PPM): Prediction by Partial Matching or PPM provides compression that is primarily optimized for text. This compression method works by
"predicting" what the next byte will be based on previous data. For example, if it is predicting the byte following "t" and "h", it will give high probabilities to "e", and
"a".
- Automatic by File Type: This compression method uses a combination of BWT and PPM to achieve better results. If the file being compressed is a mostly text file, it
uses PPM, otherwise it uses BWT.
Note: As BWT (see above) can potentially be used in the creation of archives, StuffIt Expander 9.02 on the Macintosh, and Expander 9.02 on Windows will be required to open
these files. You can easily make archives that are backwards compatible by selecting that option. The older implementation of BWT will be substituted.
Levels and Memory Consumption
Levels and Memory Consumption are variables used to optimize performance (i.e.: compression speed vs. expansion speed vs. compressed
size) for a particular set of data.
Levels: Levels generally set "how hard" each method tries to compress. In LZ, levels 1-9 generally correspond to gzip's compression levels. The higher the
number the harder it tries to find a match (more compression, but slower). In the "prediction" algorithm, PPM, the level corresponds to how many previous bytes to use when
making the prediction.
Memory Consumption: Also known as "extents", Memory Consumption has a direct relationship to how much memory is used. In LZ, the extent sets how far back to look for
a match. In PPM, extent sets how much memory to use for storing the prediction information.
Encryption Method
StuffIt X archives can be created with encryption. There are 4 compression methods supported:
-
1=RC4 - Supports up to 512bit key lengths.
-
2=DES - Supports to 64bit key lengths
-
3=BlowFish - Supports up to 448bit key lengths
-
4=AES - Supports up to 256bit key lengths
Error Correction
StuffIt X archives can be created with Error Correction. Adding error correction code to an archive will increase its size, but its availability allows the StuffIt Engine to
reconstruct data damaged as the result of bad media or transfer errors during the decode phase. You can vary the amount of error correction code applied to an archive during
the encode phase. The more error correction you add, the larger the archive will become. But more error correction also adds the ability to repair larger disasters. It is, of
course, possible to have large enough damage that even error correction will not be able to save the entire contents of the archive. The range of values supported are as
follows:
- 1/128 of a block (1% Overhead)
- 1/64 of a block (3% Overhead)
- 1/32 of a block (6% Overhead)
- 1/16 of a block (14% Overhead)
- 1/8 of a block (33% Overhead)
Text Encoding
StuffIt X archives can be converted to ASCII text format. Three text encoding methods are available, Base 64 (-L 1), Base 85 (-L 2) and Base 222 (-L 3). The levels of
available text encoding determine how much of the full ACSII character set will be used to encode the data. The more characters used, the less size overhead will be imposed
as a result of translating the binary data of the archive into text characters. When sending archives via E-mail, it is best to use Base-64. This uses the fewest characters,
but as a result is the most compatible. Base 222 is a good choice if files are being posted to a news group.
Optimizers
Optimizers are special compression methods designed to handle specific file types. StuffIt includes optimizers designed to compress executables (.exe), disk images created
with Error Code Modeler (ECM) and text files (.txt).
Blockmode
The Blockmode setting determines whether StuffIt will group like files together in order to compress them more efficiently. This allows the compressor to benefit from a
longer history, and to benefit from redundancy that may occur across multiple files.
Depending on the data set, Blockmode can provide a marked improvement in compression rations, and is generally at least as fast as compressing files individually.
Zip Expert Compression Settings
Zip Compression Method
When creating Zip (.zip) archives you can choose between the following compression methods: "Deflate" and "Deflate 64". Deflate is the default that all Zip-compatible
applications use. Not all third-party Zip tools support Deflate 64. If you are going to share Zip files with others, you should use the Deflate option. You can also choose to
use "No compression" when creating Zip archives.
Setting the Compression Level
You can set the compression level for Zip compression between 1 and 9. At level 1 compression will be faster, but the archives will be larger. At level 9 compression will be
slower, but the archives may be smaller. Changing the compression level has no effect on the compatibility of the archive with other Zip-capable programs.
TAR Expert Compression Settings
Tar Compression Method
When creating bzip2 (.tbz), gzip (.tgz), or UNIX Compressed (.tar.Z) Tar archives the "Custom" settings lets you set the compression level. Levels generally set "how hard"
each method tries to compress. You can also choose to use "No compression" when creating Tar archives.
- gzip: You can set the compression level for gzip compression between 1 and 9. At level 1 compression will be very faster, but the archives will be larger. At
level 9 compression will be slower, but the archives may be smaller.
- bzip2: You can set the compression level for bzip2 compression between 1 and 9. At level 1 compression will be very fast, but the archives will be larger. At level
9 compression will be very slow, but the archives will be very small.
- UNIX Compress: You can set the compression level for UNIXCompress compression between 1 and 5. At level 1 compression will be very fast, but the archives will be
larger. At level 5 compression will be very slow, but the archives will be very small.