ref: f3f6b6fe3e960959489db2568d9942aeca261daa
parent: 4993158ee5120b05dfee5cba23d45369c97b7df6
 parent: 8ba98516fd8df6ee9275c4e68ec0663ad5b6848c
	author: Paul Wilkins <paulwilkins@google.com>
	date: Thu Nov 19 11:13:43 EST 2015
	
Merge "Changes to best quality settings."
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -17,17 +17,17 @@
// Mesh search patters for various speed settings
static MESH_PATTERN best_quality_mesh_pattern[MAX_MESH_STEP] =
-    {{64, 4}, {28, 2}, {15, 1}, {7, 1}, {1, 1}, {1, 1}};+    {{64, 4}, {28, 2}, {15, 1}, {7, 1}};#define MAX_MESH_SPEED 5 // Max speed setting for mesh motion method
static MESH_PATTERN good_quality_mesh_patterns[MAX_MESH_SPEED + 1]
[MAX_MESH_STEP] =
-    {{{64, 8}, {28, 4}, {15, 1}, {7, 1}, {3, 1}, {2, 1}},-     {{64, 8}, {28, 4}, {15, 1}, {7, 1}, {3, 1}, {2, 1}},-     {{64, 8},  {14, 2}, {7, 1},  {7, 1}, {3, 1}, {2, 1}},-     {{64, 16}, {24, 8}, {12, 4}, {7, 1}, {3, 1 }, {2, 1 }},-     {{64, 16}, {24, 8}, {12, 4}, {7, 1}, {3, 1 }, {2, 1 }},-     {{64, 16}, {24, 8}, {12, 4}, {7, 1}, {3, 1 }, {2, 1 }},+    {{{64, 8}, {28, 4}, {15, 1}, {7, 1}},+     {{64, 8}, {28, 4}, {15, 1}, {7, 1}},+     {{64, 8},  {14, 2}, {7, 1},  {7, 1}},+     {{64, 16}, {24, 8}, {12, 4}, {7, 1}},+     {{64, 16}, {24, 8}, {12, 4}, {7, 1}},+     {{64, 16}, {24, 8}, {12, 4}, {7, 1}},};
static unsigned char good_quality_max_mesh_pct[MAX_MESH_SPEED + 1] =
     {50, 25, 15, 5, 1, 1};@@ -478,7 +478,6 @@
sf->mv.auto_mv_step_size = 0;
sf->mv.fullpel_search_step_param = 6;
sf->comp_inter_joint_search_thresh = BLOCK_4X4;
- sf->adaptive_rd_thresh = 0;
sf->tx_size_search_method = USE_FULL_RD;
sf->use_lp32x32fdct = 0;
sf->adaptive_motion_search = 0;
@@ -534,10 +533,13 @@
// Recode loop tolerance %.
sf->recode_tolerance = 25;
sf->default_interp_filter = SWITCHABLE;
- sf->tx_size_search_breakout = 0;
- sf->partition_search_breakout_dist_thr = 0;
- sf->partition_search_breakout_rate_thr = 0;
sf->simple_model_rd_from_var = 0;
+
+ // Some speed-up features even for best quality as minimal impact on quality.
+ sf->adaptive_rd_thresh = 1;
+ sf->tx_size_search_breakout = 1;
+ sf->partition_search_breakout_dist_thr = (1 << 19);
+ sf->partition_search_breakout_rate_thr = 80;
if (oxcf->mode == REALTIME)
set_rt_speed_feature(cpi, sf, oxcf->speed, oxcf->content);
--- a/vp9/encoder/vp9_speed_features.h
+++ b/vp9/encoder/vp9_speed_features.h
@@ -195,7 +195,7 @@
int fullpel_search_step_param;
} MV_SPEED_FEATURES;
-#define MAX_MESH_STEP 6
+#define MAX_MESH_STEP 4
 typedef struct MESH_PATTERN {int range;
--
⑨