snovvcrash / libcoders

File compression library | Shennon | Fano | Huffman | Bigram Huffman | Adaptive Huffman | Arithmetic coding

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

libcoders

Simple library that lets you compress files (6 algorithms available: Shennon, Fano, Huffman, Bigram Huffman, Adaptive Huffman and Arithmetic coding).

Made for educational purposes.

How-to-use:

1. Build, run and get help

  • Build

    $ make default
    
  • Help

    $ ./libcoders -h
    
  • Usage example

    $ ./libcoders -c -i input_file.txt -o encoded_file -m shennon
    $ ./libcoders -d -i encoded_file -o decoded_file.txt -m shennon
    

2. Clean project

  • Clean

    $ make clean
    

GUI

There is also a GUI version of this project available here.

About

File compression library | Shennon | Fano | Huffman | Bigram Huffman | Adaptive Huffman | Arithmetic coding

License:GNU General Public License v3.0


Languages

Language:C++ 97.2%Language:Makefile 2.8%