user 16d38111e1 d05 Права на файлы 2 yıl önce
..
matchfinder 62881bab8e d06 Затаскивание во внутренний пакет 2 yıl önce
LICENSE 16d38111e1 d05 Права на файлы 2 yıl önce
README.md 16d38111e1 d05 Права на файлы 2 yıl önce
backward_references.go 16d38111e1 d05 Права на файлы 2 yıl önce
backward_references_hq.go 16d38111e1 d05 Права на файлы 2 yıl önce
bit_cost.go 16d38111e1 d05 Права на файлы 2 yıl önce
bit_reader.go 16d38111e1 d05 Права на файлы 2 yıl önce
bitwriter.go 62881bab8e d06 Затаскивание во внутренний пакет 2 yıl önce
block_splitter.go 16d38111e1 d05 Права на файлы 2 yıl önce
block_splitter_command.go 16d38111e1 d05 Права на файлы 2 yıl önce
block_splitter_distance.go 16d38111e1 d05 Права на файлы 2 yıl önce
block_splitter_literal.go 16d38111e1 d05 Права на файлы 2 yıl önce
brotli_bit_stream.go 16d38111e1 d05 Права на файлы 2 yıl önce
cluster.go 16d38111e1 d05 Права на файлы 2 yıl önce
cluster_command.go 16d38111e1 d05 Права на файлы 2 yıl önce
cluster_distance.go 16d38111e1 d05 Права на файлы 2 yıl önce
cluster_literal.go 16d38111e1 d05 Права на файлы 2 yıl önce
command.go 16d38111e1 d05 Права на файлы 2 yıl önce
compress_fragment.go 16d38111e1 d05 Права на файлы 2 yıl önce
compress_fragment_two_pass.go 16d38111e1 d05 Права на файлы 2 yıl önce
constants.go 16d38111e1 d05 Права на файлы 2 yıl önce
context.go 16d38111e1 d05 Права на файлы 2 yıl önce
decode.go 16d38111e1 d05 Права на файлы 2 yıl önce
dictionary.go 16d38111e1 d05 Права на файлы 2 yıl önce
dictionary_hash.go 16d38111e1 d05 Права на файлы 2 yıl önce
encode.go 16d38111e1 d05 Права на файлы 2 yıl önce
encoder.go 62881bab8e d06 Затаскивание во внутренний пакет 2 yıl önce
encoder_dict.go 16d38111e1 d05 Права на файлы 2 yıl önce
entropy_encode.go 16d38111e1 d05 Права на файлы 2 yıl önce
entropy_encode_static.go 16d38111e1 d05 Права на файлы 2 yıl önce
fast_log.go 16d38111e1 d05 Права на файлы 2 yıl önce
find_match_length.go 16d38111e1 d05 Права на файлы 2 yıl önce
h10.go 16d38111e1 d05 Права на файлы 2 yıl önce
h5.go 16d38111e1 d05 Права на файлы 2 yıl önce
h6.go 16d38111e1 d05 Права на файлы 2 yıl önce
hash.go 16d38111e1 d05 Права на файлы 2 yıl önce
hash_composite.go 16d38111e1 d05 Права на файлы 2 yıl önce
hash_forgetful_chain.go 16d38111e1 d05 Права на файлы 2 yıl önce
hash_longest_match_quickly.go 16d38111e1 d05 Права на файлы 2 yıl önce
hash_rolling.go 16d38111e1 d05 Права на файлы 2 yıl önce
histogram.go 16d38111e1 d05 Права на файлы 2 yıl önce
http.go 16d38111e1 d05 Права на файлы 2 yıl önce
huffman.go 16d38111e1 d05 Права на файлы 2 yıl önce
literal_cost.go 16d38111e1 d05 Права на файлы 2 yıl önce
memory.go 16d38111e1 d05 Права на файлы 2 yıl önce
metablock.go 16d38111e1 d05 Права на файлы 2 yıl önce
metablock_command.go 16d38111e1 d05 Права на файлы 2 yıl önce
metablock_distance.go 16d38111e1 d05 Права на файлы 2 yıl önce
metablock_literal.go 16d38111e1 d05 Права на файлы 2 yıl önce
params.go 16d38111e1 d05 Права на файлы 2 yıl önce
platform.go 16d38111e1 d05 Права на файлы 2 yıl önce
prefix.go 16d38111e1 d05 Права на файлы 2 yıl önce
prefix_dec.go 16d38111e1 d05 Права на файлы 2 yıl önce
quality.go 16d38111e1 d05 Права на файлы 2 yıl önce
reader.go 16d38111e1 d05 Права на файлы 2 yıl önce
ringbuffer.go 16d38111e1 d05 Права на файлы 2 yıl önce
state.go 16d38111e1 d05 Права на файлы 2 yıl önce
static_dict.go 16d38111e1 d05 Права на файлы 2 yıl önce
static_dict_lut.go 16d38111e1 d05 Права на файлы 2 yıl önce
symbol_list.go 16d38111e1 d05 Права на файлы 2 yıl önce
transform.go 16d38111e1 d05 Права на файлы 2 yıl önce
utf8_util.go 16d38111e1 d05 Права на файлы 2 yıl önce
util.go 16d38111e1 d05 Права на файлы 2 yıl önce
write_bits.go 16d38111e1 d05 Права на файлы 2 yıl önce
writer.go 16d38111e1 d05 Права на файлы 2 yıl önce

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.