summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-03-05 16:10:13 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-03-05 16:10:13 +0000
commit21e59552d6894917d3d16a3984268a171f4a1c98 (patch)
tree59ee03f8bc347a80ff3d8dac01dc707471465e4b /libavcodec
parent3b4f73dc76d018ef9833da44a8daa5d975a10a0b (diff)
extended option for h263+ patch by (fixounet at free dot fr) with some minor modifications
Originally committed as revision 1622 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/avcodec.h14
-rw-r--r--libavcodec/mpegvideo.c7
2 files changed, 17 insertions, 4 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 2990693bc4..e9ca0ea803 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -160,7 +160,19 @@ static const int Motion_Est_QTab[] = { ME_ZERO, ME_PHODS, ME_LOG,
#define CODEC_FLAG_TRELLIS_QUANT 0x00200000 /* use trellis quantization */
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000 /* place global headers in extradata instead of every keyframe */
#define CODEC_FLAG_BITEXACT 0x00800000 /* use only bitexact stuff (except (i)dct) */
-
+/* Fx : Flag for h263+ extra options */
+#define CODEC_FLAG_H263P_AIC 0x01000000 /* Advanced intra coding */
+#define CODEC_FLAG_H263P_UMV 0x02000000 /* Unlimited motion vector */
+/* For advanced prediction mode, we reuse the 4MV flag */
+/* Unsupported options :
+ * Syntax Arithmetic coding (SAC)
+ * Deblocking filter internal loop
+ * Slice structured
+ * Reference Picture Selection
+ * Independant Segment Decoding
+ * Alternative Inter * VLC
+ * Modified Quantization */
+/* /Fx */
/* codec capabilities */
#define CODEC_CAP_DRAW_HORIZ_BAND 0x0001 /* decoder can use draw_horiz_band callback */
diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c
index 7a2b10ecb6..8bfc0f049d 100644
--- a/libavcodec/mpegvideo.c
+++ b/libavcodec/mpegvideo.c
@@ -581,9 +581,10 @@ int MPV_encode_init(AVCodecContext *avctx)
case CODEC_ID_H263P:
s->out_format = FMT_H263;
s->h263_plus = 1;
- s->unrestricted_mv = 1;
- s->h263_aic = 1;
-
+ /* Fx */
+ s->unrestricted_mv=(avctx->flags & CODEC_FLAG_H263P_UMV) ? 1:0;
+ s->h263_aic= (avctx->flags & CODEC_FLAG_H263P_AIC) ? 1:0;
+ /* /Fx */
/* These are just to be sure */
s->umvplus = 1;
avctx->delay=0;