FFmpeg
|
#include <internal.h>
Data Fields | |
AVStream | pub |
The public context. More... | |
AVFormatContext * | fmtctx |
int | reorder |
Set to 1 if the codec allows reordering, so pts can be different from dts. More... | |
struct AVBSFContext * | bsfc |
bitstream filter to run on stream More... | |
int | bitstream_checked |
Whether or not check_bitstream should still be run on each packet. More... | |
struct AVCodecContext * | avctx |
The codec context used by avformat_find_stream_info, the parser, etc. More... | |
int | avctx_inited |
1 if avctx has been initialized with the values from the codec parameters More... | |
struct { | |
struct AVBSFContext * bsf | |
int inited | |
} | extract_extradata |
int | need_context_update |
Whether the internal avctx needs to be updated from codecpar (after a late change to codecpar) More... | |
int | is_intra_only |
FFFrac | priv_pts |
struct FFStreamInfo * | info |
Stream information used internally by avformat_find_stream_info() More... | |
AVIndexEntry * | index_entries |
Only used if the format does not support seeking natively. More... | |
int | nb_index_entries |
unsigned int | index_entries_allocated_size |
int64_t | interleaver_chunk_size |
int64_t | interleaver_chunk_duration |
int | request_probe |
stream probing state -1 -> probing finished 0 -> no probing requested rest -> perform probing with request_probe being the minimum score to accept. More... | |
int | skip_to_keyframe |
Indicates that everything up to the next keyframe should be discarded. More... | |
int | skip_samples |
Number of samples to skip at the start of the frame decoded from the next packet. More... | |
int64_t | start_skip_samples |
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). More... | |
int64_t | first_discard_sample |
If not 0, the first audio sample that should be discarded from the stream. More... | |
int64_t | last_discard_sample |
The sample after last sample that is intended to be discarded after first_discard_sample. More... | |
int | nb_decoded_frames |
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. More... | |
int64_t | mux_ts_offset |
Timestamp offset added to timestamps before muxing. More... | |
int64_t | lowest_ts_allowed |
This is the lowest ts allowed in this track; it may be set by the muxer during init or write_header and influences the automatic timestamp shifting code. More... | |
int64_t | pts_wrap_reference |
Internal data to check for wrapping of the time stamp. More... | |
int | pts_wrap_behavior |
Options for behavior, when a wrap is detected. More... | |
int | update_initial_durations_done |
Internal data to prevent doing update_initial_durations() twice. More... | |
int64_t | pts_reorder_error [MAX_REORDER_DELAY+1] |
Internal data to generate dts from pts. More... | |
uint8_t | pts_reorder_error_count [MAX_REORDER_DELAY+1] |
int64_t | pts_buffer [MAX_REORDER_DELAY+1] |
int64_t | last_dts_for_order_check |
Internal data to analyze DTS and detect faulty mpeg streams. More... | |
uint8_t | dts_ordered |
uint8_t | dts_misordered |
AVRational | display_aspect_ratio |
display aspect ratio (0 if unknown) More... | |
AVProbeData | probe_data |
PacketListEntry * | last_in_packet_buffer |
last packet in packet_buffer for this stream when muxing. More... | |
int64_t | last_IP_pts |
int | last_IP_duration |
int | probe_packets |
Number of packets to buffer for codec probing. More... | |
enum AVStreamParseType | need_parsing |
struct AVCodecParserContext * | parser |
int | codec_info_nb_frames |
Number of frames that have been demuxed during avformat_find_stream_info() More... | |
int | stream_identifier |
Stream Identifier This is the MPEG-TS stream identifier +1 0 means unknown. More... | |
int64_t | first_dts |
Timestamp corresponding to the last dts sync point. More... | |
int64_t | cur_dts |
const struct AVCodecDescriptor * | codec_desc |
AVRational | transferred_mux_tb |
Definition at line 193 of file internal.h.
AVStream FFStream::pub |
The public context.
Definition at line 197 of file internal.h.
Referenced by avformat_new_stream(), check_bitstream(), and handle_avoid_negative_ts().
AVFormatContext* FFStream::fmtctx |
Definition at line 199 of file internal.h.
Referenced by avformat_new_stream(), and avformat_stream_group_add_stream().
int FFStream::reorder |
Set to 1 if the codec allows reordering, so pts can be different from dts.
Definition at line 204 of file internal.h.
Referenced by init_muxer(), and prepare_input_packet().
struct AVBSFContext* FFStream::bsfc |
bitstream filter to run on stream
Definition at line 211 of file internal.h.
Referenced by av_write_trailer(), dash_check_bitstream(), ff_free_stream(), ff_stream_add_bitstream_filter(), seg_check_bitstream(), write_packets_common(), and write_packets_from_bsfs().
int FFStream::bitstream_checked |
Whether or not check_bitstream should still be run on each packet.
Definition at line 216 of file internal.h.
Referenced by check_bitstream().
struct AVCodecContext* FFStream::avctx |
The codec context used by avformat_find_stream_info, the parser, etc.
Definition at line 221 of file internal.h.
Referenced by av_guess_frame_rate(), av_stream_get_codec_timebase(), avformat_find_stream_info(), avformat_new_stream(), avformat_transfer_internal_stream_timing_info(), avpriv_set_pts_info(), codec_close(), compute_frame_duration(), compute_pkt_fields(), dump_stream_format(), estimate_timings_from_bit_rate(), extract_extradata(), ff_free_stream(), has_codec_parameters(), has_decode_delay_been_guessed(), parse_packet(), read_frame_internal(), select_from_pts_buffer(), tb_unreliable(), try_decode_frame(), update_dts_from_pts(), update_initial_durations(), and update_stream_avctx().
int FFStream::avctx_inited |
1 if avctx has been initialized with the values from the codec parameters
Definition at line 225 of file internal.h.
Referenced by avformat_find_stream_info(), and compute_frame_duration().
struct AVBSFContext* FFStream::bsf |
Definition at line 231 of file internal.h.
Referenced by avformat_find_stream_info(), extract_extradata(), extract_extradata_init(), and ff_free_stream().
int FFStream::inited |
Definition at line 232 of file internal.h.
Referenced by avformat_find_stream_info(), extract_extradata(), and extract_extradata_init().
struct { ... } FFStream::extract_extradata |
Referenced by avformat_find_stream_info(), extract_extradata(), extract_extradata_init(), and ff_free_stream().
int FFStream::need_context_update |
Whether the internal avctx needs to be updated from codecpar (after a late change to codecpar)
Definition at line 238 of file internal.h.
Referenced by avformat_new_stream(), ff_parse_mpeg2_descriptor(), flv_get_extradata(), flv_set_video_codec(), m4sl_cb(), mpegts_find_stream_type(), mpegts_set_stream_info(), ogm_header(), read_frame_internal(), set_codec_from_probe_data(), set_stream_info_from_input_stream(), and update_stream_avctx().
int FFStream::is_intra_only |
Definition at line 240 of file internal.h.
Referenced by init_muxer(), and prepare_input_packet().
FFFrac FFStream::priv_pts |
Definition at line 242 of file internal.h.
Referenced by compute_muxer_pkt_fields(), and init_pts().
struct FFStreamInfo* FFStream::info |
Stream information used internally by avformat_find_stream_info()
Definition at line 247 of file internal.h.
Referenced by avformat_find_stream_info(), avformat_new_stream(), estimate_timings_from_pts(), ff_free_stream(), ff_rfps_add_frame(), ff_rfps_calculate(), has_codec_parameters(), has_decode_delay_been_guessed(), read_frame_internal(), and try_decode_frame().
AVIndexEntry* FFStream::index_entries |
Only used if the format does not support seeking natively.
Definition at line 249 of file internal.h.
Referenced by add_index_entry(), asf_read_seek(), av_add_index_entry(), av_index_search_timestamp(), av_write_trailer(), avformat_index_get_entry(), avformat_index_get_entry_from_timestamp(), avi_read_idx1(), avi_read_packet(), avi_read_seek(), avi_sync(), calculate_bitrate(), can_seek_to_key_sample(), check_stream_max_drift(), cine_read_packet(), clean_index(), clear_index_entries(), dhav_read_seek(), ff_configure_buffers_for_index(), ff_free_stream(), ff_reduce_index(), ff_seek_frame_binary(), find_prev_closest_index(), fix_index_entry_timestamps(), flac_seek(), guess_ni_flag(), gxf_seek(), ifv_read_packet(), img_read_seek(), mov_build_index(), mov_estimate_video_delay(), mov_finalize_packet(), mov_find_next_sample(), mov_fix_index(), mov_get_skip_samples(), mov_read_chapters(), mov_read_rtmd_track(), mov_read_seek(), mov_read_timecode_track(), mov_read_trun(), mov_update_iamf_streams(), mp3_read_header(), mp3_seek(), mpc8_read_seek(), mpc_read_seek(), mv_read_packet(), ni_prepare_read(), nsv_read_seek(), nut_write_packet(), pdv_read_packet(), read_header(), read_packet(), read_seek(), reset_index_position(), rka_read_packet(), rl2_read_packet(), rl2_read_seek(), rpl_read_packet(), scan_file(), seek_frame_generic(), smacker_read_seek(), tta_read_packet(), and voc_read_seek().
int FFStream::nb_index_entries |
Definition at line 251 of file internal.h.
Referenced by add_index_entry(), asf_read_seek(), av_add_index_entry(), av_index_search_timestamp(), avformat_index_get_entries_count(), avformat_index_get_entry(), avformat_index_get_entry_from_timestamp(), avi_read_idx1(), avi_read_packet(), avi_read_seek(), avi_sync(), calculate_bitrate(), check_stream_max_drift(), cine_read_packet(), clean_index(), clear_index_entries(), ff_configure_buffers_for_index(), ff_reduce_index(), find_prev_closest_index(), flac_seek(), guess_ni_flag(), ifv_read_packet(), mov_build_index(), mov_estimate_video_delay(), mov_finalize_packet(), mov_find_next_sample(), mov_fix_index(), mov_read_chapters(), mov_read_rtmd_track(), mov_read_timecode_track(), mov_read_trun(), mov_update_iamf_streams(), mp3_read_header(), mpc_read_seek(), ni_prepare_read(), nut_write_packet(), pdv_read_packet(), read_header(), read_packet(), read_seek(), reset_index_position(), rka_read_packet(), rl2_read_packet(), rpl_read_packet(), scan_file(), seek_frame_generic(), tta_read_packet(), and voc_read_seek().
unsigned int FFStream::index_entries_allocated_size |
Definition at line 252 of file internal.h.
Referenced by add_index_entry(), av_add_index_entry(), mov_build_index(), mov_fix_index(), mov_read_trun(), mov_update_iamf_streams(), and scan_file().
int64_t FFStream::interleaver_chunk_size |
Definition at line 254 of file internal.h.
Referenced by ff_interleave_add_packet().
int64_t FFStream::interleaver_chunk_duration |
Definition at line 255 of file internal.h.
Referenced by ff_interleave_add_packet().
int FFStream::request_probe |
stream probing state -1 -> probing finished 0 -> no probing requested rest -> perform probing with request_probe being the minimum score to accept.
Definition at line 263 of file internal.h.
Referenced by asf_read_stream_properties(), avformat_find_stream_info(), avi_read_header(), dvdvideo_audio_stream_add(), dvdvideo_subp_stream_add(), dvdvideo_video_stream_add(), ff_parse_mpeg2_descriptor(), ff_read_packet(), handle_new_packet(), mpegps_read_packet(), mpegts_find_stream_type(), mpegts_push_data(), mpegts_set_stream_info(), probe_codec(), and set_codec_from_probe_data().
int FFStream::skip_to_keyframe |
Indicates that everything up to the next keyframe should be discarded.
Definition at line 268 of file internal.h.
Referenced by read_frame_internal().
int FFStream::skip_samples |
Number of samples to skip at the start of the frame decoded from the next packet.
Definition at line 273 of file internal.h.
Referenced by ff_read_frame_flush(), mov_fix_index(), mov_read_header(), mov_read_seek(), mov_update_iamf_streams(), read_frame_internal(), swf_read_packet(), and update_initial_timestamps().
int64_t FFStream::start_skip_samples |
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.
Definition at line 282 of file internal.h.
Referenced by mp3_parse_info_tag(), and read_frame_internal().
int64_t FFStream::first_discard_sample |
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.
Definition at line 290 of file internal.h.
Referenced by mp3_parse_info_tag(), and read_frame_internal().
int64_t FFStream::last_discard_sample |
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).
Definition at line 297 of file internal.h.
Referenced by mp3_parse_info_tag().
int FFStream::nb_decoded_frames |
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.
Definition at line 303 of file internal.h.
Referenced by has_codec_parameters(), has_decode_delay_been_guessed(), and try_decode_frame().
int64_t FFStream::mux_ts_offset |
Timestamp offset added to timestamps before muxing.
Definition at line 308 of file internal.h.
Referenced by ff_get_muxer_ts_offset(), and handle_avoid_negative_ts().
int64_t FFStream::lowest_ts_allowed |
This is the lowest ts allowed in this track; it may be set by the muxer during init or write_header and influences the automatic timestamp shifting code.
Definition at line 315 of file internal.h.
Referenced by handle_avoid_negative_ts(), mkv_write_track(), and webm_chunk_write_header().
int64_t FFStream::pts_wrap_reference |
Internal data to check for wrapping of the time stamp.
Definition at line 320 of file internal.h.
Referenced by avformat_new_stream(), mpegts_push_data(), update_wrap_reference(), and wrap_timestamp().
int FFStream::pts_wrap_behavior |
Options for behavior, when a wrap is detected.
Defined by AV_PTS_WRAP_ values.
If correction is enabled, there are two possibilities: If the first time stamp is near the wrap point, the wrap offset will be subtracted, which will create negative time stamps. Otherwise the offset will be added.
Definition at line 332 of file internal.h.
Referenced by avformat_new_stream(), mpegts_push_data(), update_timestamps(), update_wrap_reference(), and wrap_timestamp().
int FFStream::update_initial_durations_done |
Internal data to prevent doing update_initial_durations() twice.
Definition at line 337 of file internal.h.
Referenced by update_initial_durations().
int64_t FFStream::pts_reorder_error[MAX_REORDER_DELAY+1] |
Internal data to generate dts from pts.
Definition at line 344 of file internal.h.
Referenced by select_from_pts_buffer().
uint8_t FFStream::pts_reorder_error_count[MAX_REORDER_DELAY+1] |
Definition at line 345 of file internal.h.
Referenced by select_from_pts_buffer().
int64_t FFStream::pts_buffer[MAX_REORDER_DELAY+1] |
Definition at line 347 of file internal.h.
Referenced by avformat_new_stream(), compute_muxer_pkt_fields(), compute_pkt_fields(), estimate_timings_from_pts(), and ff_read_frame_flush().
int64_t FFStream::last_dts_for_order_check |
Internal data to analyze DTS and detect faulty mpeg streams.
Definition at line 352 of file internal.h.
Referenced by avformat_new_stream(), compute_pkt_fields(), estimate_timings_from_pts(), and ff_read_frame_flush().
uint8_t FFStream::dts_ordered |
Definition at line 353 of file internal.h.
Referenced by compute_pkt_fields().
uint8_t FFStream::dts_misordered |
Definition at line 354 of file internal.h.
Referenced by compute_pkt_fields().
AVRational FFStream::display_aspect_ratio |
display aspect ratio (0 if unknown)
Definition at line 368 of file internal.h.
Referenced by avformat_find_stream_info(), dvdvideo_video_stream_add(), mov_read_ares(), and mxf_parse_structural_metadata().
AVProbeData FFStream::probe_data |
Definition at line 370 of file internal.h.
Referenced by ff_free_stream(), and probe_codec().
PacketListEntry* FFStream::last_in_packet_buffer |
last packet in packet_buffer for this stream when muxing.
Definition at line 375 of file internal.h.
Referenced by ff_interleave_add_packet(), ff_interleave_packet_per_dts(), and mxf_interleave_get_packet().
int64_t FFStream::last_IP_pts |
Definition at line 377 of file internal.h.
Referenced by avformat_new_stream(), compute_pkt_fields(), decode_frame(), estimate_timings_from_pts(), and ff_read_frame_flush().
int FFStream::last_IP_duration |
Definition at line 378 of file internal.h.
Referenced by compute_pkt_fields().
int FFStream::probe_packets |
Number of packets to buffer for codec probing.
Definition at line 383 of file internal.h.
Referenced by avformat_new_stream(), ff_read_frame_flush(), ff_read_packet(), mpegts_set_stream_info(), probe_codec(), sbg_read_header(), set_codec_from_probe_data(), and tedcaptions_read_header().
enum AVStreamParseType FFStream::need_parsing |
Definition at line 386 of file internal.h.
Referenced by aa_read_header(), acm_read_header(), adts_aac_read_header(), asf_read_stream_properties(), asfrtp_parse_sdp_line(), av1_read_header(), avformat_find_stream_info(), avi_read_header(), avpriv_stream_set_need_parsing(), compute_pkt_fields(), create_new_audio_stream(), dtshd_read_header(), dvdvideo_audio_stream_add(), dvdvideo_subp_stream_add(), dvdvideo_video_stream_add(), evc_read_header(), ff_img_read_header(), ff_parse_mpeg2_descriptor(), ff_raw_audio_read_header(), ff_raw_video_read_header(), ff_rm_read_mdpr_codecdata(), ff_spdif_read_packet(), film_read_header(), flac_header(), flac_read_header(), flv_set_audio_codec(), flv_set_video_codec(), get_codec_data(), get_sindex(), gif_read_header(), init_video_stream(), ipu_read_header(), jpegxl_anim_read_header(), lmlm4_read_header(), loas_read_header(), lxf_read_header(), m4sl_cb(), mov_finalize_stsd_codec(), mov_parse_stsd_audio(), mov_read_header(), mov_read_packet(), mov_read_stss(), mov_read_trak(), mp3_read_header(), mpegps_read_packet(), mpegts_set_stream_info(), msf_read_header(), mtv_read_header(), mxf_parse_structural_metadata(), mxf_read_packet(), nc_read_header(), new_stream(), nsv_parse_NSVs_header(), nsv_read_chunk(), ogm_header(), oma_read_header(), parse_chunk(), parse_packet(), pva_read_header(), read_frame_internal(), read_header(), rm_read_audio_stream_info(), s337m_read_packet(), scd_read_track(), sdr2_read_header(), tak_read_header(), theora_header(), ty_read_header(), vp8_header(), xvag_read_header(), and xwma_read_header().
struct AVCodecParserContext* FFStream::parser |
Definition at line 387 of file internal.h.
Referenced by av_stream_get_parser(), avformat_find_stream_info(), estimate_timings_from_pts(), ff_free_stream(), ff_img_read_packet(), ff_read_frame_flush(), parse_packet(), read_frame_internal(), and update_stream_avctx().
int FFStream::codec_info_nb_frames |
Number of frames that have been demuxed during avformat_find_stream_info()
Definition at line 392 of file internal.h.
Referenced by av_find_best_stream(), av_find_default_stream_index(), avformat_find_stream_info(), dump_stream_format(), estimate_timings_from_bit_rate(), has_codec_parameters(), and try_decode_frame().
int FFStream::stream_identifier |
Stream Identifier This is the MPEG-TS stream identifier +1 0 means unknown.
Definition at line 399 of file internal.h.
Referenced by ff_parse_mpeg2_descriptor().
int64_t FFStream::first_dts |
Timestamp corresponding to the last dts sync point.
Initialized when AVCodecParserContext.dts_sync_point >= 0 and a DTS is received from the underlying container. Otherwise set to AV_NOPTS_VALUE by default.
Definition at line 409 of file internal.h.
Referenced by add_dstream(), avformat_find_stream_info(), avformat_new_stream(), estimate_timings_from_pts(), ff_read_frame_flush(), hds_write_packet(), ism_write_packet(), rdt_parse_sdp_line(), update_initial_durations(), update_initial_timestamps(), and update_timestamps().
int64_t FFStream::cur_dts |
Definition at line 410 of file internal.h.
Referenced by avformat_new_stream(), avpriv_update_cur_dts(), compute_muxer_pkt_fields(), compute_pkt_fields(), concat_read_packet(), estimate_timings_from_pts(), ff_pcm_read_seek(), ff_read_frame_flush(), fifo_thread_write_header(), prepare_input_packet(), sbg_read_header(), sbg_read_packet(), sbg_read_seek2(), tedcaptions_read_header(), update_initial_durations(), update_initial_timestamps(), update_timestamps(), and vqf_read_seek().
const struct AVCodecDescriptor* FFStream::codec_desc |
Definition at line 412 of file internal.h.
Referenced by av_guess_frame_rate(), avformat_find_stream_info(), avformat_transfer_internal_stream_timing_info(), compute_frame_duration(), read_frame_internal(), tb_unreliable(), and update_stream_avctx().
AVRational FFStream::transferred_mux_tb |
Definition at line 414 of file internal.h.
Referenced by av_stream_get_codec_timebase(), and avformat_new_stream().