summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_rd.h
diff options
context:
space:
mode:
Diffstat (limited to 'vp9/encoder/vp9_rd.h')
-rw-r--r--vp9/encoder/vp9_rd.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_rd.h b/vp9/encoder/vp9_rd.h
index 4c04c9548..2c9f5e740 100644
--- a/vp9/encoder/vp9_rd.h
+++ b/vp9/encoder/vp9_rd.h
@@ -101,6 +101,18 @@ typedef enum {
THR_INTRA,
} THR_MODES_SUB8X8;
+typedef struct {
+ // RD control parameters
+ // Added for Vizier project.
+ double rd_mult_q_sq_inter_low_qp;
+ double rd_mult_q_sq_inter_mid_qp;
+ double rd_mult_q_sq_inter_high_qp;
+ double rd_mult_q_sq_key_ultralow_qp;
+ double rd_mult_q_sq_key_low_qp;
+ double rd_mult_q_sq_key_mid_qp;
+ double rd_mult_q_sq_key_high_qp;
+} RD_CONTROL;
+
typedef struct RD_OPT {
// Thresh_mult is used to set a threshold for the rd score. A higher value
// means that we will accept the best mode so far more often. This number
@@ -144,6 +156,8 @@ struct TileDataEnc;
struct VP9_COMP;
struct macroblock;
+void vp9_init_rd_parameters(struct VP9_COMP *cpi);
+
int vp9_compute_rd_mult_based_on_qindex(const struct VP9_COMP *cpi, int qindex);
int vp9_compute_rd_mult(const struct VP9_COMP *cpi, int qindex);