ref: c42e8f14292ebaa8edf8d4030221f1706a1e0c9d
parent: 409f48ec520acb6751c8085d54b465c5b3da4ddd
parent: d8b8d87eb77571abe5c7643f368b6deddec2c837
author: Jingning Han <jingning@google.com>
date: Wed Apr 2 08:48:05 EDT 2014
Merge "Make frame level quantization change a parameter"
--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -983,7 +983,7 @@
if (q == 0)
q++;
if (cpi->sf.force_ref_frame == 1)
- q -= 15;
+ q -= cpi->sf.max_delta_qindex;
if (q < *bottom_index)
*bottom_index = q;
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -247,6 +247,7 @@
sf->force_ref_frame =
(cm->current_video_frame %
(sf->last_partitioning_redo_frequency << 1) == 1);
+ sf->max_delta_qindex = 15;
sf->partition_search_type = REFERENCE_PARTITION;
sf->use_nonrd_pick_mode = 1;
sf->search_method = FAST_DIAMOND;
@@ -300,6 +301,7 @@
sf->disable_split_mask = 0;
sf->mode_search_skip_flags = 0;
sf->force_ref_frame = 0;
+ sf->max_delta_qindex = 0;
sf->disable_split_var_thresh = 0;
sf->disable_filter_search_var_thresh = 0;
for (i = 0; i < TX_SIZES; i++) {
--- a/vp9/encoder/vp9_speed_features.h
+++ b/vp9/encoder/vp9_speed_features.h
@@ -256,6 +256,9 @@
// partition type search.
int force_ref_frame;
+ // Maximally allowed base quantization index fluctuation.
+ int max_delta_qindex;
+
// Implements various heuristics to skip searching modes
// The heuristics selected are based on flags
// defined in the MODE_SEARCH_SKIP_HEURISTICS enum
--
⑨