[FFmpeg-devel] avcodec: deprecate getters and setters for AVCodecContext and AVCodec fields

Submitted by James Almer on Nov. 13, 2017, 3:16 a.m.

Details

Message ID 20171113031606.3604-1-jamrial@gmail.com
State New
Headers show

Commit Message

James Almer Nov. 13, 2017, 3:16 a.m.
The fields can be accessed directly, so these are not needed anymore.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavcodec/avcodec.h | 20 ++++++++++++++++++++
 libavcodec/utils.c   |  2 ++
 libavcodec/version.h |  3 +++
 3 files changed, 25 insertions(+)

Comments

James Almer Nov. 15, 2017, 4:20 a.m.
On 11/13/2017 12:16 AM, James Almer wrote:
> The fields can be accessed directly, so these are not needed anymore.
> 
> Signed-off-by: James Almer <jamrial@gmail.com>
> ---
>  libavcodec/avcodec.h | 20 ++++++++++++++++++++
>  libavcodec/utils.c   |  2 ++
>  libavcodec/version.h |  3 +++
>  3 files changed, 25 insertions(+)
> 
> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> index 8c76c9f908..9fda5dc270 100644
> --- a/libavcodec/avcodec.h
> +++ b/libavcodec/avcodec.h
> @@ -3235,22 +3235,39 @@ typedef struct AVCodecContext {
>      int apply_cropping;
>  } AVCodecContext;
>  
> +#if FF_API_CODEC_GET_SET
> +/**
> + * Accessors for some AVCodecContext fields. These used to be provided for ABI
> + * compatibility, and do not need to be used anymore.
> + */
> +attribute_deprecated
>  AVRational av_codec_get_pkt_timebase         (const AVCodecContext *avctx);
> +attribute_deprecated
>  void       av_codec_set_pkt_timebase         (AVCodecContext *avctx, AVRational val);
>  
> +attribute_deprecated
>  const AVCodecDescriptor *av_codec_get_codec_descriptor(const AVCodecContext *avctx);
> +attribute_deprecated
>  void                     av_codec_set_codec_descriptor(AVCodecContext *avctx, const AVCodecDescriptor *desc);
>  
> +attribute_deprecated
>  unsigned av_codec_get_codec_properties(const AVCodecContext *avctx);
>  
> +attribute_deprecated
>  int  av_codec_get_lowres(const AVCodecContext *avctx);
> +attribute_deprecated
>  void av_codec_set_lowres(AVCodecContext *avctx, int val);
>  
> +attribute_deprecated
>  int  av_codec_get_seek_preroll(const AVCodecContext *avctx);
> +attribute_deprecated
>  void av_codec_set_seek_preroll(AVCodecContext *avctx, int val);
>  
> +attribute_deprecated
>  uint16_t *av_codec_get_chroma_intra_matrix(const AVCodecContext *avctx);
> +attribute_deprecated
>  void av_codec_set_chroma_intra_matrix(AVCodecContext *avctx, uint16_t *val);
> +#endif
>  
>  /**
>   * AVProfile.
> @@ -3387,7 +3404,10 @@ typedef struct AVCodec {
>      const char *bsfs;
>  } AVCodec;
>  
> +#if FF_API_CODEC_GET_SET
> +attribute_deprecated
>  int av_codec_get_max_lowres(const AVCodec *codec);
> +#endif
>  
>  struct MpegEncContext;
>  
> diff --git a/libavcodec/utils.c b/libavcodec/utils.c
> index b3a578110b..e50de6e89b 100644
> --- a/libavcodec/utils.c
> +++ b/libavcodec/utils.c
> @@ -552,6 +552,7 @@ enum AVPixelFormat avpriv_find_pix_fmt(const PixelFormatTag *tags,
>      return AV_PIX_FMT_NONE;
>  }
>  
> +#if FF_API_CODEC_GET_SET
>  MAKE_ACCESSORS(AVCodecContext, codec, AVRational, pkt_timebase)
>  MAKE_ACCESSORS(AVCodecContext, codec, const AVCodecDescriptor *, codec_descriptor)
>  MAKE_ACCESSORS(AVCodecContext, codec, int, lowres)
> @@ -567,6 +568,7 @@ int av_codec_get_max_lowres(const AVCodec *codec)
>  {
>      return codec->max_lowres;
>  }
> +#endif
>  
>  int avpriv_codec_get_cap_skip_frame_fill_param(const AVCodec *codec){
>      return !!(codec->caps_internal & FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM);
> diff --git a/libavcodec/version.h b/libavcodec/version.h
> index 9c17e5716d..f4872267f1 100644
> --- a/libavcodec/version.h
> +++ b/libavcodec/version.h
> @@ -120,6 +120,9 @@
>  #ifndef FF_API_GETCHROMA
>  #define FF_API_GETCHROMA         (LIBAVCODEC_VERSION_MAJOR < 59)
>  #endif
> +#ifndef FF_API_CODEC_GET_SET
> +#define FF_API_CODEC_GET_SET     (LIBAVCODEC_VERSION_MAJOR < 59)
> +#endif
>  
>  
>  #endif /* AVCODEC_VERSION_H */

