AVCodecParserContext Struct Reference
[Frame parsing]

#include <avcodec.h>


Data Fields

void * priv_data
struct AVCodecParserparser
int64_t frame_offset
int64_t cur_offset
int64_t next_frame_offset
int pict_type
int repeat_pict
 This field is used for proper frame duration computation in lavf.
int64_t pts
int64_t dts
int64_t last_pts
int64_t last_dts
int fetch_timestamp
int cur_frame_start_index
int64_t cur_frame_offset [AV_PARSER_PTS_NB]
int64_t cur_frame_pts [AV_PARSER_PTS_NB]
int64_t cur_frame_dts [AV_PARSER_PTS_NB]
int flags
int64_t offset
 byte offset from starting packet start
int64_t cur_frame_end [AV_PARSER_PTS_NB]
int key_frame
 Set by parser to 1 for key frames and 0 for non-key frames.
int64_t convergence_duration
 Time difference in stream time base units from the pts of this packet to the point at which the output from the decoder has converged independent from the availability of previous frames.
int dts_sync_point
 Synchronization point for start of timestamp generation.
int dts_ref_dts_delta
 Offset of the current timestamp against last timestamp sync point in units of AVCodecContext.time_base.
int pts_dts_delta
 Presentation delay of current frame in units of AVCodecContext.time_base.
int64_t cur_frame_pos [AV_PARSER_PTS_NB]
 Position of the packet in file.
int64_t pos
 Byte position of currently parsed frame in stream.
int64_t last_pos
 Previous frame byte position.
int duration
 Duration of the current frame.


Detailed Description

Definition at line 3769 of file avcodec.h.


Field Documentation

Time difference in stream time base units from the pts of this packet to the point at which the output from the decoder has converged independent from the availability of previous frames.

That is, the frames are virtually identical no matter if decoding started from the very first frame or from this keyframe. Is AV_NOPTS_VALUE if unknown. This field is not the display duration of the current frame. This field has no meaning if the packet does not have AV_PKT_FLAG_KEY set.

The purpose of this field is to allow seeking in streams that have no keyframes in the conventional sense. It corresponds to the recovery point SEI in H.264 and match_time_delta in NUT. It is also essential for some types of subtitle streams to ensure that all subtitles are correctly displayed after seeking.

Definition at line 3837 of file avcodec.h.

Referenced by av_parser_init(), and compute_pkt_fields().

int64_t AVCodecParserContext::cur_frame_dts[AV_PARSER_PTS_NB]

Definition at line 3800 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

int64_t AVCodecParserContext::cur_frame_end[AV_PARSER_PTS_NB]

Definition at line 3810 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

int64_t AVCodecParserContext::cur_frame_offset[AV_PARSER_PTS_NB]

Definition at line 3798 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

int64_t AVCodecParserContext::cur_frame_pos[AV_PARSER_PTS_NB]

Position of the packet in file.

Analogous to cur_frame_pts/dts

Definition at line 3885 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

int64_t AVCodecParserContext::cur_frame_pts[AV_PARSER_PTS_NB]

Definition at line 3799 of file avcodec.h.

Referenced by av_parser_parse2(), dvbsub_parse(), and ff_fetch_timestamp().

Definition at line 3797 of file avcodec.h.

Referenced by av_parser_parse2(), and dvbsub_parse().

Definition at line 3773 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

Offset of the current timestamp against last timestamp sync point in units of AVCodecContext.time_base.

Set to INT_MIN when dts_sync_point unused. Otherwise, it must contain a valid timestamp offset.

Note that the timestamp of sync point has usually a nonzero dts_ref_dts_delta, which refers to the previous sync point. Offset of the next frame after timestamp sync point will be usually 1.

For example, this corresponds to H.264 cpb_removal_delay.

Definition at line 3864 of file avcodec.h.

Referenced by av_parser_init(), compute_pkt_fields(), and h264_parse().

Synchronization point for start of timestamp generation.

Set to >0 for sync point, 0 for no sync point and <0 for undefined (default).

For example, this corresponds to presence of H.264 buffering period SEI message.

Definition at line 3849 of file avcodec.h.

Referenced by av_parser_init(), compute_pkt_fields(), and h264_parse().

Duration of the current frame.

For audio, this is in units of 1 / AVCodecContext.sample_rate. For all other types, this is in units of AVCodecContext.time_base.

Definition at line 3902 of file avcodec.h.

Referenced by adx_parse(), cook_parse(), dca_parse(), ff_aac_ac3_parse(), flac_parse(), get_best_header(), gsm_parse(), mlp_parse(), mpegaudio_parse(), and parse_packet().

Definition at line 3794 of file avcodec.h.

Referenced by av_parser_init(), av_parser_parse2(), and dvbsub_parse().

Definition at line 3772 of file avcodec.h.

Referenced by av_parser_parse2(), ff_fetch_timestamp(), and parse_packet().

Set by parser to 1 for key frames and 0 for non-key frames.

It is initialized to -1, so if the parser doesn't set this flag, old-style fallback using AV_PICTURE_TYPE_I picture type as key frames will be used.

Definition at line 3818 of file avcodec.h.

Referenced by av_parser_init(), parse_nal_units(), and parse_packet().

Definition at line 3793 of file avcodec.h.

Referenced by av_parser_parse2(), and dirac_combine_frame().

Previous frame byte position.

Definition at line 3895 of file avcodec.h.

Referenced by av_parser_parse2().

Definition at line 3792 of file avcodec.h.

Referenced by av_parser_parse2(), dirac_combine_frame(), and dvbsub_parse().

Definition at line 3775 of file avcodec.h.

Referenced by av_parser_parse2(), and ff_fetch_timestamp().

byte offset from starting packet start

Definition at line 3809 of file avcodec.h.

Referenced by compute_pkt_fields(), and ff_fetch_timestamp().

Byte position of currently parsed frame in stream.

Definition at line 3890 of file avcodec.h.

Referenced by av_parser_parse2(), ff_fetch_timestamp(), and parse_packet().

Presentation delay of current frame in units of AVCodecContext.time_base.

Set to INT_MIN when dts_sync_point unused. Otherwise, it must contain valid non-negative timestamp delta (presentation time of a frame must not lie in the past).

This delay represents the difference between decoding and presentation time of the frame.

For example, this corresponds to H.264 dpb_output_delay.

Definition at line 3878 of file avcodec.h.

Referenced by av_parser_init(), compute_pkt_fields(), and h264_parse().

This field is used for proper frame duration computation in lavf.

It signals, how much longer the frame duration of the current frame is compared to normal frame duration.

frame_duration = (1 + repeat_pict) * time_base

It is used by codecs like H.264 to display telecined material.

Definition at line 3787 of file avcodec.h.

Referenced by compute_frame_duration(), mpegvideo_extract_headers(), mpegvideo_parse(), output_packet(), parse_nal_units(), and vc1_extract_headers().


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

Generated on Fri Oct 26 02:48:05 2012 for FFmpeg by  doxygen 1.5.8