[MPlayer-cvslog] CVS: main/libmpcodecs ve_x264.c,1.26,1.27

Loren Merritt CVS syncmail at mplayerhq.hu
Tue May 24 08:03:40 CEST 2005


CVS change done by Loren Merritt CVS

Update of /cvsroot/mplayer/main/libmpcodecs
In directory mail:/var2/tmp/cvs-serv8990/libmpcodecs

Modified Files:
	ve_x264.c 
Log Message:
sync to x264 r239 (zoned ratecontrol and UMHex ME)


Index: ve_x264.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpcodecs/ve_x264.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- ve_x264.c	11 May 2005 16:00:12 -0000	1.26
+++ ve_x264.c	24 May 2005 06:03:37 -0000	1.27
@@ -93,6 +93,7 @@
 static float qblur = 0.5;
 static float complexity_blur = 20;
 static char *rc_eq = "blurCplx^(1-qComp)";
+static char *zones = NULL;
 static int subq = 5;
 static int me_method = 2;
 static int me_range = 16;
@@ -145,8 +146,9 @@
     {"qcomp", &qcomp, CONF_TYPE_FLOAT, CONF_RANGE, 0, 1, NULL},
     {"qblur", &qblur, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
     {"cplx_blur", &complexity_blur, CONF_TYPE_FLOAT, CONF_RANGE, 0, 999, NULL},
+    {"zones", &zones, CONF_TYPE_STRING, 0, 0, 0, NULL},
     {"subq", &subq, CONF_TYPE_INT, CONF_RANGE, 1, 5, NULL},
-    {"me", &me_method, CONF_TYPE_INT, CONF_RANGE, 1, 3, NULL},
+    {"me", &me_method, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
     {"me_range", &me_range, CONF_TYPE_INT, CONF_RANGE, 4, 64, NULL},
     {"level_idc", &level_idc, CONF_TYPE_INT, CONF_RANGE, 10, 51, NULL},
     {"psnr", &psnr, CONF_TYPE_FLAG, 0, 0, 1, NULL},
@@ -191,7 +193,6 @@
     mod->param.rc.f_qblur = qblur;
     mod->param.rc.f_complexity_blur = complexity_blur;
     mod->param.analyse.i_subpel_refine = subq;
-    mod->param.analyse.i_me_method = subq==1 ? X264_ME_DIA : X264_ME_HEX;
     mod->param.rc.psz_stat_out = passtmpfile;
     mod->param.rc.psz_stat_in = passtmpfile;
     if((pass & 2) && bitrate <= 0)
@@ -233,12 +234,15 @@
     }
     mod->param.rc.f_ip_factor = ip_factor;
     mod->param.rc.f_pb_factor = pb_factor;
+    mod->param.rc.psz_zones = zones;
     switch(me_method) {
         case 1: mod->param.analyse.i_me_method = X264_ME_DIA; break;
         case 2: mod->param.analyse.i_me_method = X264_ME_HEX; break;
-        case 3: mod->param.analyse.i_me_method = X264_ME_ESA;
-                mod->param.analyse.i_me_range = me_range; break;
+        case 3: mod->param.analyse.i_me_method = X264_ME_UMH; break;
+        case 4: mod->param.analyse.i_me_method = X264_ME_ESA; break;
     }
+    if(me_method >= 3)
+        mod->param.analyse.i_me_range = me_range;
     mod->param.analyse.inter = X264_ANALYSE_I4x4;
     if(p4x4mv)
         mod->param.analyse.inter |= X264_ANALYSE_PSUB8x8;




More information about the MPlayer-cvslog mailing list