]> granicus.if.org Git - libvpx/commitdiff
Reduce the frequency of partition size adjsutment
authorYaowu Xu <yaowu@google.com>
Tue, 25 Feb 2014 22:15:00 +0000 (14:15 -0800)
committerYaowu Xu <yaowu@google.com>
Wed, 26 Feb 2014 17:52:38 +0000 (09:52 -0800)
The commit change to use partitions sizes directly from last frame
for frames directly where last frame selects partitions sizes based
on coding efficiency.

On --rt --cpu-used=-5, the change hurts compression by 4% but reduces
encoding time by ~20%

Change-Id: Ia68665e5c8489b7bfcf5fac7768332fba88928e6

vp9/encoder/vp9_onyx_if.c

index 33f588fa196efbb54d8ef4b565f7ff65f37a42d7..f86b7a13d0636171c69541aee4540b8853f16ce1 100644 (file)
@@ -852,6 +852,9 @@ static void set_rt_speed_feature(VP9_COMMON *cm,
     sf->adaptive_rd_thresh = 5;
     sf->auto_min_max_partition_size = frame_is_intra_only(cm) ?
         RELAXED_NEIGHBORING_MIN_MAX : STRICT_NEIGHBORING_MIN_MAX;
+    sf->adjust_partitioning_from_last_frame =
+        cm->last_frame_type == KEY_FRAME || (0 ==
+        (cm->current_video_frame + 1) % sf->last_partitioning_redo_frequency);
     sf->subpel_force_stop = 1;
     for (i = 0; i < TX_SIZES; i++) {
       sf->intra_y_mode_mask[i] = INTRA_DC_H_V;
@@ -859,7 +862,6 @@ static void set_rt_speed_feature(VP9_COMMON *cm,
     }
     sf->frame_parameter_update = 0;
     sf->encode_breakout_thresh = 1000;
-
     sf->search_method = FAST_HEX;
   }
   if (speed >= 6) {