changeset 11702:e4c043ebf3a6

vismv, alt, ilme options
author michael
date Tue, 30 Dec 2003 18:24:19 +0000
parents 8ab2028e6ed9
children 027a3b0bf8b4
files DOCS/man/en/mplayer.1 libmpcodecs/vd_ffmpeg.c libmpcodecs/ve_lavc.c
diffstat 3 files changed, 33 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/man/en/mplayer.1	Mon Dec 29 18:10:49 2003 +0000
+++ b/DOCS/man/en/mplayer.1	Tue Dec 30 18:24:19 2003 +0000
@@ -2162,6 +2162,18 @@
 .br
 0x1000: bugs
 .REss
+.IPs vismv=<value>
+vismv:
+.RSss
+.br
+0: disabled
+.br
+1: visualize forward predicted MVs of P frames
+.br
+2: visualize forward predicted MVs of B frames
+.br
+4: visualize backward predicted MVs of B frames
+.REss
 .IPs bug=<value>
 manually work around encoder bugs:
 .RSss
@@ -4279,6 +4291,12 @@
 .B ildct\ \ 
 use interlaced dct
 .TP
+.B ilme\ \ \ 
+use interlaced motion estimation
+.TP
+.B alt\ \ \ \ 
+use alternative scantable
+.TP
 .B top=<-1\-1>\ \ \ 
 .RSs
 .IPs -1
--- a/libmpcodecs/vd_ffmpeg.c	Mon Dec 29 18:10:49 2003 +0000
+++ b/libmpcodecs/vd_ffmpeg.c	Tue Dec 30 18:24:19 2003 +0000
@@ -98,6 +98,7 @@
 static int lavc_param_vstats=0;
 static int lavc_param_idct_algo=0;
 static int lavc_param_debug=0;
+static int lavc_param_vismv=0;
 
 m_option_t lavc_decode_opts_conf[]={
 	{"bug", &lavc_param_workaround_bugs, CONF_TYPE_INT, CONF_RANGE, -1, 999999, NULL},
@@ -106,9 +107,8 @@
 	{"idct", &lavc_param_idct_algo, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL},
 	{"ec", &lavc_param_error_concealment, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL},
 	{"vstats", &lavc_param_vstats, CONF_TYPE_FLAG, 0, 0, 1, NULL},
-#if LIBAVCODEC_BUILD >= 4642
 	{"debug", &lavc_param_debug, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL},
-#endif
+	{"vismv", &lavc_param_vismv, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL},
 	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
@@ -225,6 +225,9 @@
 #if LIBAVCODEC_BUILD >= 4642
     avctx->debug= lavc_param_debug;
 #endif    
+#if LIBAVCODEC_BUILD >= 4698
+    avctx->debug_mv= lavc_param_vismv;
+#endif    
     mp_dbg(MSGT_DECVIDEO,MSGL_DBG2,"libavcodec.size: %d x %d\n",avctx->width,avctx->height);
     /* AVRn stores huffman table in AVI header */
     /* Pegasus MJPEG stores it also in AVI header, but it uses the common
--- a/libmpcodecs/ve_lavc.c	Mon Dec 29 18:10:49 2003 +0000
+++ b/libmpcodecs/ve_lavc.c	Tue Dec 30 18:24:19 2003 +0000
@@ -142,6 +142,8 @@
 static int lavc_param_sc_threshold= 0;
 static int lavc_param_ss= 0;
 static int lavc_param_top= -1;
+static int lavc_param_alt= 0;
+static int lavc_param_ilme= 0;
 
 
 char *lavc_param_acodec = "mp2";
@@ -269,6 +271,12 @@
 #ifdef CODEC_FLAG_H263P_SLICE_STRUCT
 	{"ss", &lavc_param_ss, CONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_SLICE_STRUCT, NULL},
 #endif
+#ifdef CODEC_FLAG_ALT_SCAN
+	{"alt", &lavc_param_alt, CONF_TYPE_FLAG, 0, 0, CODEC_FLAG_ALT_SCAN, NULL},
+#endif
+#ifdef CODEC_FLAG_INTERLACED_ME
+	{"ilme", &lavc_param_ilme, CONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME, NULL},
+#endif
 	{"inter_threshold", &lavc_param_inter_threshold, CONF_TYPE_INT, CONF_RANGE, -1000000, 1000000, NULL},
 	{"sc_threshold", &lavc_param_sc_threshold, CONF_TYPE_INT, CONF_RANGE, -1000000, 1000000, NULL},
 	{"top", &lavc_param_top, CONF_TYPE_INT, CONF_RANGE, -1, 1, NULL},
@@ -549,6 +557,8 @@
     lavc_venc_context->flags|= lavc_param_mv0;
     lavc_venc_context->flags|= lavc_param_qp_rd;
     lavc_venc_context->flags|= lavc_param_ss;
+    lavc_venc_context->flags|= lavc_param_alt;
+    lavc_venc_context->flags|= lavc_param_ilme;
     if(lavc_param_gray) lavc_venc_context->flags|= CODEC_FLAG_GRAY;
 
     if(lavc_param_normalize_aqp) lavc_venc_context->flags|= CODEC_FLAG_NORMALIZE_AQP;