mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-28 14:38:21 +01:00
Rebase default encoding settings.
Updated histo_bits to 3 from 4 and changed the quality threshold for inner loop for HashChainFindCopy. Impact: 0.5%-0.8% better bpp with 15%-20% hit on encoding throughput at default encoding settings. Change-Id: I316ef88403148b1e19036fa0817d944eb0301255
This commit is contained in:
parent
e2ffe446bd
commit
0424b1ef3b
@ -148,7 +148,7 @@ static int HashChainFindCopy(const HashChain* const p,
|
|||||||
const uint64_t hash_code = GetPixPairHash64(&argb[index]);
|
const uint64_t hash_code = GetPixPairHash64(&argb[index]);
|
||||||
int prev_length = 0;
|
int prev_length = 0;
|
||||||
int64_t best_val = 0;
|
int64_t best_val = 0;
|
||||||
const int iter_min_mult = (quality < 50) ? 2 : (quality <= 75) ? 4 : 8;
|
const int iter_min_mult = (quality < 50) ? 2 : (quality < 75) ? 4 : 8;
|
||||||
const int iter_min = -quality * iter_min_mult;
|
const int iter_min = -quality * iter_min_mult;
|
||||||
int iter_cnt = 10 + (quality >> 1);
|
int iter_cnt = 10 + (quality >> 1);
|
||||||
const int min_pos = (index > WINDOW_SIZE) ? index - WINDOW_SIZE : 0;
|
const int min_pos = (index > WINDOW_SIZE) ? index - WINDOW_SIZE : 0;
|
||||||
|
@ -826,7 +826,7 @@ static int GetHistoBits(const WebPConfig* const config,
|
|||||||
const int height = pic->height;
|
const int height = pic->height;
|
||||||
const size_t hist_size = sizeof(VP8LHistogram);
|
const size_t hist_size = sizeof(VP8LHistogram);
|
||||||
// Make tile size a function of encoding method (Range: 0 to 6).
|
// Make tile size a function of encoding method (Range: 0 to 6).
|
||||||
int histo_bits = 8 - config->method;
|
int histo_bits = 7 - config->method;
|
||||||
while (1) {
|
while (1) {
|
||||||
const size_t huff_image_size = VP8LSubSampleSize(width, histo_bits) *
|
const size_t huff_image_size = VP8LSubSampleSize(width, histo_bits) *
|
||||||
VP8LSubSampleSize(height, histo_bits) *
|
VP8LSubSampleSize(height, histo_bits) *
|
||||||
|
Loading…
Reference in New Issue
Block a user