aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/avformat_internal.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2024-10-13 10:31:51 +0200
committerAnton Khirnov <anton@khirnov.net>2024-10-16 16:29:12 +0200
commitcb80ec0b6cd7f954839427b4c86958d1475f2df4 (patch)
tree87f883d47797685932769337434ff825649e8e2b /libavformat/avformat_internal.h
parent6d05e7e314207209200566f5b6fb0a77bc968028 (diff)
downloadffmpeg-cb80ec0b6cd7f954839427b4c86958d1475f2df4.tar.gz
lavf: move demuxing-specific fields from FFFormatContext to FormatContextInternal
Diffstat (limited to 'libavformat/avformat_internal.h')
-rw-r--r--libavformat/avformat_internal.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/libavformat/avformat_internal.h b/libavformat/avformat_internal.h
index c9c8ab60c5..b114dba659 100644
--- a/libavformat/avformat_internal.h
+++ b/libavformat/avformat_internal.h
@@ -63,6 +63,37 @@ typedef struct FormatContextInternal {
int missing_ts_warning;
#endif
};
+
+ // demuxing only
+ struct {
+ /**
+ * Raw packets from the demuxer, prior to parsing and decoding.
+ * This buffer is used for buffering packets until the codec can
+ * be identified, as parsing cannot be done without knowing the
+ * codec.
+ */
+ PacketList raw_packet_buffer;
+
+ /**
+ * Sum of the size of packets in raw_packet_buffer, in bytes.
+ */
+ int raw_packet_buffer_size;
+
+ /**
+ * Packets split by the parser get queued here.
+ */
+ PacketList parse_queue;
+
+ /**
+ * Contexts and child contexts do not contain a metadata option
+ */
+ int metafree;
+
+ /**
+ * Set if chapter ids are strictly monotonic.
+ */
+ int chapter_ids_monotonic;
+ };
};
#if FF_API_LAVF_SHORTEST