[FFmpeg-devel] [PATCH] avcodec: deprecate getters and setters for AVCodecContext and AVCodec fields
James Almer
jamrial at gmail.com
Mon Nov 13 05:16:06 EET 2017
The fields can be accessed directly, so these are not needed anymore.
Signed-off-by: James Almer <jamrial at 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 */
--
2.14.2
More information about the ffmpeg-devel
mailing list