|
7d34bc8e98
|
Optimize memory usage of insert© commands
|
2019-03-11 09:27:53 +01:00 |
|
|
64d19061b2
|
Add a dummy MarkedBitReader to allow disabling markers
|
2019-03-11 09:16:08 +01:00 |
|
|
dd4d973e57
|
Make BitReader.Index an integer (BitStream was already limited to 256 MB)
|
2019-03-11 09:01:18 +01:00 |
|
|
be32999273
|
Update C# version to latest (currently 7.3)
|
2019-03-11 08:40:51 +01:00 |
|
|
360ed52eba
|
Fix literal context modes breaking across meta-block boundaries
|
2019-03-11 06:19:53 +01:00 |
|
|
d8746572d4
|
Add a way to construct insert© length codes from length values w/ unit tests
|
2019-03-09 03:36:41 +01:00 |
|
|
ab05269704
|
Add Range class for inclusive integer ranges
|
2019-03-09 03:30:51 +01:00 |
|
|
a46cb9457f
|
Remove unused methods from Category and HuffmanNode
|
2019-03-09 03:16:14 +01:00 |
|
|
607cfeba64
|
Include category in BlockTypeInfo to refactor serialization contexts
|
2019-03-09 03:07:37 +01:00 |
|
|
f7c8e203a9
|
Update to .NET Standard 2.0
|
2019-03-09 02:39:44 +01:00 |
|
|
b08283a8db
|
Improve markers for complex Huffman trees
|
2019-03-09 01:22:58 +01:00 |
|
|
f98f386b4c
|
Add MarkedBitReader.ReadValue w/ huffman tree and value mapper parameters
|
2019-03-09 01:22:44 +01:00 |
|
|
285612a1bd
|
Cleanup unused methods and imports
|
2019-03-07 02:55:48 +01:00 |
|
|
cce96a2567
|
Fix massive performance issues with MarkerNode
|
2019-03-06 12:51:50 +01:00 |
|
|
95acb299e1
|
Implement repeat/skip codes in complex Huffman trees
|
2019-03-04 17:34:41 +01:00 |
|
|
5a6f4b2ede
|
Implement encoding of RLE and IMTF in Brotli context maps
|
2019-03-04 11:57:30 +01:00 |
|
|
3d511172a7
|
Implement markers for all Brotli deserializers
|
2019-03-03 19:53:42 +01:00 |
|
|
46eb57428c
|
Update ToString (DistanceCode, ComplexLengthCode, HuffmanGenerator.Entry)
|
2019-03-03 19:53:42 +01:00 |
|
|
6e20da13de
|
Enable deserialization with markers in BrotliFileStructure
|
2019-03-03 18:47:00 +01:00 |
|
|
7044313e04
|
Add MarkedBitReader and MarkedBitSerializer w/ a few marker types
|
2019-03-03 18:47:00 +01:00 |
|
|
07d96290b7
|
Add Literal to represent literal bytes
|
2019-03-03 17:27:27 +01:00 |
|
|
03c5f040f6
|
Redo all Equals/GetHashCode/ToString & add a few missing ones
|
2019-03-02 11:02:36 +01:00 |
|
|
2c251eb4be
|
Add a basic marker node system
|
2019-02-25 15:49:23 +01:00 |
|
|
577786223e
|
Allow BitReader to be wrapped and extended
|
2019-02-08 10:52:07 +01:00 |
|
|
86e25692b8
|
Implement Brotli compressed meta-block contents and insert© command serialization
|
2019-02-08 10:52:07 +01:00 |
|
|
cf11a7c0f1
|
Implement Brotli block-switch command serialization & block tracking
|
2019-02-08 10:52:07 +01:00 |
|
|
5ffb4bf0be
|
Implement Brotli compressed meta-block header serialization
|
2019-02-08 10:52:07 +01:00 |
|
|
a7b6d7047d
|
Implement Brotli block type and block length code serialization
|
2019-02-08 09:24:51 +01:00 |
|
|
66b8795135
|
Reassign ISLAST bit on meta-blocks after modifying their structure
|
2019-02-07 02:01:10 +01:00 |
|
|
dcb2f9c99d
|
Add AnyCPU because Visual Studio still can't figure out 64bit UserControls
|
2019-02-07 01:53:13 +01:00 |
|
|
f3295167b8
|
Implement basic serialization for Brotli context maps
|
2018-12-29 02:53:45 +01:00 |
|
|
f81568d95a
|
Make AlphabetSize.BitsPerSymbol return a byte & add default max tree depth constant
|
2018-12-29 02:48:38 +01:00 |
|
|
5d1823acb0
|
Implement Brotli distance code and distance value serialization
|
2018-12-28 22:49:01 +01:00 |
|
|
f23359ccd5
|
Implement Brotli insert© length code alphabet and length serialization
|
2018-12-15 02:20:46 +01:00 |
|
|
791f31e2d9
|
Implement basic serialization for Brotli Huffman trees w/ unit tests
|
2018-12-15 02:01:23 +01:00 |
|
|
0add08098e
|
Implement limited-depth Huffman tree generation from frequency map w/ unit tests
|
2018-12-14 21:46:03 +01:00 |
|
|
693109a90a
|
Enforce symbol order when genering Huffman trees from bit counts
|
2018-12-14 21:45:44 +01:00 |
|
|
a8dcf45861
|
Add utilities for Brotli insert© command code categories
|
2018-12-14 18:36:58 +01:00 |
|
|
b3d81c67f1
|
Add PriorityQueue
|
2018-12-14 11:55:22 +01:00 |
|
|
24efbdfe74
|
Fix extra bit when writing padded empty meta-block header
|
2018-12-14 06:04:16 +01:00 |
|
|
895414df2d
|
Fix BitStream getting misaligned when adding many whole bytes & fix typo
|
2018-12-13 22:29:28 +01:00 |
|
|
4ce1554e4b
|
Fix missing bit when writing compressed meta-block header
|
2018-12-13 14:39:09 +01:00 |
|
|
a3e4983bc5
|
Implement Move-to-front & inverse transformation w/ unit tests
|
2018-12-12 23:05:23 +01:00 |
|
|
235f3684a3
|
Fix BitStream.Add causing every 63rd bit to be zero w/ new unit tests
|
2018-12-06 08:00:35 +01:00 |
|
|
9dcacebfb7
|
Finish implementing global (de)compression state
|
2018-12-06 07:07:50 +01:00 |
|
|
6b98e1c2c3
|
Add default Brotli dictionary file as an embedded resource
|
2018-12-04 17:24:48 +01:00 |
|
|
8610d6d1cf
|
Add IDictionarySource implementation that can take any Stream
|
2018-12-04 17:21:51 +01:00 |
|
|
db1bc5ac48
|
Add BitWriter method that takes a BitStream w/ unit tests
|
2018-12-04 16:06:15 +01:00 |
|
|
54fe939444
|
Add default Brotli dictionary format and transformations
|
2018-12-02 16:17:45 +01:00 |
|
|
61bea5022f
|
Implement bit depth format for unpacking words in a Brotli dictionary
|
2018-12-02 14:14:21 +01:00 |
|
|
dc63c1355d
|
Implement file and memory representations of a Brotli dictionary
|
2018-12-02 14:13:22 +01:00 |
|
|
133b9920a6
|
Add classes and interfaces to describe a Brotli dictionary
|
2018-12-02 14:12:12 +01:00 |
|
|
359245c652
|
Implement Brotli dictionary transformation rules and utilities
|
2018-12-02 13:33:42 +01:00 |
|
|
286f476cfb
|
Add AlphabetSize utility w/ unit tests
|
2018-11-23 07:45:01 +01:00 |
|
|
294ae2b5a8
|
Add HuffmanNode.SymbolCount property w/ new and updated unit tests
|
2018-11-22 04:35:44 +01:00 |
|
|
6e3a50d9a6
|
Add fixed-size RingBuffer w/ unit tests
|
2018-11-21 18:02:49 +01:00 |
|
|
3fe5a82239
|
Implement Brotli literal context mode serialization
|
2018-11-21 17:01:08 +01:00 |
|
|
87d65a8b6f
|
Include window size in the global (de)compression state
|
2018-11-21 16:36:13 +01:00 |
|
|
1696b86ba5
|
Add a utility for BitSerializer to specify no serialization context without nulls
|
2018-11-21 16:25:28 +01:00 |
|
|
8d883a9b30
|
Add utility for generating Huffman trees w/ unit tests
|
2018-11-19 13:09:52 +01:00 |
|
|
ed2dd4ba85
|
Implement a Huffman tree structure w/ unit tests
|
2018-11-19 01:30:52 +01:00 |
|
|
422def48fa
|
Implement Brotli distance parameter serialization
|
2018-11-18 18:55:24 +01:00 |
|
|
78d93ba9fd
|
Implement Brotli variable length 1-11 bit code serialization
|
2018-11-18 01:32:11 +01:00 |
|
|
c6714adce5
|
Fix compiler configuration for BrotliLib project
|
2018-11-18 00:43:55 +01:00 |
|
|
f4403b555f
|
Rewrite internals of BitStream to improve performance & fix some tests
|
2018-11-18 00:43:55 +01:00 |
|
|
3f60b386bf
|
Optimize inserting bytes into a BitStream
|
2018-11-17 19:05:11 +01:00 |
|
|
54c68402bb
|
Implement a Brotli encoder that only generates uncompressed meta-blocks
|
2018-11-17 16:36:04 +01:00 |
|
|
758d437b23
|
Add interface to use for Brotli encoders
|
2018-11-17 16:23:14 +01:00 |
|
|
95fd6d3f9a
|
Implement empty meta-block w/ skipped bytes serialization
|
2018-11-17 13:13:23 +01:00 |
|
|
675008182f
|
Implement uncompressed meta-block serialization
|
2018-11-17 13:13:23 +01:00 |
|
|
bf78ed23d3
|
Add a way to handle Brotli state and generate output during serialization
|
2018-11-16 19:37:57 +01:00 |
|
|
74270f7276
|
Add BrotliFileStructure class to describe a Brotli-compressed file
|
2018-11-16 16:38:44 +01:00 |
|
|
a3f666b479
|
Begin implementing meta-block serialization
|
2018-11-16 16:31:35 +01:00 |
|
|
be29857899
|
Add base classes for different types of meta-blocks
|
2018-11-16 15:22:48 +01:00 |
|
|
abff015bcf
|
Implement Brotli meta-block data length serialization
|
2018-11-16 14:47:14 +01:00 |
|
|
dd4d34ef0c
|
Implement Brotli window size serialization
|
2018-11-16 14:11:29 +01:00 |
|
|
2b94885e76
|
Add a common interface for converting objects to or from bits
|
2018-11-16 11:35:11 +01:00 |
|
|
4054df4cd5
|
Add BitWriter w/ unit tests
|
2018-11-16 00:44:56 +01:00 |
|
|
c9bc34a216
|
Allow combining contents of two BitStream objects
|
2018-11-15 21:46:37 +01:00 |
|
|
97fdcfc7e6
|
Add BitReader w/ unit tests
|
2018-11-15 21:38:03 +01:00 |
|
|
c5fa6fcc37
|
Add BitStream w/ unit tests
|
2018-11-15 11:49:31 +01:00 |
|
|
787cbf19e8
|
Add library project
|
2018-11-14 21:19:25 +01:00 |
|