On Wed, Aug 31, 2011 at 11:27:08AM +0200, Anton Khirnov wrote: > Deprecate CODEC_FLAG_H263P_SLICE_STRUCT > --- > libavcodec/avcodec.h | 2 ++ > libavcodec/mpegvideo_enc.c | 5 ++++- > libavcodec/options.c | 2 +- > 3 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h > index c22c98f..950e32f 100644 > --- a/libavcodec/avcodec.h > +++ b/libavcodec/avcodec.h > @@ -609,7 +609,9 @@ typedef struct RcOverride{ > #define CODEC_FLAG_OBMC 0x00000001 ///< OBMC > #endif > #define CODEC_FLAG_LOOP_FILTER 0x00000800 ///< loop filter > +#if FF_API_MPEGVIDEO_GLOBAL_OPTS > #define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000 > +#endif > #define CODEC_FLAG_INTERLACED_ME 0x20000000 ///< interlaced motion > estimation > #define CODEC_FLAG_SVCD_SCAN_OFFSET 0x40000000 ///< Will reserve space for > SVCD scan offset user data. > #define CODEC_FLAG_CLOSED_GOP 0x80000000 > diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c > index 9623bb8..64a7360 100644 > --- a/libavcodec/mpegvideo_enc.c > +++ b/libavcodec/mpegvideo_enc.c > @@ -612,12 +612,13 @@ av_cold int MPV_encode_init(AVCodecContext *avctx) > s->umvplus = 1; > if (avctx->flags & CODEC_FLAG_H263P_AIV) > s->alt_inter_vlc = 1; > + if (avctx->flags & CODEC_FLAG_H263P_SLICE_STRUCT) > + s->h263_slice_structured = 1; > #endif > s->h263_aic= (avctx->flags & CODEC_FLAG_AC_PRED) ? 1:0; > s->modified_quant= s->h263_aic; > s->loop_filter= (avctx->flags & CODEC_FLAG_LOOP_FILTER) ? 1:0; > s->unrestricted_mv= s->obmc || s->loop_filter || s->umvplus; > - s->h263_slice_structured= (s->flags & CODEC_FLAG_H263P_SLICE_STRUCT) > ? 1:0; > > /* /Fx */ > /* These are just to be sure */ > @@ -3787,6 +3788,7 @@ int dct_quantize_c(MpegEncContext *s, > #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM > static const AVOption h263_options[] = { > { "obmc", "use overlapped block motion compensation.", > OFFSET(obmc), FF_OPT_TYPE_INT, { 0 }, 0, 1, VE }, > + { "structured_slices","Add proper slice header to every GOB header, > instead of just GOB number", OFFSET(h263_slice_structured), FF_OPT_TYPE_INT, > { 0 }, 0, 1, VE}, > { NULL }, > }; > > @@ -3814,6 +3816,7 @@ static const AVOption h263p_options[] = { > { "umv", "Use unlimited motion vectors.", OFFSET(umvplus), > FF_OPT_TYPE_INT, { 0 }, 0, 1, VE }, > { "aiv", "Use alternative inter VLC.", > OFFSET(alt_inter_vlc), FF_OPT_TYPE_INT, { 0 }, 0, 1, VE }, > { "obmc", "use overlapped block motion compensation.", > OFFSET(obmc), FF_OPT_TYPE_INT, { 0 }, 0, 1, VE }, > + { "structured_slices", "Add proper slice header to every GOB header, > instead of just GOB number", OFFSET(h263_slice_structured), FF_OPT_TYPE_INT, > { 0 }, 0, 1, VE},
Write slice start position at every GOB header instead of just GOB number. (there are other fields there in both cases) Otherwise OK. _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel