TU DOrtmund lossless COMPression framework
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
cmakemodules
docs
etc
include
src
test
www
.gitignore
.travis.yml
CMakeLists.txt
COPYING
LICENSE
README.md
tudocomp.svg

README.md

tudocomp

The Technical University of DOrtmund COMPression Framework (tudocomp) is a lossless compression framework with the aim to support and facilitate the implementation of novel compression algorithms. It already comprises a range of standard data compression and encoding algorithms. These can be mixed and parameterized with the following uses in mind:

  • Baseline implementations of well-known compression schemes.
  • Detailed benchmarking and comparison of compression and encoding algorithms.
  • Easy integration of new algorithm implementations.

The framework offers a solid and extensible base for new implementations. Its design is focused on modularity and interchangeability. This way, the user can combine algorithms to find the optimal compression strategy for a given input. The framework gives this opportunity while creating as little performance overhead as possible.

Dependencies

tudocomp's CMake build process will either find external dependencies on the system if they have been properly installed, or automatically download and build them from their official repositories in case they cannot be found. In that regard, a proper installation of the dependencies is not required.

Said external dependencies are the following:

Additionally, the tests require Google Test (1.7.0 or later).

Documentation Build Requirements

For building the documentation, the following tools need to be installed:

  • LaTeX (specifically the pdflatex component)
  • Doxygen (1.8 or later).
  • Pandoc (1.19 or later).

Windows Support

While tudocomp has no explicit support Windows / Microsoft Visual C++, it is possible to use the Bash on Ubuntu on Windows with next to no feature limitations. However, note that the comparison tool relies on valgrind, which is not functional in this environment until the Windows 10 Creators Update.

License

The framework is published under the Apache License 2.0