SVI a1a08d78c3 SVI Перемещение vor 10 Monaten
..
matchfinder a1a08d78c3 SVI Перемещение vor 10 Monaten
.gitignore a1a08d78c3 SVI Перемещение vor 10 Monaten
LICENSE a1a08d78c3 SVI Перемещение vor 10 Monaten
README.md a1a08d78c3 SVI Перемещение vor 10 Monaten
backward_references.go a1a08d78c3 SVI Перемещение vor 10 Monaten
backward_references_hq.go a1a08d78c3 SVI Перемещение vor 10 Monaten
bit_cost.go a1a08d78c3 SVI Перемещение vor 10 Monaten
bit_reader.go a1a08d78c3 SVI Перемещение vor 10 Monaten
bitwriter.go a1a08d78c3 SVI Перемещение vor 10 Monaten
block_splitter.go a1a08d78c3 SVI Перемещение vor 10 Monaten
block_splitter_command.go a1a08d78c3 SVI Перемещение vor 10 Monaten
block_splitter_distance.go a1a08d78c3 SVI Перемещение vor 10 Monaten
block_splitter_literal.go a1a08d78c3 SVI Перемещение vor 10 Monaten
brotli_bit_stream.go a1a08d78c3 SVI Перемещение vor 10 Monaten
cluster.go a1a08d78c3 SVI Перемещение vor 10 Monaten
cluster_command.go a1a08d78c3 SVI Перемещение vor 10 Monaten
cluster_distance.go a1a08d78c3 SVI Перемещение vor 10 Monaten
cluster_literal.go a1a08d78c3 SVI Перемещение vor 10 Monaten
command.go a1a08d78c3 SVI Перемещение vor 10 Monaten
compress_fragment.go a1a08d78c3 SVI Перемещение vor 10 Monaten
compress_fragment_two_pass.go a1a08d78c3 SVI Перемещение vor 10 Monaten
constants.go a1a08d78c3 SVI Перемещение vor 10 Monaten
context.go a1a08d78c3 SVI Перемещение vor 10 Monaten
decode.go a1a08d78c3 SVI Перемещение vor 10 Monaten
dictionary.go a1a08d78c3 SVI Перемещение vor 10 Monaten
dictionary_hash.go a1a08d78c3 SVI Перемещение vor 10 Monaten
encode.go a1a08d78c3 SVI Перемещение vor 10 Monaten
encoder.go a1a08d78c3 SVI Перемещение vor 10 Monaten
encoder_dict.go a1a08d78c3 SVI Перемещение vor 10 Monaten
entropy_encode.go a1a08d78c3 SVI Перемещение vor 10 Monaten
entropy_encode_static.go a1a08d78c3 SVI Перемещение vor 10 Monaten
fast_log.go a1a08d78c3 SVI Перемещение vor 10 Monaten
find_match_length.go a1a08d78c3 SVI Перемещение vor 10 Monaten
h10.go a1a08d78c3 SVI Перемещение vor 10 Monaten
h5.go a1a08d78c3 SVI Перемещение vor 10 Monaten
h6.go a1a08d78c3 SVI Перемещение vor 10 Monaten
hash.go a1a08d78c3 SVI Перемещение vor 10 Monaten
hash_composite.go a1a08d78c3 SVI Перемещение vor 10 Monaten
hash_forgetful_chain.go a1a08d78c3 SVI Перемещение vor 10 Monaten
hash_longest_match_quickly.go a1a08d78c3 SVI Перемещение vor 10 Monaten
hash_rolling.go a1a08d78c3 SVI Перемещение vor 10 Monaten
histogram.go a1a08d78c3 SVI Перемещение vor 10 Monaten
http.go a1a08d78c3 SVI Перемещение vor 10 Monaten
huffman.go a1a08d78c3 SVI Перемещение vor 10 Monaten
literal_cost.go a1a08d78c3 SVI Перемещение vor 10 Monaten
memory.go a1a08d78c3 SVI Перемещение vor 10 Monaten
metablock.go a1a08d78c3 SVI Перемещение vor 10 Monaten
metablock_command.go a1a08d78c3 SVI Перемещение vor 10 Monaten
metablock_distance.go a1a08d78c3 SVI Перемещение vor 10 Monaten
metablock_literal.go a1a08d78c3 SVI Перемещение vor 10 Monaten
params.go a1a08d78c3 SVI Перемещение vor 10 Monaten
platform.go a1a08d78c3 SVI Перемещение vor 10 Monaten
prefix.go a1a08d78c3 SVI Перемещение vor 10 Monaten
prefix_dec.go a1a08d78c3 SVI Перемещение vor 10 Monaten
quality.go a1a08d78c3 SVI Перемещение vor 10 Monaten
reader.go a1a08d78c3 SVI Перемещение vor 10 Monaten
ringbuffer.go a1a08d78c3 SVI Перемещение vor 10 Monaten
state.go a1a08d78c3 SVI Перемещение vor 10 Monaten
static_dict.go a1a08d78c3 SVI Перемещение vor 10 Monaten
static_dict_lut.go a1a08d78c3 SVI Перемещение vor 10 Monaten
symbol_list.go a1a08d78c3 SVI Перемещение vor 10 Monaten
transform.go a1a08d78c3 SVI Перемещение vor 10 Monaten
utf8_util.go a1a08d78c3 SVI Перемещение vor 10 Monaten
util.go a1a08d78c3 SVI Перемещение vor 10 Monaten
write_bits.go a1a08d78c3 SVI Перемещение vor 10 Monaten
writer.go a1a08d78c3 SVI Перемещение vor 10 Monaten

README.md

This package is a brotli compressor and decompressor implemented in Go. It was translated from the reference implementation (https://github.com/google/brotli) with the c2go tool at https://github.com/andybalholm/c2go.

I have been working on new compression algorithms (not translated from C) in the matchfinder package. You can use them with the NewWriterV2 function. Currently they give better results than the old implementation (at least for compressing my test file, Newton’s Opticks) on levels 2 to 6.

I am using it in production with https://github.com/andybalholm/redwood.

API documentation is found at https://pkg.go.dev/github.com/andybalholm/brotli?tab=doc.