[FFmpeg-devel] [PATCH 3/5] avcodec/mpegvideo: Schedule unused, deprecated rc_strategy for removal

Andreas Rheinhardt andreas.rheinhardt at gmail.com
Mon Mar 1 17:31:42 EET 2021


Andreas Rheinhardt:
> Deprecated in d05c3b9ceeb9d00d4500c376448230e45f6ab108.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> ---
> Here is my current WIP branch for the bump for anyone who is interested:
> https://github.com/mkver/FFmpeg/commits/bump
> 
>  libavcodec/mpegvideo.h | 14 +++++++++++---
>  libavcodec/version.h   |  3 +++
>  2 files changed, 14 insertions(+), 3 deletions(-)
> 
> diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h
> index 5f6e1da133..5a99c19656 100644
> --- a/libavcodec/mpegvideo.h
> +++ b/libavcodec/mpegvideo.h
> @@ -369,7 +369,9 @@ typedef struct MpegEncContext {
>      uint8_t *mb_info_ptr;
>      int mb_info_size;
>      int ehc_mode;
> +#if FF_API_MPV_RC_STRATEGY
>      int rc_strategy;                ///< deprecated
> +#endif
>  
>      /* H.263+ specific */
>      int umvplus;                    ///< == H.263+ && unrestricted_mv
> @@ -615,6 +617,14 @@ typedef struct MpegEncContext {
>  #ifndef FF_MPV_OFFSET
>  #define FF_MPV_OFFSET(x) offsetof(MpegEncContext, x)
>  #endif
> +#if FF_API_MPV_RC_STRATEGY
> +#define FF_MPV_RC_STRATEGY_OPTS \
> +{"rc_strategy", "ratecontrol method",                               FF_MPV_OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" },   \
> +    { "ffmpeg", "deprecated, does nothing", 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" }, \
> +    { "xvid",   "deprecated, does nothing", 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" },
> +#else
> +#define FF_MPV_RC_STRATEGY_OPTS
> +#endif
>  #define FF_MPV_OPT_FLAGS (AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM)
>  #define FF_MPV_COMMON_OPTS \
>  FF_MPV_OPT_CMP_FUNC, \
> @@ -648,9 +658,6 @@ FF_MPV_OPT_CMP_FUNC, \
>  {"lmax", "maximum Lagrange factor (VBR)",                           FF_MPV_OFFSET(lmax), AV_OPT_TYPE_INT, {.i64 = 31*FF_QP2LAMBDA }, 0, INT_MAX, FF_MPV_OPT_FLAGS },            \
>  {"ibias", "intra quant bias",                                       FF_MPV_OFFSET(intra_quant_bias), AV_OPT_TYPE_INT, {.i64 = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },   \
>  {"pbias", "inter quant bias",                                       FF_MPV_OFFSET(inter_quant_bias), AV_OPT_TYPE_INT, {.i64 = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },   \
> -{"rc_strategy", "ratecontrol method",                               FF_MPV_OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" },   \
> -    { "ffmpeg", "deprecated, does nothing", 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" }, \
> -    { "xvid",   "deprecated, does nothing", 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED, "rc_strategy" }, \
>  {"motion_est", "motion estimation algorithm",                       FF_MPV_OFFSET(motion_est), AV_OPT_TYPE_INT, {.i64 = FF_ME_EPZS }, FF_ME_ZERO, FF_ME_XONE, FF_MPV_OPT_FLAGS, "motion_est" },   \
>  { "zero", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_ZERO }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
>  { "epzs", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_EPZS }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
> @@ -671,6 +678,7 @@ FF_MPV_OPT_CMP_FUNC, \
>  {"mepre", "pre motion estimation", FF_MPV_OFFSET(me_pre), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
>  {"intra_penalty", "Penalty for intra blocks in block decision", FF_MPV_OFFSET(intra_penalty), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX/2, FF_MPV_OPT_FLAGS }, \
>  {"a53cc", "Use A53 Closed Captions (if available)", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, {.i64 = 1}, 0, 1, FF_MPV_OPT_FLAGS }, \
> +FF_MPV_RC_STRATEGY_OPTS
>  
>  extern const AVOption ff_mpv_generic_options[];
>  
> diff --git a/libavcodec/version.h b/libavcodec/version.h
> index 516411b4b2..488def4c23 100644
> --- a/libavcodec/version.h
> +++ b/libavcodec/version.h
> @@ -147,6 +147,9 @@
>  #ifndef FF_API_AVCODEC_PIX_FMT
>  #define FF_API_AVCODEC_PIX_FMT     (LIBAVCODEC_VERSION_MAJOR < 59)
>  #endif
> +#ifndef FF_API_MPV_RC_STRATEGY
> +#define FF_API_MPV_RC_STRATEGY     (LIBAVCODEC_VERSION_MAJOR < 59)
> +#endif
>  #ifndef FF_API_THREAD_SAFE_CALLBACKS
>  #define FF_API_THREAD_SAFE_CALLBACKS (LIBAVCODEC_VERSION_MAJOR < 60)
>  #endif
> 
Will apply this tomorrow unless there are objections.

- Andreas


More information about the ffmpeg-devel mailing list