summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cfg-mencoder.h1
-rw-r--r--mencoder.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/cfg-mencoder.h b/cfg-mencoder.h
index 60e8187e47..37d54de603 100644
--- a/cfg-mencoder.h
+++ b/cfg-mencoder.h
@@ -54,6 +54,7 @@ struct config lavcopts_conf[]={
{"vbitrate", &lavc_param_vbitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000, NULL},
{"vratetol", &lavc_param_vrate_tolerance, CONF_TYPE_INT, CONF_RANGE, 4, 24000000, NULL},
{"vhq", &lavc_param_vhq, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+ {"v4mv", &lavc_param_v4mv, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"vme", &lavc_param_vme, CONF_TYPE_INT, CONF_RANGE, 0, 5, NULL},
{"vqscale", &lavc_param_vqscale, CONF_TYPE_INT, CONF_RANGE, 1, 31, NULL},
{"vqmin", &lavc_param_vqmin, CONF_TYPE_INT, CONF_RANGE, 1, 31, NULL},
diff --git a/mencoder.c b/mencoder.c
index cad2cdd3b2..bab2f24ba4 100644
--- a/mencoder.c
+++ b/mencoder.c
@@ -76,6 +76,7 @@ char *lavc_param_vcodec = NULL;
int lavc_param_vbitrate = -1;
int lavc_param_vrate_tolerance = 1024*8;
int lavc_param_vhq = 0; /* default is realtime encoding */
+int lavc_param_v4mv = 0;
int lavc_param_vme = 3;
int lavc_param_vqscale = 0;
int lavc_param_vqmin = 3;
@@ -1193,7 +1194,6 @@ case VCODEC_LIBAVCODEC:
else
lavc_venc_context.gop_size = 250; /* default */
- /* ignored by libavcodec? */
if (lavc_param_vhq)
{
printf("High quality encoding selected (non real time)!\n");
@@ -1202,6 +1202,8 @@ case VCODEC_LIBAVCODEC:
else
lavc_venc_context.flags = 0;
+ lavc_venc_context.flags|= lavc_param_v4mv ? CODEC_FLAG_4MV : 0;
+
/* motion estimation (0 = none ... 3 = high quality but slow) */
/* this is just an extern from libavcodec but it should be in the
encoder context - FIXME */