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

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


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

lavf: move AVStream.interleaver_chunk_* 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=7e87288f73242dac6344e65f892569102893fac0
---

 libavformat/avformat.h |  3 ---
 libavformat/internal.h |  3 +++
 libavformat/mux.c      | 16 ++++++++--------
 3 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 8c4ae9e6e5..ae32f78393 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1106,9 +1106,6 @@ typedef struct AVStream {
     int pmt_version;
     int pmt_stream_idx;
 
-    int64_t interleaver_chunk_size;
-    int64_t interleaver_chunk_duration;
-
     /**
      * An opaque field for libavformat internal usage.
      * Must not be accessed in any way by callers.
diff --git a/libavformat/internal.h b/libavformat/internal.h
index d8ceebb26e..87d62c51b2 100644
--- a/libavformat/internal.h
+++ b/libavformat/internal.h
@@ -225,6 +225,9 @@ struct AVStreamInternal {
 
     } *info;
 
+    int64_t interleaver_chunk_size;
+    int64_t interleaver_chunk_duration;
+
     /**
      * stream probing state
      * -1   -> probing finished
diff --git a/libavformat/mux.c b/libavformat/mux.c
index 8a2d6370f6..8a53f0feeb 100644
--- a/libavformat/mux.c
+++ b/libavformat/mux.c
@@ -839,19 +839,19 @@ int ff_interleave_add_packet(AVFormatContext *s, AVPacket *pkt,
 
     if (chunked) {
         uint64_t max= av_rescale_q_rnd(s->max_chunk_duration, AV_TIME_BASE_Q, st->time_base, AV_ROUND_UP);
-        st->interleaver_chunk_size     += pkt->size;
-        st->interleaver_chunk_duration += pkt->duration;
-        if (   (s->max_chunk_size && st->interleaver_chunk_size > s->max_chunk_size)
-            || (max && st->interleaver_chunk_duration           > max)) {
-            st->interleaver_chunk_size = 0;
+        st->internal->interleaver_chunk_size     += pkt->size;
+        st->internal->interleaver_chunk_duration += pkt->duration;
+        if (   (s->max_chunk_size && st->internal->interleaver_chunk_size > s->max_chunk_size)
+            || (max && st->internal->interleaver_chunk_duration           > max)) {
+            st->internal->interleaver_chunk_size = 0;
             pkt->flags |= CHUNK_START;
-            if (max && st->interleaver_chunk_duration > max) {
+            if (max && st->internal->interleaver_chunk_duration > max) {
                 int64_t syncoffset = (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO)*max/2;
                 int64_t syncto = av_rescale(pkt->dts + syncoffset, 1, max)*max - syncoffset;
 
-                st->interleaver_chunk_duration += (pkt->dts - syncto)/8 - max;
+                st->internal->interleaver_chunk_duration += (pkt->dts - syncto)/8 - max;
             } else
-                st->interleaver_chunk_duration = 0;
+                st->internal->interleaver_chunk_duration = 0;
         }
     }
     if (*next_point) {



More information about the ffmpeg-cvslog mailing list