FFmpeg
Data Fields
FFFormatContext Struct Reference

#include <internal.h>

Data Fields

AVFormatContext pub
 The public context. More...
 
int nb_interleaved_streams
 Number of streams relevant for interleaving. More...
 
int(* interleave_packet )(struct AVFormatContext *s, AVPacket *pkt, int flush, int has_packet)
 The interleavement function in use. More...
 
PacketList packet_buffer
 This buffer is only needed when packets were already buffered but not decoded, for example to get the codec parameters in MPEG streams. More...
 
int64_t data_offset
 offset of the first packet More...
 
PacketList raw_packet_buffer
 Raw packets from the demuxer, prior to parsing and decoding. More...
 
PacketList parse_queue
 Packets split by the parser get queued here. More...
 
AVPacketparse_pkt
 The generic code uses this as a temporary packet to parse packets or for muxing, especially flushing. More...
 
AVPacketpkt
 Used to hold temporary packets for the generic demuxing code. More...
 
int raw_packet_buffer_size
 Sum of the size of packets in raw_packet_buffer, in bytes. More...
 
int64_t offset
 Offset to remap timestamps to be non-negative. More...
 
AVRational offset_timebase
 Timebase for the timestamp offset. More...
 
int inject_global_side_data
 
int avoid_negative_ts_use_pts
 
int64_t shortest_end
 Timestamp of the end of the shortest stream. More...
 
int initialized
 Whether or not avformat_init_output has already been called. More...
 
int streams_initialized
 Whether or not avformat_init_output fully initialized streams. More...
 
AVDictionaryid3v2_meta
 ID3v2 tag useful for MP3 demuxing. More...
 
int prefer_codec_framerate
 
int chapter_ids_monotonic
 Set if chapter ids are strictly monotonic. More...
 

Detailed Description

Definition at line 73 of file internal.h.

Field Documentation

◆ pub

AVFormatContext FFFormatContext::pub

The public context.

Definition at line 77 of file internal.h.

Referenced by avformat_alloc_context().

◆ nb_interleaved_streams

int FFFormatContext::nb_interleaved_streams

Number of streams relevant for interleaving.

Muxing only.

Definition at line 83 of file internal.h.

Referenced by ff_interleave_packet_per_dts(), and init_muxer().

◆ interleave_packet

int(* FFFormatContext::interleave_packet) (struct AVFormatContext *s, AVPacket *pkt, int flush, int has_packet)

The interleavement function in use.

Always set for muxers.

Definition at line 88 of file internal.h.

Referenced by init_muxer(), and interleaved_write_packet().

◆ packet_buffer

PacketList FFFormatContext::packet_buffer

This buffer is only needed when packets were already buffered but not decoded, for example to get the codec parameters in MPEG streams.

Definition at line 96 of file internal.h.

Referenced by av_read_frame(), avformat_find_stream_info(), compute_pkt_fields(), ff_flush_packet_queue(), ff_interleave_add_packet(), ff_interleave_packet_per_dts(), ff_interleaved_peek(), get_next_pkt(), mxf_interleave_get_packet(), update_initial_durations(), and update_initial_timestamps().

◆ data_offset

int64_t FFFormatContext::data_offset

◆ raw_packet_buffer

PacketList FFFormatContext::raw_packet_buffer

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.

Definition at line 107 of file internal.h.

Referenced by avformat_queue_attached_pictures(), ff_flush_packet_queue(), and ff_read_packet().

◆ parse_queue

PacketList FFFormatContext::parse_queue

Packets split by the parser get queued here.

Definition at line 111 of file internal.h.

Referenced by compute_pkt_fields(), ff_flush_packet_queue(), get_next_pkt(), parse_packet(), read_frame_internal(), update_initial_durations(), and update_initial_timestamps().

◆ parse_pkt

AVPacket* FFFormatContext::parse_pkt

The generic code uses this as a temporary packet to parse packets or for muxing, especially flushing.

For demuxers, it may also be used for other means for short periods that are guaranteed not to overlap with calls to av_read_frame() (or ff_read_packet()) or with each other. It may be used by demuxers as a replacement for stack packets (unless they call one of the aforementioned functions with their own AVFormatContext). Every user has to ensure that this packet is blank after using it.

Definition at line 125 of file internal.h.

Referenced by asf_read_header(), av_write_frame(), av_write_trailer(), avformat_alloc_context(), avformat_free_context(), extract_extradata(), flac_read_timestamp(), parse_packet(), and write_uncoded_frame_internal().

◆ pkt

AVPacket* FFFormatContext::pkt

Used to hold temporary packets for the generic demuxing code.

When muxing, it may be used by muxers to hold packets (even permanent ones).

Definition at line 132 of file internal.h.

Referenced by amv_init(), av_write_trailer(), avformat_alloc_context(), avformat_find_stream_info(), avformat_free_context(), avi_write_header(), estimate_timings_from_pts(), flac_queue_flush(), mkv_init(), mov_init(), mp3_queue_flush(), mpegts_init(), seek_frame_generic(), tee_write_packet(), tta_queue_flush(), webp_init(), and write_muxed_file().

◆ raw_packet_buffer_size

int FFFormatContext::raw_packet_buffer_size

Sum of the size of packets in raw_packet_buffer, in bytes.

Definition at line 136 of file internal.h.

Referenced by avformat_open_input(), ff_flush_packet_queue(), ff_read_packet(), and probe_codec().

◆ offset

int64_t FFFormatContext::offset

Offset to remap timestamps to be non-negative.

Expressed in timebase units.

See also
AVStream.mux_ts_offset

Definition at line 143 of file internal.h.

Referenced by avformat_alloc_context(), and write_packet().

◆ offset_timebase

AVRational FFFormatContext::offset_timebase

Timebase for the timestamp offset.

Definition at line 148 of file internal.h.

Referenced by write_packet().

◆ inject_global_side_data

int FFFormatContext::inject_global_side_data

◆ avoid_negative_ts_use_pts

int FFFormatContext::avoid_negative_ts_use_pts

Definition at line 156 of file internal.h.

Referenced by mkv_init(), mkv_write_track(), webm_chunk_init(), and write_packet().

◆ shortest_end

int64_t FFFormatContext::shortest_end

Timestamp of the end of the shortest stream.

Definition at line 161 of file internal.h.

Referenced by avformat_alloc_context(), and ff_interleave_packet_per_dts().

◆ initialized

int FFFormatContext::initialized

Whether or not avformat_init_output has already been called.

Definition at line 166 of file internal.h.

Referenced by avformat_free_context(), avformat_init_output(), avformat_write_header(), and deinit_muxer().

◆ streams_initialized

int FFFormatContext::streams_initialized

Whether or not avformat_init_output fully initialized streams.

Definition at line 171 of file internal.h.

Referenced by avformat_init_output(), avformat_write_header(), and deinit_muxer().

◆ id3v2_meta

AVDictionary* FFFormatContext::id3v2_meta

ID3v2 tag useful for MP3 demuxing.

Definition at line 176 of file internal.h.

Referenced by avformat_free_context(), avformat_open_input(), and mp3_read_header().

◆ prefer_codec_framerate

int FFFormatContext::prefer_codec_framerate

Definition at line 181 of file internal.h.

Referenced by avformat_find_stream_info(), and mpegts_read_header().

◆ chapter_ids_monotonic

int FFFormatContext::chapter_ids_monotonic

Set if chapter ids are strictly monotonic.

Definition at line 186 of file internal.h.

Referenced by avpriv_new_chapter().


The documentation for this struct was generated from the following file: