10#ifndef BROTLI_ENC_QUALITY_H_
11#define BROTLI_ENC_QUALITY_H_
14#include <brotli/encode.h>
17#define FAST_ONE_PASS_COMPRESSION_QUALITY 0
18#define FAST_TWO_PASS_COMPRESSION_QUALITY 1
19#define ZOPFLIFICATION_QUALITY 10
20#define HQ_ZOPFLIFICATION_QUALITY 11
22#define MAX_QUALITY_FOR_STATIC_ENTROPY_CODES 2
23#define MIN_QUALITY_FOR_BLOCK_SPLIT 4
24#define MIN_QUALITY_FOR_NONZERO_DISTANCE_PARAMS 4
25#define MIN_QUALITY_FOR_OPTIMIZE_HISTOGRAMS 4
26#define MIN_QUALITY_FOR_EXTENSIVE_REFERENCE_SEARCH 5
27#define MIN_QUALITY_FOR_CONTEXT_MODELING 5
28#define MIN_QUALITY_FOR_HQ_CONTEXT_MODELING 7
29#define MIN_QUALITY_FOR_HQ_BLOCK_SPLITTING 10
33#define MAX_NUM_DELAYED_SYMBOLS 0x2FFF
41#define MAX_ZOPFLI_LEN_QUALITY_10 150
42#define MAX_ZOPFLI_LEN_QUALITY_11 325
45#define BROTLI_LONG_COPY_QUICK_STEP 16384
56 return params->
quality <= 10 ? 1 : 5;
70 if (params->
lgwin > max_lgwin) params->
lgwin = max_lgwin;
79 lgblock = params->
lgwin;
82 }
else if (lgblock == 0) {
107 return (
size_t)1 << bits;
116static BROTLI_INLINE size_t LiteralSpreeLengthForSparseSearch(
118 return params->
quality < 9 ? 64 : 512;
127 }
else if (params->
quality < 5) {
129 }
else if (params->
lgwin <= 16) {
131 }
else if (params->
size_hint >= (1 << 20) && params->
lgwin >= 19) {
146 if (params->
lgwin > 24) {
153 if (hparams->
type == 3) {
156 if (hparams->
type == 54) {
159 if (hparams->
type == 6) {
#define MAX_ZOPFLI_LEN_QUALITY_10
Definition quality.h:41
#define MAX_QUALITY_FOR_STATIC_ENTROPY_CODES
Definition quality.h:22
#define FAST_ONE_PASS_COMPRESSION_QUALITY
Definition quality.h:17
#define FAST_TWO_PASS_COMPRESSION_QUALITY
Definition quality.h:18
#define MAX_ZOPFLI_LEN_QUALITY_11
Definition quality.h:42
#define MIN_QUALITY_FOR_BLOCK_SPLIT
Definition quality.h:23
#define BROTLI_MIN_INPUT_BLOCK_BITS
Definition encode.h:36
#define BROTLI_MAX_WINDOW_BITS
Definition encode.h:29
#define BROTLI_MIN_QUALITY
Definition encode.h:40
#define BROTLI_MIN_WINDOW_BITS
Definition encode.h:23
#define BROTLI_MAX_QUALITY
Definition encode.h:42
#define BROTLI_MAX_INPUT_BLOCK_BITS
Definition encode.h:38
#define BROTLI_LARGE_MAX_WINDOW_BITS
Definition encode.h:34
BROTLI_BOOL large_window
Definition params.h:40
size_t size_hint
Definition params.h:38
int lgwin
Definition params.h:35
int lgblock
Definition params.h:36
int quality
Definition params.h:34
int hash_len
Definition params.h:19
int num_last_distances_to_check
Definition params.h:20
int type
Definition params.h:16
int block_bits
Definition params.h:18
int bucket_bits
Definition params.h:17
#define BROTLI_FALSE
Definition types.h:53