[FFmpeg-cvslog] fftools/ffmpeg_demux: move InputStream.streamcopy_needed to private data

Anton Khirnov git at videolan.org
Mon May 15 15:16:33 EEST 2023


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sun May  7 16:19:38 2023 +0200| [6b0c984f0dfe632ec0d59fb12c8880240c5208c0] | committer: Anton Khirnov

fftools/ffmpeg_demux: move InputStream.streamcopy_needed to private data

It is no longer used outside of ffmpeg_demux.

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

 fftools/ffmpeg.h       | 1 -
 fftools/ffmpeg_demux.c | 8 ++++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h
index 559381531e..7eb6301c74 100644
--- a/fftools/ffmpeg.h
+++ b/fftools/ffmpeg.h
@@ -343,7 +343,6 @@ typedef struct InputStream {
     int discard;             /* true if stream data should be discarded */
     int user_set_discard;
     int decoding_needed;     /* non zero if the packets must be decoded in 'raw_fifo', see DECODING_FOR_* */
-    int streamcopy_needed;
 #define DECODING_FOR_OST    1
 #define DECODING_FOR_FILTER 2
     // should attach FrameData as opaque_ref after decoding
diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c
index 4a04b3e574..ccf1a70d5e 100644
--- a/fftools/ffmpeg_demux.c
+++ b/fftools/ffmpeg_demux.c
@@ -60,6 +60,8 @@ typedef struct DemuxStream {
 
     double ts_scale;
 
+    int streamcopy_needed;
+
     int wrap_correction_done;
     int saw_first_ts;
     ///< dts of the first packet read for this stream (in AV_TIME_BASE units)
@@ -346,7 +348,7 @@ static int ist_dts_update(DemuxStream *ds, AVPacket *pkt)
     }
 
     av_assert0(!pkt->opaque_ref);
-    if (ist->streamcopy_needed) {
+    if (ds->streamcopy_needed) {
         DemuxPktData *pd;
 
         pkt->opaque_ref = av_buffer_allocz(sizeof(*pd));
@@ -806,10 +808,12 @@ void ifile_close(InputFile **pf)
 
 static void ist_use(InputStream *ist, int decoding_needed)
 {
+    DemuxStream *ds = ds_from_ist(ist);
+
     ist->discard          = 0;
     ist->st->discard      = ist->user_set_discard;
     ist->decoding_needed |= decoding_needed;
-    ist->streamcopy_needed |= !decoding_needed;
+    ds->streamcopy_needed |= !decoding_needed;
 
     if (decoding_needed && !avcodec_is_open(ist->dec_ctx)) {
         int ret = dec_open(ist);



More information about the ffmpeg-cvslog mailing list