Struct rsmpeg::ffi::AVFilterLink [−][src]
#[repr(C)]pub struct AVFilterLink {}Show fields
pub src: *mut AVFilterContext, pub srcpad: *mut AVFilterPad, pub dst: *mut AVFilterContext, pub dstpad: *mut AVFilterPad, pub type_: i32, pub w: i32, pub h: i32, pub sample_aspect_ratio: AVRational, pub channel_layout: u64, pub sample_rate: i32, pub format: i32, pub time_base: AVRational, pub incfg: AVFilterFormatsConfig, pub outcfg: AVFilterFormatsConfig, pub init_state: u32, pub graph: *mut AVFilterGraph, pub current_pts: i64, pub current_pts_us: i64, pub age_index: i32, pub frame_rate: AVRational, pub partial_buf: *mut AVFrame, pub partial_buf_size: i32, pub min_samples: i32, pub max_samples: i32, pub channels: i32, pub frame_count_in: i64, pub frame_count_out: i64, pub frame_pool: *mut c_void, pub frame_wanted_out: i32, pub hw_frames_ctx: *mut AVBufferRef, pub reserved: [i8; 61440],
Expand description
A link between two filters. This contains pointers to the source and destination filters between which this link exists, and the indexes of the pads involved. In addition, this link also contains the parameters which have been negotiated and agreed upon between the filter, such as image dimensions, format, etc.
Applications must not normally access the link structure directly. Use the buffersrc and buffersink API instead. In the future, access to the header may be reserved for filters implementation.
Fields
src: *mut AVFilterContext
Expand description
< source filter
srcpad: *mut AVFilterPad
Expand description
< output pad on the source filter
dst: *mut AVFilterContext
Expand description
< dest filter
dstpad: *mut AVFilterPad
Expand description
< input pad on the dest filter
type_: i32
Expand description
< filter media type
w: i32
Expand description
< agreed upon image width
h: i32
Expand description
< agreed upon image height
sample_aspect_ratio: AVRational
Expand description
< agreed upon sample aspect ratio
channel_layout: u64
Expand description
< channel layout of current buffer (see libavutil/channel_layout.h)
sample_rate: i32
Expand description
< samples per second
format: i32
Expand description
< agreed upon media format
time_base: AVRational
Expand description
Define the time base used by the PTS of the frames/samples which will pass through this link. During the configuration stage, each filter is supposed to change only the output timebase, while the timebase of the input link is assumed to be an unchangeable property.
incfg: AVFilterFormatsConfig
Expand description
Lists of supported formats / etc. supported by the input filter.
outcfg: AVFilterFormatsConfig
Expand description
Lists of supported formats / etc. supported by the output filter.
init_state: u32
graph: *mut AVFilterGraph
Expand description
Graph the filter belongs to.
current_pts: i64
Expand description
Current timestamp of the link, as defined by the most recent frame(s), in link time_base units.
current_pts_us: i64
Expand description
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units.
age_index: i32
Expand description
Index in the age array.
frame_rate: AVRational
Expand description
Frame rate of the stream on the link, or 1/0 if unknown or variable; if left to 0/0, will be automatically copied from the first input of the source filter if it exists.
Sources should set it to the best estimation of the real frame rate. If the source frame rate is unknown or variable, set this to 1/0. Filters should update it if necessary depending on their function. Sinks can use it to set a default output frame rate. It is similar to the r_frame_rate field in AVStream.
partial_buf: *mut AVFrame
Expand description
Buffer partially filled with samples to achieve a fixed/minimum size.
partial_buf_size: i32
Expand description
Size of the partial buffer to allocate. Must be between min_samples and max_samples.
min_samples: i32
Expand description
Minimum number of samples to filter at once. If filter_frame() is called with fewer samples, it will accumulate them in partial_buf. This field and the related ones must not be changed after filtering has started. If 0, all related fields are ignored.
max_samples: i32
Expand description
Maximum number of samples to filter at once. If filter_frame() is called with more samples, it will split them.
channels: i32
Expand description
Number of channels.
frame_count_in: i64
Expand description
Number of past frames sent through the link.
frame_count_out: i64
Expand description
Number of past frames sent through the link.
frame_pool: *mut c_void
Expand description
A pointer to a FFFramePool struct.
frame_wanted_out: i32
Expand description
True if a frame is currently wanted on the output of this filter. Set when ff_request_frame() is called by the output, cleared when a frame is filtered.
hw_frames_ctx: *mut AVBufferRef
Expand description
For hwaccel pixel formats, this should be a reference to the AVHWFramesContext describing the frames.
reserved: [i8; 61440]
Expand description
Internal structure members. The fields below this limit are internal for libavfilter’s use and must in no way be accessed by applications.
Trait Implementations
impl Clone for AVFilterLink
[src]
impl Clone for AVFilterLink
[src]pub fn clone(&self) -> AVFilterLink
[src]
pub fn clone(&self) -> AVFilterLink
[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 Copy for AVFilterLink
[src]
Auto Trait Implementations
impl RefUnwindSafe for AVFilterLink
impl !Send for AVFilterLink
impl !Sync for AVFilterLink
impl Unpin for AVFilterLink
impl UnwindSafe for AVFilterLink
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