Perl6 Brotli Compression
Provides acces to Brotli compression by means of the perl6 NativeCall API.
Usage
A simple compression/decompression round trip can be written as follows.
use Compress::Brotli;
my Buf $blob = compress("a simple string");
my Buf $buffer = decompress($blob);
say $buffer.decode('UTF-8');
To control the parameters of the brotli compression
an object of class Compress::Brotli::Config
can be passed as an argument to the compress
subroutine.
use Compress::Brotli;
# a low quality text compression
my Config $conf = Config.new(:mode(1),:quality(1),:lgwin(10),:lgblock(0));
my Buf $blob = compress("a simple string",$conf);
Linux, FreeBSD and Mac OSX are tested and supported.
Dependencies
To build brotli the libbrotli project is used.
To succesfully compile libbrotli and the added wrapper library you need:
libtool
, autoconf
, gmake
and automake
.
License
Artistic License 2.0