[FFmpeg-cvslog] lavf: move AVStream.probe_data to AVStreamInternal

Anton Khirnov git at videolan.org
Wed Oct 28 16:14:36 EET 2020


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Fri Oct  9 09:22:36 2020 +0200| [30f5180ca6c05ce62b2f7d2ef56b1ce04951aa84] | committer: Anton Khirnov

lavf: move AVStream.probe_data to AVStreamInternal

Those are private fields, no reason to have them exposed in a public
header.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=30f5180ca6c05ce62b2f7d2ef56b1ce04951aa84
---

 libavformat/avformat.h | 2 +-
 libavformat/internal.h | 2 ++
 libavformat/utils.c    | 5 +++--
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 2f0573d561..fc89db1838 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1083,10 +1083,10 @@ typedef struct AVStream {
      * last packet in packet_buffer for this stream when muxing.
      */
     struct AVPacketList *last_in_packet_buffer;
-    AVProbeData probe_data;
 
 #if LIBAVFORMAT_VERSION_MAJOR < 59
     // kept for ABI compatibility only, do not access in any way
+    AVProbeData  unused6;
     int64_t      unused5[16+1];
     void         *unused2;
     int          unused3;
diff --git a/libavformat/internal.h b/libavformat/internal.h
index 23c2ce0dc3..b8e662b96e 100644
--- a/libavformat/internal.h
+++ b/libavformat/internal.h
@@ -336,6 +336,8 @@ struct AVStreamInternal {
      * - decoding: Set by libavformat to calculate sample_aspect_ratio internally
      */
     AVRational display_aspect_ratio;
+
+    AVProbeData probe_data;
 };
 
 #ifdef __GNUC__
diff --git a/libavformat/utils.c b/libavformat/utils.c
index f1d8df636e..503e583ad0 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -676,7 +676,7 @@ static void force_codec_ids(AVFormatContext *s, AVStream *st)
 static int probe_codec(AVFormatContext *s, AVStream *st, const AVPacket *pkt)
 {
     if (st->internal->request_probe>0) {
-        AVProbeData *pd = &st->probe_data;
+        AVProbeData *pd = &st->internal->probe_data;
         int end;
         av_log(s, AV_LOG_DEBUG, "probing stream %d pp:%d\n", st->index, st->probe_packets);
         --st->probe_packets;
@@ -4343,6 +4343,8 @@ static void free_stream(AVStream **pst)
         av_bsf_free(&st->internal->bsfc);
         av_freep(&st->internal->priv_pts);
         av_freep(&st->internal->index_entries);
+        av_freep(&st->internal->probe_data.buf);
+
         av_bsf_free(&st->internal->extract_extradata.bsf);
         av_packet_free(&st->internal->extract_extradata.pkt);
 
@@ -4354,7 +4356,6 @@ static void free_stream(AVStream **pst)
 
     av_dict_free(&st->metadata);
     avcodec_parameters_free(&st->codecpar);
-    av_freep(&st->probe_data.buf);
 #if FF_API_LAVF_AVCTX
 FF_DISABLE_DEPRECATION_WARNINGS
     avcodec_free_context(&st->codec);



More information about the ffmpeg-cvslog mailing list