From 25b32586566f285d797737863c97a1c5c9c84e2b Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Wed, 19 Feb 2014 12:10:32 +0100 Subject: lavf: add an AVStream field for exporting stream-global side data --- libavformat/avformat.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'libavformat/avformat.h') diff --git a/libavformat/avformat.h b/libavformat/avformat.h index ec9c2627cb..02ee6ba178 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -755,6 +755,28 @@ typedef struct AVStream { */ AVPacket attached_pic; + /** + * An array of side data that applies to the whole stream (i.e. the + * container does not allow it to change between packets). + * + * There may be no overlap between the side data in this array and side data + * in the packets. I.e. a given side data is either exported by the muxer + * (demuxing) / set by the caller (muxing) in this array, then it never + * appears in the packets, or the side data is exported / sent through + * the packets (always in the first packet where the value becomes known or + * changes), then it does not appear in this array. + * + * - demuxing: Set by libavformat when the stream is created. + * - muxing: May be set by the caller before avformat_write_header(). + * + * Freed by libavformat in avformat_free_context(). + */ + AVPacketSideData *side_data; + /** + * The number of elements in the AVStream.side_data array. + */ + int nb_side_data; + /***************************************************************** * All fields below this line are not part of the public API. They * may not be used outside of libavformat and can be changed and -- cgit v1.2.3