FFmpeg
|
#include <internal.h>
Data Fields | |
AVStream | pub |
The public context. More... | |
int | reorder |
Set to 1 if the codec allows reordering, so pts can be different from dts. More... | |
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... | |
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 { | |
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 { | |
int64_t last_dts | |
int64_t duration_gcd | |
int duration_count | |
int64_t rfps_duration_sum | |
double(* duration_error )[2][MAX_STD_TIMEBASES] | |
int64_t codec_info_duration | |
int64_t codec_info_duration_fields | |
int frame_delay_evidence | |
int found_decoder | |
0 -> decoder has not been searched for yet. More... | |
int64_t last_duration | |
int64_t fps_first_dts | |
Those are used for average framerate estimation. More... | |
int fps_first_dts_idx | |
int64_t fps_last_dts | |
int fps_last_dts_idx | |
} * | 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 | 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 |
int | inject_global_side_data |
Internal data to inject global side data. More... | |
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 |
Definition at line 194 of file internal.h.
AVStream FFStream::pub |
The public context.
Definition at line 198 of file internal.h.
Referenced by avformat_new_stream(), and check_bitstream().
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().
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_stream_add_bitstream_filter(), free_stream(), 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().
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 av1_read_header(), 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(), compute_frame_duration(), compute_pkt_fields(), dump_stream_format(), estimate_timings_from_bit_rate(), extract_extradata(), ff_raw_video_read_header(), ff_rfps_calculate(), free_stream(), has_codec_parameters(), has_decode_delay_been_guessed(), mpegts_set_stream_info(), parse_packet(), read_frame_internal(), select_from_pts_buffer(), 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().
AVBSFContext* FFStream::bsf |
Definition at line 231 of file internal.h.
Referenced by avformat_find_stream_info(), extract_extradata(), extract_extradata_init(), and 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 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 av_stream_get_end_pts(), free_stream(), and init_pts().
int64_t FFStream::last_dts |
Definition at line 249 of file internal.h.
Referenced by avformat_new_stream(), ff_rfps_add_frame(), and ff_rfps_calculate().
int64_t FFStream::duration_gcd |
Definition at line 250 of file internal.h.
Referenced by ff_rfps_add_frame(), and ff_rfps_calculate().
int FFStream::duration_count |
Definition at line 251 of file internal.h.
Referenced by avformat_find_stream_info(), ff_rfps_add_frame(), and ff_rfps_calculate().
int64_t FFStream::rfps_duration_sum |
Definition at line 252 of file internal.h.
Referenced by ff_rfps_add_frame(), and ff_rfps_calculate().
double(* FFStream::duration_error)[2][MAX_STD_TIMEBASES] |
Definition at line 253 of file internal.h.
Referenced by avformat_find_stream_info(), ff_rfps_add_frame(), ff_rfps_calculate(), and free_stream().
int64_t FFStream::codec_info_duration |
Definition at line 254 of file internal.h.
Referenced by avformat_find_stream_info(), and ff_rfps_calculate().
int64_t FFStream::codec_info_duration_fields |
Definition at line 255 of file internal.h.
Referenced by avformat_find_stream_info().
int FFStream::frame_delay_evidence |
Definition at line 256 of file internal.h.
Referenced by avformat_find_stream_info().
int FFStream::found_decoder |
0 -> decoder has not been searched for yet.
>0 -> decoder found <0 -> decoder with codec_id == -found_decoder has not been found
Definition at line 263 of file internal.h.
Referenced by avformat_find_stream_info(), has_codec_parameters(), read_frame_internal(), and try_decode_frame().
int64_t FFStream::last_duration |
Definition at line 265 of file internal.h.
Referenced by estimate_timings_from_pts().
int64_t FFStream::fps_first_dts |
Those are used for average framerate estimation.
Definition at line 270 of file internal.h.
Referenced by avformat_find_stream_info(), and avformat_new_stream().
int FFStream::fps_first_dts_idx |
Definition at line 271 of file internal.h.
Referenced by avformat_find_stream_info().
int64_t FFStream::fps_last_dts |
Definition at line 272 of file internal.h.
Referenced by avformat_find_stream_info(), and avformat_new_stream().
int FFStream::fps_last_dts_idx |
Definition at line 273 of file internal.h.
Referenced by avformat_find_stream_info().
struct { ... } * FFStream::info |
Stream information used internally by avformat_find_stream_info()
Referenced by avformat_find_stream_info(), avformat_new_stream(), estimate_timings_from_pts(), ff_rfps_add_frame(), ff_rfps_calculate(), free_stream(), 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 277 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(), check_stream_max_drift(), cine_read_packet(), clean_index(), clear_index_entries(), dhav_read_seek(), ff_configure_buffers_for_index(), ff_reduce_index(), ff_seek_frame_binary(), find_prev_closest_index(), fix_index_entry_timestamps(), flac_seek(), free_stream(), guess_ni_flag(), gxf_seek(), ifv_read_packet(), img_read_seek(), mov_build_index(), mov_estimate_video_delay(), mov_find_next_sample(), mov_fix_index(), mov_get_skip_samples(), mov_read_chapters(), mov_read_packet(), mov_read_rtmd_track(), mov_read_seek(), mov_read_timecode_track(), mov_read_trun(), mp3_read_header(), mp3_seek(), mpc8_read_seek(), mpc_read_seek(), mv_read_packet(), ni_prepare_read(), nsv_read_seek(), nut_write_packet(), read_header(), read_packet(), read_seek(), reset_index_position(), rl2_read_packet(), rl2_read_seek(), rpl_read_packet(), scan_file(), seek_frame_generic(), tta_read_packet(), and voc_read_seek().
int FFStream::nb_index_entries |
Definition at line 279 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_find_next_sample(), mov_fix_index(), mov_read_chapters(), mov_read_packet(), mov_read_rtmd_track(), mov_read_timecode_track(), mov_read_trun(), mp3_read_header(), mpc_read_seek(), ni_prepare_read(), nut_write_packet(), read_header(), read_packet(), read_seek(), reset_index_position(), 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 280 of file internal.h.
Referenced by add_index_entry(), av_add_index_entry(), mov_build_index(), mov_fix_index(), mov_read_trun(), and scan_file().
int64_t FFStream::interleaver_chunk_size |
Definition at line 282 of file internal.h.
Referenced by ff_interleave_add_packet().
int64_t FFStream::interleaver_chunk_duration |
Definition at line 283 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 291 of file internal.h.
Referenced by asf_read_stream_properties(), avformat_find_stream_info(), avi_read_header(), ff_parse_mpeg2_descriptor(), ff_read_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 296 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 301 of file internal.h.
Referenced by ff_read_frame_flush(), mov_fix_index(), mov_read_header(), mov_read_seek(), 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 310 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 318 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 325 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 331 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 336 of file internal.h.
Referenced by ff_get_muxer_ts_offset(), and write_packet().
int64_t FFStream::pts_wrap_reference |
Internal data to check for wrapping of the time stamp.
Definition at line 341 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 353 of file internal.h.
Referenced by avformat_new_stream(), ff_read_packet(), mpegts_push_data(), update_wrap_reference(), and wrap_timestamp().
int FFStream::update_initial_durations_done |
Internal data to prevent doing update_initial_durations() twice.
Definition at line 358 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 365 of file internal.h.
Referenced by select_from_pts_buffer().
uint8_t FFStream::pts_reorder_error_count[MAX_REORDER_DELAY+1] |
Definition at line 366 of file internal.h.
Referenced by select_from_pts_buffer().
int64_t FFStream::pts_buffer[MAX_REORDER_DELAY+1] |
Definition at line 368 of file internal.h.
Referenced by avformat_new_stream(), 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 373 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 374 of file internal.h.
Referenced by compute_pkt_fields().
uint8_t FFStream::dts_misordered |
Definition at line 375 of file internal.h.
Referenced by compute_pkt_fields().
int FFStream::inject_global_side_data |
Internal data to inject global side data.
Definition at line 380 of file internal.h.
Referenced by av_format_inject_global_side_data(), avformat_new_stream(), ff_read_frame_flush(), and read_frame_internal().
AVRational FFStream::display_aspect_ratio |
display aspect ratio (0 if unknown)
Definition at line 387 of file internal.h.
Referenced by avformat_find_stream_info(), mov_read_ares(), and mxf_parse_structural_metadata().
AVProbeData FFStream::probe_data |
Definition at line 389 of file internal.h.
Referenced by free_stream(), and probe_codec().
PacketListEntry* FFStream::last_in_packet_buffer |
last packet in packet_buffer for this stream when muxing.
Definition at line 394 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 396 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 397 of file internal.h.
Referenced by compute_pkt_fields().
int FFStream::probe_packets |
Number of packets to buffer for codec probing.
Definition at line 402 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 405 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(), ff_img_read_header(), ff_parse_mpeg2_descriptor(), ff_raw_audio_read_header(), ff_raw_video_read_header(), ff_rm_read_mdpr_codecdata(), film_read_header(), flac_header(), flac_read_header(), flv_set_audio_codec(), flv_set_video_codec(), get_codec_data(), get_sindex(), init_video_stream(), ipu_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_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 406 of file internal.h.
Referenced by av_stream_get_parser(), avformat_find_stream_info(), estimate_timings_from_pts(), ff_img_read_packet(), ff_read_frame_flush(), free_stream(), 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 411 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 418 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 428 of file internal.h.
Referenced by add_dstream(), avformat_find_stream_info(), avformat_new_stream(), estimate_timings_from_pts(), ff_read_frame_flush(), ff_read_packet(), hds_write_packet(), ism_write_packet(), rdt_parse_sdp_line(), update_initial_durations(), and update_initial_timestamps().
int64_t FFStream::cur_dts |
Definition at line 429 of file internal.h.
Referenced by avformat_new_stream(), avpriv_update_cur_dts(), compute_pkt_fields(), concat_read_packet(), estimate_timings_from_pts(), ff_pcm_read_seek(), ff_read_frame_flush(), ff_read_packet(), 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(), and vqf_read_seek().