diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c index 17b0a5644..ca8b55b8d 100644 --- a/vp9/encoder/vp9_speed_features.c +++ b/vp9/encoder/vp9_speed_features.c @@ -646,8 +646,10 @@ void vp9_set_speed_features_framesize_dependent(VP9_COMP *cpi) { // With row based multi-threading, the following speed features // have to be disabled to guarantee that bitstreams encoded with single thread - // and multiple threads match - if (cpi->row_mt_bit_exact) sf->adaptive_rd_thresh = 0; + // and multiple threads match. + // It can be used since adaptive_rd_thresh is defined per-row for REALTIME. + if (oxcf->mode != REALTIME && cpi->row_mt_bit_exact) + sf->adaptive_rd_thresh = 0; // This is only used in motion vector unit test. if (cpi->oxcf.motion_vector_unit_test == 1) @@ -800,8 +802,10 @@ void vp9_set_speed_features_framesize_independent(VP9_COMP *cpi) { // With row based multi-threading, the following speed features // have to be disabled to guarantee that bitstreams encoded with single thread - // and multiple threads match - if (cpi->row_mt_bit_exact) sf->adaptive_rd_thresh = 0; + // and multiple threads match. + // It can be used since adaptive_rd_thresh is defined per-row for REALTIME. + if (oxcf->mode != REALTIME && cpi->row_mt_bit_exact) + sf->adaptive_rd_thresh = 0; // This is only used in motion vector unit test. if (cpi->oxcf.motion_vector_unit_test == 1)