aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2014-04-29 07:50:16 +0200
committerAnton Khirnov <anton@khirnov.net>2014-05-01 09:22:47 +0200
commit5fccedaa67390ccddd6347c8e1c71b7664558bcd (patch)
tree5347733f50700535a21440cbec8a5ae1cbca28c1
parent141fdc763c2841b572d29a2ad78513e8d5325870 (diff)
downloadffmpeg-5fccedaa67390ccddd6347c8e1c71b7664558bcd.tar.gz
lavc: deprecate CODEC_FLAG_INPUT_PRESERVED
The addition of reference-counted frames makes it pointless.
-rw-r--r--doc/APIchanges4
-rw-r--r--libavcodec/avcodec.h7
-rw-r--r--libavcodec/mpegvideo_enc.c3
-rw-r--r--libavcodec/options_table.h2
-rw-r--r--libavcodec/version.h3
5 files changed, 14 insertions, 5 deletions
diff --git a/doc/APIchanges b/doc/APIchanges
index 28afc9bd7e..10366b093f 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,10 @@ libavutil: 2013-12-xx
API changes, most recent first:
+2014-04-xx - xxxxxxx - avcodec.h
+ Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing
+ reference-counted frames to encoders.
+
2014-04-xx - xxxxxxx - lavc 55.50.0 - dxva2.h
Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs.
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 2130ea3c2c..919cc76102 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -671,12 +671,13 @@ typedef struct RcOverride{
#define CODEC_FLAG_QPEL 0x0010 ///< Use qpel MC.
#define CODEC_FLAG_GMC 0x0020 ///< Use GMC.
#define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>.
+#if FF_API_INPUT_PRESERVED
/**
- * The parent program guarantees that the input for B-frames containing
- * streams is not written to for at least s->max_b_frames+1 frames, if
- * this is not set the input will be copied.
+ * @deprecated passing reference-counted frames to the encoders replaces this
+ * flag
*/
#define CODEC_FLAG_INPUT_PRESERVED 0x0100
+#endif
#define CODEC_FLAG_PASS1 0x0200 ///< Use internal 2pass ratecontrol in first pass mode.
#define CODEC_FLAG_PASS2 0x0400 ///< Use internal 2pass ratecontrol in second pass mode.
#define CODEC_FLAG_GRAY 0x2000 ///< Only decode/encode grayscale.
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index 9c2b24bff8..a13ff89dfb 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -1081,8 +1081,7 @@ static int estimate_best_b_count(MpegEncContext *s)
c->width = s->width >> scale;
c->height = s->height >> scale;
- c->flags = CODEC_FLAG_QSCALE | CODEC_FLAG_PSNR |
- CODEC_FLAG_INPUT_PRESERVED;
+ c->flags = CODEC_FLAG_QSCALE | CODEC_FLAG_PSNR;
c->flags |= s->avctx->flags & CODEC_FLAG_QPEL;
c->mb_decision = s->avctx->mb_decision;
c->me_cmp = s->avctx->me_cmp;
diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h
index 1006a86aa9..af06370b2e 100644
--- a/libavcodec/options_table.h
+++ b/libavcodec/options_table.h
@@ -54,7 +54,9 @@ static const AVOption avcodec_options[] = {
{"qscale", "use fixed qscale", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_QSCALE }, INT_MIN, INT_MAX, 0, "flags"},
{"gmc", "use gmc", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_GMC }, 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
{"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"},
+#endif
{"pass1", "use internal 2-pass ratecontrol in first pass mode", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_PASS1 }, INT_MIN, INT_MAX, 0, "flags"},
{"pass2", "use internal 2-pass ratecontrol in second pass mode", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_PASS2 }, INT_MIN, INT_MAX, 0, "flags"},
{"gray", "only decode/encode grayscale", 0, AV_OPT_TYPE_CONST, {.i64 = CODEC_FLAG_GRAY }, INT_MIN, INT_MAX, V|E|D, "flags"},
diff --git a/libavcodec/version.h b/libavcodec/version.h
index d82a06802a..33bb10f30a 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -129,5 +129,8 @@
#ifndef FF_API_ARCH_SPARC
#define FF_API_ARCH_SPARC (LIBAVCODEC_VERSION_MAJOR < 56)
#endif
+#ifndef FF_API_INPUT_PRESERVED
+#define FF_API_INPUT_PRESERVED (LIBAVCODEC_VERSION_MAJOR < 57)
+#endif
#endif /* AVCODEC_VERSION_H */