aufdj / compression-algorithms

Collection of Rust compression algorithms

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

compression-algorithms

A collection of Rust compression algorithms.

LZ Family Algorithms

  • lz77: Sliding window compression.

  • lzw: Dictionary compression.

  • flzp1: Byte-oriented LZP compression.

Arithmetic Encoders

  • fpaq1: Indirect context modeling arithmetic encoder.

  • lpaq11: Context mixing arithmetic encoder.

Other

  • huffman: Static Huffman coding.

  • bwt: Burrows-Wheeler Transform.

Usage

    Usage: [PROGRAM_NAME] [ALGORITHM] [MODE] [INPUT] [OUTPUT]

    ALGORITHM:
        -lz77     LZ77 
        -lzw      LZW
        -flzp     LZP
        -fpaq     Adaptive arithmetic encoder
        -lpaq1    Context mixing arithmetic encoder
        -huffman  Static Huffman coding
        -bwt      Burrows-Wheeler transform

    MODE:
        -c        Compress
        -d        Decompress

    EXAMPLES:
        Compress C:/foo with fpaq and save to C:/bar:

        program_name -fpaq -c C:/foo C:/bar

Footnotes

  1. Created by Matt Mahoney. 2 3

About

Collection of Rust compression algorithms

License:GNU General Public License v3.0


Languages

Language:Rust 100.0%