user 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
..
matchfinder 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
LICENSE 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
README.md 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
backward_references.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
backward_references_hq.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
bit_cost.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
bit_reader.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
bitwriter.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
block_splitter.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
block_splitter_command.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
block_splitter_distance.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
block_splitter_literal.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
brotli_bit_stream.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
cluster.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
cluster_command.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
cluster_distance.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
cluster_literal.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
command.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
compress_fragment.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
compress_fragment_two_pass.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
constants.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
context.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
decode.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
dictionary.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
dictionary_hash.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
encode.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
encoder.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
encoder_dict.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
entropy_encode.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
entropy_encode_static.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
fast_log.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
find_match_length.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
h10.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
h5.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
h6.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
hash.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
hash_composite.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
hash_forgetful_chain.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
hash_longest_match_quickly.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
hash_rolling.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
histogram.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
http.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
huffman.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
literal_cost.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
memory.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
metablock.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
metablock_command.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
metablock_distance.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
metablock_literal.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
params.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
platform.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
prefix.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
prefix_dec.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
quality.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
reader.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
ringbuffer.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
state.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
static_dict.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
static_dict_lut.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
symbol_list.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
transform.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
utf8_util.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
util.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
write_bits.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren
writer.go 586b5f4980 d06 Переход на группу проектов vor 2 Jahren

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.