Skip to content
Snippets Groups Projects
Commit 8fef2674 authored by Scott Vokes's avatar Scott Vokes
Browse files

Add basic setup notes to README.

parent 6cddb1dd
No related branches found
No related tags found
Loading
heatshrink, a data compression/decompression library for embedded/real-time systems.
This is based on [LZSS], since it's particularly suitable for
compression in small amounts of memory.
There is a standalone command-line program, `heatshrink`, but the
encoder and decoder can also be used as libraries, independent of each
other. To do so, copy heatshrink.h, `heatshrink_config.h`, and either
`heatshrink_encoder.c` or `heatshrink_decoder.c` (and their respective
header) into your project.
Dynamic allocation is used by default, but in an embedded context, you
probably want to statically allocate the encoder/decoder. Set
`HEATSHRINK_DYNAMIC_ALLOC` to 0 in `heatshrink_config.h`.
heatshrink is based on [LZSS], since it's particularly suitable for
compression in small amounts of memory. It can use an optional index to
make compression faster, but otherwise can run in under 100 bytes of
memory.
For more information, see the [blog post] for an overview, and the
`heatshrink_encoder.h` / `heatshrink_decoder.h` header files for API
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment