mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lavc: make the xvid-specific "gmc" flag a private option of libxvid
This commit is contained in:
parent
b2c31710c9
commit
6484149158
@ -13,6 +13,10 @@ libavutil: 2013-12-xx
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2014-04-xx - xxxxxxx - lavc 55.50.2 - avcodec.h
|
||||
Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
|
||||
libxvid encoder.
|
||||
|
||||
2014-04-xx - xxxxxxx - lavc 55.50.1 - avcodec.h
|
||||
Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
|
||||
"mpv_flags" private option of the mpegvideo encoders.
|
||||
|
@ -669,7 +669,12 @@ typedef struct RcOverride{
|
||||
#define CODEC_FLAG_4MV 0x0004 ///< 4 MV per MB allowed / advanced prediction for H.263.
|
||||
#define CODEC_FLAG_OUTPUT_CORRUPT 0x0008 ///< Output even those frames that might be corrupted
|
||||
#define CODEC_FLAG_QPEL 0x0010 ///< Use qpel MC.
|
||||
#if FF_API_GMC
|
||||
/**
|
||||
* @deprecated use the "gmc" private option of the libxvid encoder
|
||||
*/
|
||||
#define CODEC_FLAG_GMC 0x0020 ///< Use GMC.
|
||||
#endif
|
||||
#define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>.
|
||||
#if FF_API_INPUT_PRESERVED
|
||||
/**
|
||||
|
@ -64,6 +64,7 @@ struct xvid_context {
|
||||
int variance_aq; /**< Variance adaptive quantization */
|
||||
int ssim; /**< SSIM information display mode */
|
||||
int ssim_acc; /**< SSIM accuracy. 0: accurate. 4: fast. */
|
||||
int gmc;
|
||||
};
|
||||
|
||||
/**
|
||||
@ -416,8 +417,13 @@ static av_cold int xvid_encode_init(AVCodecContext *avctx) {
|
||||
}
|
||||
|
||||
/* Bring in VOL flags from avconv command-line */
|
||||
#if FF_API_GMC
|
||||
if (avctx->flags & CODEC_FLAG_GMC)
|
||||
x->gmc = 1;
|
||||
#endif
|
||||
|
||||
x->vol_flags = 0;
|
||||
if( xvid_flags & CODEC_FLAG_GMC ) {
|
||||
if (x->gmc) {
|
||||
x->vol_flags |= XVID_VOL_GMC;
|
||||
x->me_flags |= XVID_ME_GME_REFINE;
|
||||
}
|
||||
@ -799,6 +805,7 @@ static const AVOption options[] = {
|
||||
{ "avg", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 1 }, INT_MIN, INT_MAX, VE, "ssim" },
|
||||
{ "frame", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 2 }, INT_MIN, INT_MAX, VE, "ssim" },
|
||||
{ "ssim_acc", "SSIM accuracy", OFFSET(ssim_acc), AV_OPT_TYPE_INT, { .i64 = 2 }, 0, 4, VE },
|
||||
{ "gmc", "use GMC", OFFSET(gmc), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE },
|
||||
{ NULL },
|
||||
};
|
||||
|
||||
|
@ -52,7 +52,9 @@ static const AVOption avcodec_options[] = {
|
||||
{"qpel", "use 1/4-pel motion compensation", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_QPEL }, INT_MIN, INT_MAX, V|E, "flags"},
|
||||
{"loop", "use loop filter", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_LOOP_FILTER }, INT_MIN, INT_MAX, V|E, "flags"},
|
||||
{"qscale", "use fixed qscale", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_QSCALE }, INT_MIN, INT_MAX, 0, "flags"},
|
||||
#if FF_API_GMC
|
||||
{"gmc", "use gmc", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_GMC }, INT_MIN, INT_MAX, V|E, "flags"},
|
||||
#endif
|
||||
{"mv0", "always try a mb with mv=<0,0>", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_MV0 }, INT_MIN, INT_MAX, V|E, "flags"},
|
||||
#if FF_API_INPUT_PRESERVED
|
||||
{"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"},
|
||||
|
@ -30,7 +30,7 @@
|
||||
|
||||
#define LIBAVCODEC_VERSION_MAJOR 55
|
||||
#define LIBAVCODEC_VERSION_MINOR 50
|
||||
#define LIBAVCODEC_VERSION_MICRO 1
|
||||
#define LIBAVCODEC_VERSION_MICRO 2
|
||||
|
||||
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
||||
LIBAVCODEC_VERSION_MINOR, \
|
||||
@ -135,5 +135,8 @@
|
||||
#ifndef FF_API_NORMALIZE_AQP
|
||||
#define FF_API_NORMALIZE_AQP (LIBAVCODEC_VERSION_MAJOR < 57)
|
||||
#endif
|
||||
#ifndef FF_API_GMC
|
||||
#define FF_API_GMC (LIBAVCODEC_VERSION_MAJOR < 57)
|
||||
#endif
|
||||
|
||||
#endif /* AVCODEC_VERSION_H */
|
||||
|
Loading…
Reference in New Issue
Block a user