IO::Compress::Brotli(3pm) | User Contributed Perl Documentation | IO::Compress::Brotli(3pm) |
IO::Compress::Brotli - Write Brotli buffers/streams
use IO::Compress::Brotli; # compress a buffer my $encoded = bro $encoded; # compress a stream my $bro = IO::Compress::Brotli->create; while(have_input()) { my $block = get_input_block(); my $encoded_block = $bro->compress($block); handle_output_block($encoded_block); } # Need to finish the steam handle_output_block($bro->finish());
IO::Compress::Brotli is a module that compressed Brotli buffers and streams. Despite its name, it is not a subclass of IO::Compress::Base and does not implement its interface. This will be rectified in a future release.
If you have the whole buffer in a Perl scalar use the bro function.
Exported by default.
If you want to process the data in blocks use the object oriented interface. The available methods are:
Once finish is called, the encoder cannot be used to compress any more content.
NOTE: Calling finish is required, or the output might remain unflushed, and the be missing termination marks.
Brotli Compressed Data Format Internet-Draft: <https://www.ietf.org/id/draft-alakuijala-brotli-08.txt>
Brotli source code: <https://github.com/google/brotli/>
Marius Gavrilescu, <marius@ieval.ro>
The encoder bindings, modernisation of the decoder bindings and a clean up of the overall project were contributed by:
Copyright (C) 2015-2018 by Marius Gavrilescu
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.20.2 or, at your option, any later version of Perl 5 you may have available.
2024-03-31 | perl v5.38.2 |