Adjust LZ4F block size

This commit is contained in:
topjohnwu 2019-02-21 00:52:47 -05:00
parent 0f92d1de1b
commit f28bd1972f
2 changed files with 3 additions and 2 deletions

View File

@ -410,7 +410,7 @@ bool LZ4FEncoder::update(const void *in, size_t size) {
auto inbuf = (const uint8_t *) in;
size_t read, write;
do {
read = size > CHUNK ? CHUNK : size;
read = size > BLOCK_SZ ? BLOCK_SZ : size;
write = LZ4F_compressUpdate(ctx, outbuf, outCapacity, inbuf, read, nullptr);
if (LZ4F_isError(write)) {
LOGW("LZ4 encode error: %s\n", LZ4F_getErrorName(write));
@ -442,7 +442,7 @@ void LZ4FEncoder::write_header() {
.contentChecksumFlag = LZ4F_contentChecksumEnabled
}
};
outCapacity = LZ4F_compressBound(CHUNK, &prefs);
outCapacity = LZ4F_compressBound(BLOCK_SZ, &prefs);
outbuf = new uint8_t[outCapacity];
size_t write = LZ4F_compressBegin(ctx, outbuf, outCapacity, &prefs);
total += write;

View File

@ -140,6 +140,7 @@ public:
uint64_t finalize() override;
private:
static constexpr size_t BLOCK_SZ = 1 << 22;
LZ4F_compressionContext_t ctx;
uint8_t *outbuf;
size_t outCapacity;