]> granicus.if.org Git - libvpx/commitdiff
Avoid nonrd_pick_partition for speed >= 6.
authorMarco <marpan@google.com>
Wed, 4 Oct 2017 22:27:45 +0000 (15:27 -0700)
committerMarco <marpan@google.com>
Wed, 4 Oct 2017 22:31:54 +0000 (15:31 -0700)
For 1 pass vbr speed >= 6: when REFERENCE_PARTITION is selected,
avoid doing the full nonrd_pickmode based partition.
No change in overall metrics or speed.
Reduces encode times on scene cuts by 10-20%.

Change-Id: I0310b1610cc1c83793a509e0a9059840e8f18308

vp9/encoder/vp9_encodeframe.c

index 4d7d2850010474652a422c180638639266de92d4..c9d865e5caa60bb7c31c508e0702fccf69097b2f 100644 (file)
@@ -4216,7 +4216,7 @@ static void encode_nonrd_sb_row(VP9_COMP *cpi, ThreadData *td,
         // nonrd_pick_partition does not support 4x4 partition, so avoid it
         // on key frame for now.
         if ((cpi->oxcf.rc_mode == VPX_VBR && cpi->rc.high_source_sad &&
-             cm->frame_type != KEY_FRAME)) {
+             cpi->oxcf.speed < 6 && cm->frame_type != KEY_FRAME)) {
           // Use lower max_partition_size for low resoultions.
           if (cm->width <= 352 && cm->height <= 288)
             x->max_partition_size = BLOCK_32X32;