Browse Source

fftools/ffmpeg_mux: make OutputStream.pkt private

It is no longer used outside of muxing code.
Anton Khirnov 1 year ago
parent
commit
141d11cb3c
4 changed files with 6 additions and 5 deletions
  1. 0 1
      fftools/ffmpeg.h
  2. 2 2
      fftools/ffmpeg_mux.c
  3. 2 0
      fftools/ffmpeg_mux.h
  4. 2 2
      fftools/ffmpeg_mux_init.c

+ 0 - 1
fftools/ffmpeg.h

@@ -551,7 +551,6 @@ typedef struct OutputStream {
 
     Encoder *enc;
     AVCodecContext *enc_ctx;
-    AVPacket *pkt;
 
     uint64_t nb_frames_dup;
     uint64_t nb_frames_drop;

+ 2 - 2
fftools/ffmpeg_mux.c

@@ -389,7 +389,7 @@ void of_streamcopy(OutputStream *ost, const AVPacket *pkt, int64_t dts)
     MuxStream  *ms = ms_from_ost(ost);
     int64_t start_time = (of->start_time == AV_NOPTS_VALUE) ? 0 : of->start_time;
     int64_t ost_tb_start_time = av_rescale_q(start_time, AV_TIME_BASE_Q, ost->mux_timebase);
-    AVPacket *opkt = ost->pkt;
+    AVPacket *opkt = ms->pkt;
 
     av_packet_unref(opkt);
 
@@ -862,7 +862,7 @@ static void ost_free(OutputStream **post)
     av_bsf_free(&ms->bsf_ctx);
     av_packet_free(&ms->bsf_pkt);
 
-    av_packet_free(&ost->pkt);
+    av_packet_free(&ms->pkt);
     av_dict_free(&ost->encoder_opts);
 
     av_freep(&ost->kf.pts);

+ 2 - 0
fftools/ffmpeg_mux.h

@@ -46,6 +46,8 @@ typedef struct MuxStream {
     AVBSFContext *bsf_ctx;
     AVPacket     *bsf_pkt;
 
+    AVPacket     *pkt;
+
     EncStats stats;
 
     int64_t max_frames;

+ 2 - 2
fftools/ffmpeg_mux_init.c

@@ -1064,8 +1064,8 @@ static OutputStream *ost_add(Muxer *mux, const OptionsContext *o,
     else av_assert0(0);
     av_log(ost, AV_LOG_VERBOSE, "\n");
 
-    ost->pkt = av_packet_alloc();
-    if (!ost->pkt)
+    ms->pkt = av_packet_alloc();
+    if (!ms->pkt)
         report_and_exit(AVERROR(ENOMEM));
 
     if (ost->enc_ctx) {