diff mbox series

[FFmpeg-devel,3/4] lavf: deprecate av_stream_get_parser()

Message ID 20220818134605.12583-3-anton@khirnov.net
State New
Headers show
Series [FFmpeg-devel,1/4] lavf: deprecate av_stream_get_end_pts() | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Anton Khirnov Aug. 18, 2022, 1:46 p.m. UTC
It retrieves an AVStream's internal parser, whose state is not
well-defined from the caller's point of view. This function was added
for ffmpeg.c, which is no longer using it.

As there is no valid use for this function, deprecate it without
replacement.
---
 doc/APIchanges              | 3 ++-
 libavformat/avformat.h      | 3 +++
 libavformat/demux_utils.c   | 2 ++
 libavformat/version_major.h | 1 +
 4 files changed, 8 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/doc/APIchanges b/doc/APIchanges
index bc355b59ed..078f9de223 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,7 +15,8 @@  libavutil:     2021-04-27
 API changes, most recent first:
 
 2022-08-xx - xxxxxxxxxx - lavf 59 - avformat.h
-  Deprecate av_stream_get_end_pts() without replacement.
+  Deprecate av_stream_get_end_pts() and av_stream_get_parser()
+  without replacement.
 
 2022-08-07 - e95b08a7dd - lavu 57.33.101 - pixfmt.h
   Add AV_PIX_FMT_RGBAF16{BE,LE} pixel formats.
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 9d46875cce..7c36972735 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1119,7 +1119,10 @@  typedef struct AVStream {
     int pts_wrap_bits;
 } AVStream;
 
+#if FF_API_STREAM_GET_PARSER
+attribute_deprecated
 struct AVCodecParserContext *av_stream_get_parser(const AVStream *s);
+#endif
 
 #if FF_API_GET_END_PTS
 /**
diff --git a/libavformat/demux_utils.c b/libavformat/demux_utils.c
index 56cc6e15d8..d8cbcb630c 100644
--- a/libavformat/demux_utils.c
+++ b/libavformat/demux_utils.c
@@ -29,10 +29,12 @@ 
 #include "demux.h"
 #include "internal.h"
 
+#if FF_API_STREAM_GET_PARSER
 struct AVCodecParserContext *av_stream_get_parser(const AVStream *st)
 {
     return cffstream(st)->parser;
 }
+#endif
 
 void avpriv_stream_set_need_parsing(AVStream *st, enum AVStreamParseType type)
 {
diff --git a/libavformat/version_major.h b/libavformat/version_major.h
index 099a17873f..2747767768 100644
--- a/libavformat/version_major.h
+++ b/libavformat/version_major.h
@@ -47,6 +47,7 @@ 
 #define FF_HLS_TS_OPTIONS               (LIBAVFORMAT_VERSION_MAJOR < 60)
 #define FF_API_AVSTREAM_CLASS           (LIBAVFORMAT_VERSION_MAJOR > 59)
 #define FF_API_GET_END_PTS              (LIBAVFORMAT_VERSION_MAJOR < 60)
+#define FF_API_STREAM_GET_PARSER        (LIBAVFORMAT_VERSION_MAJOR < 60)
 
 
 #define FF_API_R_FRAME_RATE            1