libsquashfs 1.3.2
A new set of tools and libraries for working with SquashFS images
Loading...
Searching...
No Matches
sqfs_compressor_config_t::[struct].opt.xz Struct Reference

Options for the LZMA and XZ (LZMA v2) compressors. More...

Collaboration diagram for sqfs_compressor_config_t::[struct].opt.xz:

Data Fields

sqfs_u32 dict_size
 LZMA dictionary size.
sqfs_u8 lc
 Number of literal context bits.
sqfs_u8 lp
 Number of literal position bits.
sqfs_u8 pb
 Number of position bits.
sqfs_u8 padd0 [9]

Detailed Description

Options for the LZMA and XZ (LZMA v2) compressors.

Definition at line 165 of file compressor.h.

Field Documentation

◆ dict_size

sqfs_u32 dict_size

LZMA dictionary size.

This value must either be a power of two or the sum of two consecutive powers of two.

Default is setting this to the same as the block size.

◆ lc

sqfs_u8 lc

Number of literal context bits.

How many of the highest bits of the previous uncompressed byte to take into account when predicting the bits of the next byte.

The sum lc + lp must be at MOST 4. Default value of lc is 3.

◆ lp

sqfs_u8 lp

Number of literal position bits.

lp affects what kind of alignment in the uncompressed data is assumed when encoding bytes. See pb below for more information about alignment.

The sum lc + lp must be at MOST 4. Default value of lp is 0.

◆ pb

sqfs_u8 pb

Number of position bits.

This is the log2 of the assumed underlying alignment of the input data, i.e. pb=0 means single byte allignment, pb=1 means 16 bit, 2 means 32 bit.

When the alignment is known, setting pb may reduce the file size.

The default value is 2, i.e. 32 bit alignment.


The documentation for this struct was generated from the following files: