Quoting Vittorio Giovara (2015-07-07 13:12:32)
> This option is extremely codec specific and only a few codecs employ it.
> Move it to codec private options instead: mpegenc family only support 3
> values, xavs and x264 use 5, while xvid has a different metric (0-6).
> 
> Signed-off-by: Vittorio Giovara <[email protected]>
> ---
> Moved the option to codec private as requested.
> Vittorio
> 
>  doc/encoders.texi          |  2 -
>  libavcodec/avcodec.h       | 14 ++++---
>  libavcodec/libx264.c       | 23 ++++++------
>  libavcodec/libxavs.c       | 30 +++++----------
>  libavcodec/libxvid.c       | 21 +++++------
>  libavcodec/motion_est.c    | 94 
> +++++++++++++++++++---------------------------
>  libavcodec/motion_est.h    |  4 ++
>  libavcodec/mpegvideo.h     |  6 ++-
>  libavcodec/mpegvideo_enc.c |  2 -
>  libavcodec/options_table.h |  2 +
>  libavcodec/svq1enc.c       | 21 ++++++++++-
>  libavcodec/svq1enc.h       |  2 +
>  libavcodec/version.h       |  5 ++-
>  13 files changed, 115 insertions(+), 111 deletions(-)
> 
> diff --git a/doc/encoders.texi b/doc/encoders.texi
> index 94d8340..779a469 100644
> --- a/doc/encoders.texi
> +++ b/doc/encoders.texi
> @@ -603,8 +603,6 @@ options follow the Libav ones.
>  @tab Noise reduction.
>  @item me_range          @tab merange
>  @tab Maximum range of the motion search in pixels.
> -@item me_method         @tab me
> -@tab Full-pixel motion estimation method.
>  @item subq              @tab subme
>  @tab Sub-pixel motion estimation method.
>  @item b_strategy        @tab b-adapt
> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> index e8be196..3da9f9a 100644
> --- a/libavcodec/avcodec.h
> +++ b/libavcodec/avcodec.h
> @@ -548,7 +548,9 @@ typedef struct AVCodecDescriptor {
>  /**
>   * @ingroup lavc_encoding
>   * motion estimation type.
> + * @deprecated use codec private option instead
>   */
> +#if FF_API_MOTION_EST
>  enum Motion_Est_ID {
>      ME_ZERO = 1,    ///< no search, that is use 0,0 vector whenever one is 
> needed
>      ME_FULL,
> @@ -560,6 +562,7 @@ enum Motion_Est_ID {
>      ME_UMH,         ///< uneven multi-hexagon search
>      ME_TESA,        ///< transformed exhaustive search algorithm
>  };
> +#endif
>  
>  /**
>   * @ingroup lavc_decoding
> @@ -1274,14 +1277,13 @@ typedef struct AVCodecContext {
>       */
>      enum AVPixelFormat pix_fmt;
>  
> +#if FF_API_MOTION_EST
>      /**
> -     * Motion estimation algorithm used for video coding.
> -     * 1 (zero), 2 (full), 3 (log), 4 (phods), 5 (epzs), 6 (x1), 7 (hex),
> -     * 8 (umh), 10 (tesa) [7, 8, 10 are x264 specific]
> -     * - encoding: MUST be set by user.
> -     * - decoding: unused
> +     * This option does nothing

You cannot break compatibility just like this. Especially since it's not
that hard to keep it working until the next bump.

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to