[x264-devel] ultrafast profile regression

Aleksey Vasenev margtu-fivt at ya.ru
Wed Nov 7 15:04:21 CET 2018


Revision: 71ed44c7312438fac7c5c5301e45522e57127db4
Author: Vittorio Giovara <vittorio.giovara at gmail.com>
Date: 06.01.2017 17:23:38
Message:
Unify 8-bit and 10-bit CLI and libraries


Lost: param->analyse.i_trellis = 0;

1. ultrafast slower than superfast

2. in real video 3x speed degrade with trellis 1


https://code.videolan.org/videolan/medialibrary-test-samples.git
ffmpeg -i "mrmssmith.mkv" -an -preset ultrafast -y -threads 1 
"ultrfast.mkv"
ffmpeg -i "mrmssmith.mkv" -an -preset ultrafast -y -threads 1 -trellis 0 
"ultrfast_trellis_0.mkv"
ffmpeg -i "mrmssmith.mkv" -an -preset superfast -y -threads 1 
"superfast.mkv"

mrmssmith.mkv
ultrafast - 36.4x
ultrfast_trellis_0 - 111x
superfast 53.6x

anamorph.mkv
ultrafast - 7.23x
ultrfast_trellis_0 - 21.1x
superfast - 11.6x


$ git diff 
71ed44c7312438fac7c5c5301e45522e57127db4~1..71ed44c7312438fac7c5c5301e45522e57127db4 
common/common.c  | sed -n '169,189p' && git diff 
71ed44c7312438fac7c5c5301e45522e57127db4~1..71ed44c7312438fac7c5c5301e45522e57127db4 
common/base.c | sed -n '431,450p'
-    if( !strcasecmp( preset, "ultrafast" ) )
-    {
-        param->i_frame_reference = 1;
-        param->i_scenecut_threshold = 0;
-        param->b_deblocking_filter = 0;
-        param->b_cabac = 0;
-        param->i_bframe = 0;
-        param->analyse.intra = 0;
-        param->analyse.inter = 0;
-        param->analyse.b_transform_8x8 = 0;
-        param->analyse.i_me_method = X264_ME_DIA;
-        param->analyse.i_subpel_refine = 0;
-        param->rc.i_aq_mode = 0;
-        param->analyse.b_mixed_references = 0;
-        param->analyse.i_trellis = 0;
-        param->i_bframe_adaptive = X264_B_ADAPT_NONE;
-        param->rc.b_mb_tree = 0;
-        param->analyse.i_weighted_pred = X264_WEIGHTP_NONE;
-        param->analyse.b_weighted_bipred = 0;
-        param->rc.i_lookahead = 0;
-    }
+    if( !strcasecmp( preset, "ultrafast" ) )
+    {
+        param->i_frame_reference = 1;
+        param->i_scenecut_threshold = 0;
+        param->b_deblocking_filter = 0;
+        param->b_cabac = 0;
+        param->i_bframe = 0;
+        param->analyse.intra = 0;
+        param->analyse.inter = 0;
+        param->analyse.b_transform_8x8 = 0;
+        param->analyse.i_me_method = X264_ME_DIA;
+        param->analyse.i_subpel_refine = 0;
+        param->rc.i_aq_mode = 0;
+        param->analyse.b_mixed_references = 0;
+        param->i_bframe_adaptive = X264_B_ADAPT_NONE;
+        param->rc.b_mb_tree = 0;
+        param->analyse.i_weighted_pred = X264_WEIGHTP_NONE;
+        param->analyse.b_weighted_bipred = 0;
+        param->rc.i_lookahead = 0;
+    }



More information about the x264-devel mailing list