| @@ -13,6 +13,10 @@ libavutil: 2013-12-xx | |||||
| API changes, most recent first: | 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 | 2014-04-xx - xxxxxxx - lavc 55.50.1 - avcodec.h | ||||
| Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the | Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the | ||||
| "mpv_flags" private option of the mpegvideo encoders. | "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_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_OUTPUT_CORRUPT 0x0008 ///< Output even those frames that might be corrupted | ||||
| #define CODEC_FLAG_QPEL 0x0010 ///< Use qpel MC. | #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. | #define CODEC_FLAG_GMC 0x0020 ///< Use GMC. | ||||
| #endif | |||||
| #define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>. | #define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>. | ||||
| #if FF_API_INPUT_PRESERVED | #if FF_API_INPUT_PRESERVED | ||||
| /** | /** | ||||
| @@ -64,6 +64,7 @@ struct xvid_context { | |||||
| int variance_aq; /**< Variance adaptive quantization */ | int variance_aq; /**< Variance adaptive quantization */ | ||||
| int ssim; /**< SSIM information display mode */ | int ssim; /**< SSIM information display mode */ | ||||
| int ssim_acc; /**< SSIM accuracy. 0: accurate. 4: fast. */ | 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 */ | /* 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; | x->vol_flags = 0; | ||||
| if( xvid_flags & CODEC_FLAG_GMC ) { | |||||
| if (x->gmc) { | |||||
| x->vol_flags |= XVID_VOL_GMC; | x->vol_flags |= XVID_VOL_GMC; | ||||
| x->me_flags |= XVID_ME_GME_REFINE; | 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" }, | { "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" }, | { "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 }, | { "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 }, | { 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"}, | {"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"}, | {"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"}, | {"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"}, | {"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"}, | {"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 | #if FF_API_INPUT_PRESERVED | ||||
| {"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"}, | {"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_MAJOR 55 | ||||
| #define LIBAVCODEC_VERSION_MINOR 50 | #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, \ | #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ | ||||
| LIBAVCODEC_VERSION_MINOR, \ | LIBAVCODEC_VERSION_MINOR, \ | ||||
| @@ -135,5 +135,8 @@ | |||||
| #ifndef FF_API_NORMALIZE_AQP | #ifndef FF_API_NORMALIZE_AQP | ||||
| #define FF_API_NORMALIZE_AQP (LIBAVCODEC_VERSION_MAJOR < 57) | #define FF_API_NORMALIZE_AQP (LIBAVCODEC_VERSION_MAJOR < 57) | ||||
| #endif | #endif | ||||
| #ifndef FF_API_GMC | |||||
| #define FF_API_GMC (LIBAVCODEC_VERSION_MAJOR < 57) | |||||
| #endif | |||||
| #endif /* AVCODEC_VERSION_H */ | #endif /* AVCODEC_VERSION_H */ | ||||