History

lavc: make the xvid-specific "gmc" flag a private option of libxvid

Anton Khirnov committed 12 years ago

Commit 64841491 parent b2c31715 files · +23 −2Browse files

Unified · Split

5 files
  1. doc/APIchanges +4 −0
  2. libavcodec/avcodec.h +5 −0
  3. libavcodec/libxvid.c +8 −1
  4. libavcodec/options_table.h +2 −0
  5. libavcodec/version.h +4 −1
doc/APIchanges+4−0
@@ -13,6 +13,10 @@ libavutil: 2013-12-xx · 12 unmodified lines
1313
1414 API changes, most recent first:
1515
16+2014-04-xx - xxxxxxx - lavc 55.50.2 - avcodec.h
17+ Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
18+ libxvid encoder.
19+
1620 2014-04-xx - xxxxxxx - lavc 55.50.1 - avcodec.h
1721 Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
1822 "mpv_flags" private option of the mpegvideo encoders.
libavcodec/avcodec.h+5−0
@@ -669,7 +669,12 @@ typedef struct RcOverride{ · 668 unmodified lines
669669 #define CODEC_FLAG_4MV 0x0004 ///< 4 MV per MB allowed / advanced prediction for H.263.
670670 #define CODEC_FLAG_OUTPUT_CORRUPT 0x0008 ///< Output even those frames that might be corrupted
671671 #define CODEC_FLAG_QPEL 0x0010 ///< Use qpel MC.
672+#if FF_API_GMC
673+/**
674+ * @deprecated use the "gmc" private option of the libxvid encoder
675+ */
672676 #define CODEC_FLAG_GMC 0x0020 ///< Use GMC.
677+#endif
673678 #define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>.
674679 #if FF_API_INPUT_PRESERVED
675680 /**
libavcodec/libxvid.c+8−1
@@ -64,6 +64,7 @@ struct xvid_context { · 63 unmodified lines
6464 int variance_aq; /**< Variance adaptive quantization */
6565 int ssim; /**< SSIM information display mode */
6666 int ssim_acc; /**< SSIM accuracy. 0: accurate. 4: fast. */
67+ int gmc;
6768 };
6869
6970 /**
@@ -416,8 +417,13 @@ static av_cold int xvid_encode_init(AVCodecContext *avctx) { · 346 unmodified lines
416417 }
417418
418419 /* Bring in VOL flags from avconv command-line */
420+#if FF_API_GMC
421+ if (avctx->flags & CODEC_FLAG_GMC)
422+ x->gmc = 1;
423+#endif
424+
419425 x->vol_flags = 0;
420− if( xvid_flags & CODEC_FLAG_GMC ) {
426+ if (x->gmc) {
421427 x->vol_flags |= XVID_VOL_GMC;
422428 x->me_flags |= XVID_ME_GME_REFINE;
423429 }
@@ -799,6 +805,7 @@ static const AVOption options[] = { · 375 unmodified lines
799805 { "avg", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 1 }, INT_MIN, INT_MAX, VE, "ssim" },
800806 { "frame", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 2 }, INT_MIN, INT_MAX, VE, "ssim" },
801807 { "ssim_acc", "SSIM accuracy", OFFSET(ssim_acc), AV_OPT_TYPE_INT, { .i64 = 2 }, 0, 4, VE },
808+ { "gmc", "use GMC", OFFSET(gmc), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE },
802809 { NULL },
803810 };
804811
libavcodec/options_table.h+2−0
@@ -52,7 +52,9 @@ static const AVOption avcodec_options[] = { · 51 unmodified lines
5252 {"qpel", "use 1/4-pel motion compensation", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_QPEL }, INT_MIN, INT_MAX, V|E, "flags"},
5353 {"loop", "use loop filter", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_LOOP_FILTER }, INT_MIN, INT_MAX, V|E, "flags"},
5454 {"qscale", "use fixed qscale", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_QSCALE }, INT_MIN, INT_MAX, 0, "flags"},
55+#if FF_API_GMC
5556 {"gmc", "use gmc", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_GMC }, INT_MIN, INT_MAX, V|E, "flags"},
57+#endif
5658 {"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"},
5759 #if FF_API_INPUT_PRESERVED
5860 {"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"},
libavcodec/version.h+4−1
@@ -30,7 +30,7 @@ · 29 unmodified lines
3030
3131 #define LIBAVCODEC_VERSION_MAJOR 55
3232 #define LIBAVCODEC_VERSION_MINOR 50
33−#define LIBAVCODEC_VERSION_MICRO 1
33+#define LIBAVCODEC_VERSION_MICRO 2
3434
3535 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
3636 LIBAVCODEC_VERSION_MINOR, \
@@ -135,5 +135,8 @@ · 98 unmodified lines
135135 #ifndef FF_API_NORMALIZE_AQP
136136 #define FF_API_NORMALIZE_AQP (LIBAVCODEC_VERSION_MAJOR < 57)
137137 #endif
138+#ifndef FF_API_GMC
139+#define FF_API_GMC (LIBAVCODEC_VERSION_MAJOR < 57)
140+#endif
138141
139142 #endif /* AVCODEC_VERSION_H */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t