]> granicus.if.org Git - libvpx/commitdiff
Disable some features for first pass.
authorPaul Wilkins <paulwilkins@google.com>
Thu, 6 Jan 2011 17:10:07 +0000 (17:10 +0000)
committerPaul Wilkins <paulwilkins@google.com>
Thu, 6 Jan 2011 17:10:07 +0000 (17:10 +0000)
The following features don't make sense for the first
pass in its current form and have a significant impact on its
speed (up to 50%).

Slow quantizer, slow dct and trellis optimization.

Change-Id: Id9943f6765ffbd71fc0084ec7dfbc9d376fd6fcd

vp8/encoder/onyx_if.c

index 56f7ef6f8c508e8825a12a4c78fbdd03f3cb93b4..96e7a6caa01ac368db2446e5920f2b74d929df1d 100644 (file)
@@ -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);