Skip to main content

Module dcx

Module dcx 

Source
Expand description

.dcx file format — v3 header with CRC-32 integrity.

Layout (32-byte fixed header + variable metadata + compressed data): Bytes 0-3: Magic “DCX\x03” Byte 4: Version (3) Byte 5: Mode (0=Max, 1=Balanced, 2=Fast) Byte 6: Format hint (0-10) Byte 7: Flags (bit 0: has_transform_metadata, bit 1: has_zstd_dictionary, bit 2: metadata is zstd-compressed, bit 3: brotli entropy coder, bit 4: metadata embedded in compressed stream) Bytes 8-15: Original size (u64 LE) Bytes 16-23: Compressed data size (u64 LE) Bytes 24-27: CRC-32 of original data (u32 LE) Bytes 28-31: Transform metadata length (u32 LE) [Transform metadata: variable] [Compressed data]

Structs§

DcxHeader
.dcx file header.

Enums§

FormatHint
Detected or declared file format.
Mode
Compression mode.

Constants§

FLAG_BROTLI
Flag bit 3: payload compressed with brotli instead of zstd.
FLAG_HAS_DICT
Flag bit 1: compressed payload embeds a zstd dictionary (Fast mode).
FLAG_HAS_TRANSFORM
Flag bit 0: transform metadata is present.
FLAG_META_COMPRESSED
Flag bit 2: transform metadata is zstd-compressed.
FLAG_META_EMBEDDED
Flag bit 4: transform metadata is embedded inside the compressed stream. When set, transform_metadata_len in the header is 0 (no separate metadata). The decompressed stream starts with meta_len:u32 LE + raw metadata + preprocessed data.