Liblzss is an small library for inflating and deflating LZSS (Lempel, Ziv, Storer, Szymanski) buffers.
The LZSS format is originally described in a paper titled "Data Compression via Textual Substitution" published in Journal of the ACM, 29(4):928-951, 1982 by J.A. Storer and T.G. Szymanski.
Install and update using pip
:
$ pip install -U lzsslib
The following example shows how to decompress a file using default options.
from pathlib import Path
from lzsslib.decompress import LzssDecompressor
# Create a decompressor object with default options
decomp = LzssDecompressor()
# Open an input and output files
fin = Path('input.lzss').open(mode='rb')
fout = Path('output.bin').open(mode='wb')
# Read the input, decompress and write
while (buffer := fin.read(1024)):
out = decomp.decompress(buffer, remaining_size)
fout.write(out)
# Ensure output is written and close
fout.flush()
fin.close()
fout.close()
- PyPI Releases: https://pypi.org/project/lzsslib/
- Source Code: https://github.com/antoniovazquezblanco/lzsslib
- Issue Tracker: https://github.com/antoniovazquezblanco/lzsslib/issues