Those are used for average framerate estimation.
For streams with AV_DISPOSITION_ATTACHED_PIC disposition, this packet will contain the attached picture.
Average framerate
@deprecated use the codecpar struct instead
Number of frames that have been demuxed during avformat_find_stream_info()
Codec parameters associated with this stream. Allocated and freed by libavformat in avformat_new_stream() and avformat_free_context() respectively.
< Selects which packets can be discarded at will and do not need to be demuxed.
display aspect ratio (0 if unknown) - encoding: unused - decoding: Set by libavformat to calculate sample_aspect_ratio internally
< AV_DISPOSITION_* bit field
Decoding: duration of the stream, in stream time base. If a source file does not specify a duration, but does specify a bitrate, this value will be estimated from bitrate and file size.
Flags for the user to detect events happening on the stream. Flags must be cleared by the user once the event has been handled. A combination of AVSTREAM_EVENT_FLAG_*.
If not 0, the first audio sample that should be discarded from the stream. This is broken by design (needs global sample count), but can't be avoided for broken by design formats such as mp3 with ad-hoc gapless audio support.
Timestamp corresponding to the last dts sync point.
Format-specific stream ID. decoding: set by libavformat encoding: set by the user, replaced by libavformat if left unset
< stream index in AVFormatContext
< Only used if the format does not support seeking natively.
Internal data to inject global side data
An opaque field for libavformat internal usage. Must not be accessed in any way by callers.
The sample after last sample that is intended to be discarded after first_discard_sample. Works on frame boundaries only. Used to prevent early EOF if the gapless info is broken (considered concatenated mp3s).
Internal data to analyze DTS and detect faulty mpeg streams
last packet in packet_buffer for this stream when muxing.
Timestamp offset added to timestamps before muxing NOT PART OF PUBLIC API
Number of internally decoded frames, used internally in libavformat, do not access its lifetime differs from info which is why it is not in that structure.
< number of frames in this stream if known or 0
The number of elements in the AVStream.side_data array.
Number of packets to buffer for codec probing
Details of the MPEG-TS program which created this stream.
Internal data to generate dts from pts
Options for behavior, when a wrap is detected.
< number of bits in pts (used for wrapping control)
Internal data to check for wrapping of the time stamp
Real base framerate of the stream. This is the lowest framerate with which all timestamps can be represented accurately (it is the least common multiple of all framerates in the stream). Note, this value is just a guess! For example, if the time base is 1/90000 and all frames have either approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
String containing pairs of key and values describing recommended encoder configuration. Pairs are separated by ','. Keys are separated from values by '='.
stream probing state -1 -> probing finished 0 -> no probing requested rest -> perform probing with request_probe being the minimum score to accept. NOT PART OF PUBLIC API
sample aspect ratio (0 if unknown) - encoding: Set by user. - decoding: Set by libavformat.
An array of side data that applies to the whole stream (i.e. the container does not allow it to change between packets).
Number of samples to skip at the start of the frame decoded from the next packet.
Indicates that everything up to the next keyframe should be discarded.
If not 0, the number of samples that should be skipped from the start of the stream (the samples are removed from packets with pts==0, which also assumes negative timestamps do not happen). Intended for use with formats such as mp3 with ad-hoc gapless audio support.
Decoding: pts of the first frame of the stream in presentation order, in stream time base. Only set this if you are absolutely 100% sure that the value you set it to really is the pts of the first frame. This may be undefined (AV_NOPTS_VALUE). @note The ASF header does NOT contain a correct start_time the ASF demuxer must NOT set this.
Stream Identifier This is the MPEG-TS stream identifier +1 0 means unknown
This is the fundamental unit of time (in seconds) in terms of which frame timestamps are represented.
Internal data to prevent doing update_initial_durations() twice
Stream structure. New fields can be added to the end with minor version bumps. Removal, reordering and changes to existing fields require a major version bump. sizeof(AVStream) must not be used outside libav*.