Struct rsmpeg::ffi::AVCodecParserContext [−][src]
#[repr(C)]pub struct AVCodecParserContext {}Show 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: i32, pub repeat_pict: i32, pub pts: i64, pub dts: i64, pub last_pts: i64, pub last_dts: i64, pub fetch_timestamp: i32, pub cur_frame_start_index: i32, pub cur_frame_offset: [i64; 4], pub cur_frame_pts: [i64; 4], pub cur_frame_dts: [i64; 4], pub flags: i32, pub offset: i64, pub cur_frame_end: [i64; 4], pub key_frame: i32, pub convergence_duration: i64, pub dts_sync_point: i32, pub dts_ref_dts_delta: i32, pub pts_dts_delta: i32, pub cur_frame_pos: [i64; 4], pub pos: i64, pub last_pos: i64, pub duration: i32, pub field_order: u32, pub picture_structure: u32, pub output_picture_number: i32, pub width: i32, pub height: i32, pub coded_width: i32, pub coded_height: i32, pub format: i32,
Fields
priv_data: *mut c_void
parser: *mut AVCodecParser
frame_offset: i64
cur_offset: i64
next_frame_offset: i64
pict_type: i32
repeat_pict: i32
Expand description
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: i32
cur_frame_start_index: i32
cur_frame_offset: [i64; 4]
cur_frame_pts: [i64; 4]
cur_frame_dts: [i64; 4]
flags: i32
offset: i64
Expand description
< byte offset from starting packet start
cur_frame_end: [i64; 4]
key_frame: i32
Expand description
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
Expand description
@deprecated unused
dts_sync_point: i32
Expand description
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: i32
Expand description
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: i32
Expand description
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]
Expand description
Position of the packet in file.
Analogous to cur_frame_pts/dts
pos: i64
Expand description
Byte position of currently parsed frame in stream.
last_pos: i64
Expand description
Previous frame byte position.
duration: i32
Expand description
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: u32
picture_structure: u32
Expand description
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: i32
Expand description
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: i32
Expand description
Dimensions of the decoded video intended for presentation.
height: i32
coded_width: i32
Expand description
Dimensions of the coded video.
coded_height: i32
format: i32
Expand description
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
impl Clone for AVCodecParserContext
[src]
impl Clone for AVCodecParserContext
[src]pub fn clone(&self) -> AVCodecParserContext
[src]
pub fn clone(&self) -> AVCodecParserContext
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for AVCodecParserContext
[src]
impl Debug for AVCodecParserContext
[src]impl Copy for AVCodecParserContext
[src]
Auto Trait Implementations
impl RefUnwindSafe for AVCodecParserContext
impl !Send for AVCodecParserContext
impl !Sync for AVCodecParserContext
impl Unpin for AVCodecParserContext
impl UnwindSafe for AVCodecParserContext
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more