shithub: libvpx

Download patch

ref: f4bee75c2b03901d789b2d70d72db5802932656d
parent: b91a1586a31886b96f06bc9bd82b3f62091cf1ef
parent: b12e060b559ef948e154b2ee21e86eb1fc9dcc1d
author: Yunqing Wang <yunqingwang@google.com>
date: Tue Jul 2 06:54:22 EDT 2013

Merge "Add speed feature to disable splitmv"

--- a/vp9/encoder/vp9_onyx_if.c
+++ b/vp9/encoder/vp9_onyx_if.c
@@ -652,6 +652,15 @@
     sf->thresh_mult[THR_COMP_NEWGA    ] = INT_MAX;
     sf->thresh_mult[THR_COMP_SPLITGA  ] = INT_MAX;
   }
+
+  if (sf->disable_splitmv == 1) {
+    sf->thresh_mult[THR_SPLITMV  ] = INT_MAX;
+    sf->thresh_mult[THR_SPLITG   ] = INT_MAX;
+    sf->thresh_mult[THR_SPLITA   ] = INT_MAX;
+
+    sf->thresh_mult[THR_COMP_SPLITLA  ] = INT_MAX;
+    sf->thresh_mult[THR_COMP_SPLITGA  ] = INT_MAX;
+  }
 }
 
 void vp9_set_speed_features(VP9_COMP *cpi) {
@@ -706,6 +715,7 @@
   sf->greater_than_block_size = BLOCK_SIZE_SB8X8;
   sf->adjust_partitioning_from_last_frame = 0;
   sf->last_partitioning_redo_frequency = 4;
+  sf->disable_splitmv = 0;
 
 #if CONFIG_MULTIPLE_ARF
   // Switch segmentation off.
@@ -737,6 +747,9 @@
         sf->use_largest_txform        = !(cpi->common.frame_type == KEY_FRAME ||
                                           cpi->common.intra_only ||
                                           cpi->common.show_frame == 0);
+
+        sf->disable_splitmv =
+            (MIN(cpi->common.width, cpi->common.height) >= 720)? 1 : 0;
       }
       if (speed == 2) {
         sf->use_largest_txform        = !(cpi->common.frame_type == KEY_FRAME ||
--- a/vp9/encoder/vp9_onyx_int.h
+++ b/vp9/encoder/vp9_onyx_int.h
@@ -234,6 +234,7 @@
   BLOCK_SIZE_TYPE less_than_block_size;
   int adjust_partitioning_from_last_frame;
   int last_partitioning_redo_frequency;
+  int disable_splitmv;
 } SPEED_FEATURES;
 
 enum BlockSize {
--