Pushed alongside some patches removing their usage (i think i didn't
miss any).

Patch hide | download patch | download mbox

diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 8c76c9f908..9fda5dc270 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -3235,22 +3235,39 @@  typedef struct AVCodecContext {
     int apply_cropping;
 } AVCodecContext;
 
+#if FF_API_CODEC_GET_SET
+/**
+ * Accessors for some AVCodecContext fields. These used to be provided for ABI
+ * compatibility, and do not need to be used anymore.
+ */
+attribute_deprecated
 AVRational av_codec_get_pkt_timebase         (const AVCodecContext *avctx);
+attribute_deprecated
 void       av_codec_set_pkt_timebase         (AVCodecContext *avctx, AVRational val);
 
+attribute_deprecated
 const AVCodecDescriptor *av_codec_get_codec_descriptor(const AVCodecContext *avctx);
+attribute_deprecated
 void                     av_codec_set_codec_descriptor(AVCodecContext *avctx, const AVCodecDescriptor *desc);
 
+attribute_deprecated
 unsigned av_codec_get_codec_properties(const AVCodecContext *avctx);
 
+attribute_deprecated
 int  av_codec_get_lowres(const AVCodecContext *avctx);
+attribute_deprecated
 void av_codec_set_lowres(AVCodecContext *avctx, int val);
 
+attribute_deprecated
 int  av_codec_get_seek_preroll(const AVCodecContext *avctx);
+attribute_deprecated
 void av_codec_set_seek_preroll(AVCodecContext *avctx, int val);
 
+attribute_deprecated
 uint16_t *av_codec_get_chroma_intra_matrix(const AVCodecContext *avctx);
+attribute_deprecated
 void av_codec_set_chroma_intra_matrix(AVCodecContext *avctx, uint16_t *val);
+#endif
 
 /**
  * AVProfile.
@@ -3387,7 +3404,10 @@  typedef struct AVCodec {
     const char *bsfs;
 } AVCodec;
 
+#if FF_API_CODEC_GET_SET
+attribute_deprecated
 int av_codec_get_max_lowres(const AVCodec *codec);
+#endif
 
 struct MpegEncContext;
 
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index b3a578110b..e50de6e89b 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -552,6 +552,7 @@  enum AVPixelFormat avpriv_find_pix_fmt(const PixelFormatTag *tags,
     return AV_PIX_FMT_NONE;
 }
 
+#if FF_API_CODEC_GET_SET
 MAKE_ACCESSORS(AVCodecContext, codec, AVRational, pkt_timebase)
 MAKE_ACCESSORS(AVCodecContext, codec, const AVCodecDescriptor *, codec_descriptor)
 MAKE_ACCESSORS(AVCodecContext, codec, int, lowres)
@@ -567,6 +568,7 @@  int av_codec_get_max_lowres(const AVCodec *codec)
 {
     return codec->max_lowres;
 }
+#endif
 
 int avpriv_codec_get_cap_skip_frame_fill_param(const AVCodec *codec){
     return !!(codec->caps_internal & FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM);
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 9c17e5716d..f4872267f1 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -120,6 +120,9 @@ 
 #ifndef FF_API_GETCHROMA
 #define FF_API_GETCHROMA         (LIBAVCODEC_VERSION_MAJOR < 59)
 #endif
+#ifndef FF_API_CODEC_GET_SET
+#define FF_API_CODEC_GET_SET     (LIBAVCODEC_VERSION_MAJOR < 59)
+#endif
 
 
 #endif /* AVCODEC_VERSION_H */