lijian d8d1e9afb9 更新api服务 1 年之前
..
matchfinder d8d1e9afb9 更新api服务 1 年之前
LICENSE 48c2e0e9f9 依赖更新为 go mod 1 年之前
README.md d8d1e9afb9 更新api服务 1 年之前
backward_references.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
backward_references_hq.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
bit_cost.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
bit_reader.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
bitwriter.go d8d1e9afb9 更新api服务 1 年之前
block_splitter.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
block_splitter_command.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
block_splitter_distance.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
block_splitter_literal.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
brotli_bit_stream.go d8d1e9afb9 更新api服务 1 年之前
cluster.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
cluster_command.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
cluster_distance.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
cluster_literal.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
command.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
compress_fragment.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
compress_fragment_two_pass.go d8d1e9afb9 更新api服务 1 年之前
constants.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
context.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
decode.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
dictionary.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
dictionary_hash.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
encode.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
encoder.go d8d1e9afb9 更新api服务 1 年之前
encoder_dict.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
entropy_encode.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
entropy_encode_static.go d8d1e9afb9 更新api服务 1 年之前
fast_log.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
find_match_length.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
h10.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
h5.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
h6.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
hash.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
hash_composite.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
hash_forgetful_chain.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
hash_longest_match_quickly.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
hash_rolling.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
histogram.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
http.go d8d1e9afb9 更新api服务 1 年之前
huffman.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
literal_cost.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
memory.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
metablock.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
metablock_command.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
metablock_distance.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
metablock_literal.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
params.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
platform.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
prefix.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
prefix_dec.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
quality.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
reader.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
ringbuffer.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
state.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
static_dict.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
static_dict_lut.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
symbol_list.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
transform.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
utf8_util.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
util.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
write_bits.go 48c2e0e9f9 依赖更新为 go mod 1 年之前
writer.go d8d1e9afb9 更新api服务 1 年之前

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.