#[repr(C)]
pub struct AVCodecParserContext {
Show 36 fields pub priv_data: *mut c_void, pub parser: *mut AVCodecParser, pub frame_offset: i64, pub cur_offset: i64, pub next_frame_offset: i64, pub pict_type: c_int, pub repeat_pict: c_int, pub pts: i64, pub dts: i64, pub last_pts: i64, pub last_dts: i64, pub fetch_timestamp: c_int, pub cur_frame_start_index: c_int, pub cur_frame_offset: [i64; 4], pub cur_frame_pts: [i64; 4], pub cur_frame_dts: [i64; 4], pub flags: c_int, pub offset: i64, pub cur_frame_end: [i64; 4], pub key_frame: c_int, pub convergence_duration: i64, pub dts_sync_point: c_int, pub dts_ref_dts_delta: c_int, pub pts_dts_delta: c_int, pub cur_frame_pos: [i64; 4], pub pos: i64, pub last_pos: i64, pub duration: c_int, pub field_order: AVFieldOrder, pub picture_structure: AVPictureStructure, pub output_picture_number: c_int, pub width: c_int, pub height: c_int, pub coded_width: c_int, pub coded_height: c_int, pub format: c_int,
}

Fields§

§priv_data: *mut c_void§parser: *mut AVCodecParser§frame_offset: i64§cur_offset: i64§next_frame_offset: i64§pict_type: c_int§repeat_pict: c_int

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.

§pts: i64§dts: i64§last_pts: i64§last_dts: i64§fetch_timestamp: c_int§cur_frame_start_index: c_int§cur_frame_offset: [i64; 4]§cur_frame_pts: [i64; 4]§cur_frame_dts: [i64; 4]§flags: c_int§offset: i64

< byte offset from starting packet start

§cur_frame_end: [i64; 4]§key_frame: c_int

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.

§convergence_duration: i64

@deprecated unused

§dts_sync_point: c_int

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.

§dts_ref_dts_delta: c_int

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.

§pts_dts_delta: c_int

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.

§cur_frame_pos: [i64; 4]

Position of the packet in file.

Analogous to cur_frame_pts/dts

§pos: i64

Byte position of currently parsed frame in stream.

§last_pos: i64

Previous frame byte position.

§duration: c_int

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.

§field_order: AVFieldOrder§picture_structure: AVPictureStructure

Indicate whether a picture is coded as a frame, top field or bottom field.

For example, H.264 field_pic_flag equal to 0 corresponds to AV_PICTURE_STRUCTURE_FRAME. An H.264 picture with field_pic_flag equal to 1 and bottom_field_flag equal to 0 corresponds to AV_PICTURE_STRUCTURE_TOP_FIELD.

§output_picture_number: c_int

Picture number incremented in presentation or output order. This field may be reinitialized at the first picture of a new sequence.

For example, this corresponds to H.264 PicOrderCnt.

§width: c_int

Dimensions of the decoded video intended for presentation.

§height: c_int§coded_width: c_int

Dimensions of the coded video.

§coded_height: c_int§format: c_int

The format of the coded data, corresponds to enum AVPixelFormat for video and for enum AVSampleFormat for audio.

Note that a decoder can have considerable freedom in how exactly it decodes the data, so the format reported here might be different from the one returned by a decoder.

Trait Implementations§

source§

impl Clone for AVCodecParserContext

source§

fn clone(&self) -> AVCodecParserContext

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AVCodecParserContext

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for AVCodecParserContext

source§

fn eq(&self, other: &AVCodecParserContext) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for AVCodecParserContext

source§

impl Eq for AVCodecParserContext

source§

impl StructuralPartialEq for AVCodecParserContext

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.