diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c index 08ed931bb..26c3b90a3 100644 --- a/vp8/encoder/onyx_if.c +++ b/vp8/encoder/onyx_if.c @@ -576,7 +576,7 @@ void vp8_set_speed_features(VP8_COMP *cpi) cpi->mbs_tested_so_far = 0; - // best quality + // best quality defaults sf->RD = 1; sf->search_method = NSTEP; sf->improved_quant = 1; @@ -1268,6 +1268,15 @@ void vp8_set_speed_features(VP8_COMP *cpi) }; + // Slow quant, dct and trellis not worthwhile for first pass + // so make sure they are always turned off. + if ( cpi->pass == 1 ) + { + sf->improved_quant = 0; + sf->optimize_coefficients = 0; + sf->improved_dct = 0; + } + if (cpi->sf.search_method == NSTEP) { vp8_init3smotion_compensation(&cpi->mb, cm->yv12_fb[cm->lst_fb_idx].y_stride);