Simple encoder and decoder for blurhashes. In large parts inspired by the reference implementation.
- A C++20 compiler, specifically with support for parsing integers via
std::from_chars
,std::numbers::pi_v
and some other smaller features. - The meson build system, if you don't want to embed the library into your project.
Just add blurhash.h
and blurhash.cpp
to your project. Use blurhash::encode
for encoding and blurhash::decode
for decoding.
After building, run blurhash
for creating a hash and blurhash2bmp
for decoding a hash. You need to specify the intended components for encoding and the intended dimensions and file name for decoding.
Projects that made this project possible:
- The blurhash project for creating and documenting the algorithm and reference implementations.
- The stb project for creating the image encoder and decoder used in the command line tools.
- Doctest for providing the easy to use testing framework.