FFmpeg 7.0
|
A link between two filters. More...
#include <libavfilter/avfilter.h>
Data Fields | |
AVFilterContext * | src |
source filter | |
AVFilterPad * | srcpad |
output pad on the source filter | |
AVFilterContext * | dst |
dest filter | |
AVFilterPad * | dstpad |
input pad on the dest filter | |
enum AVMediaType | type |
filter media type | |
int | format |
agreed upon media format | |
int | w |
agreed upon image width | |
int | h |
agreed upon image height | |
AVRational | sample_aspect_ratio |
agreed upon sample aspect ratio | |
enum AVColorSpace | colorspace |
For non-YUV links, these are respectively set to fallback values (as appropriate for that colorspace). | |
enum AVColorRange | color_range |
agreed upon YUV color range | |
int | sample_rate |
samples per second | |
AVChannelLayout | ch_layout |
channel layout of current buffer (see libavutil/channel_layout.h) | |
AVRational | time_base |
Define the time base used by the PTS of the frames/samples which will pass through this link. | |
AVFilterFormatsConfig | incfg |
Lists of supported formats / etc. | |
AVFilterFormatsConfig | outcfg |
Lists of supported formats / etc. | |
struct AVFilterGraph * | graph |
Graph the filter belongs to. | |
int64_t | current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in link time_base units. | |
int64_t | current_pts_us |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units. | |
AVRational | frame_rate |
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. | |
int | min_samples |
Minimum number of samples to filter at once. | |
int | max_samples |
Maximum number of samples to filter at once. | |
int64_t | frame_count_in |
Number of past frames sent through the link. | |
int64_t | frame_count_out |
int64_t | sample_count_in |
Number of past samples sent through the link. | |
int64_t | sample_count_out |
int | frame_wanted_out |
True if a frame is currently wanted on the output of this filter. | |
AVBufferRef * | hw_frames_ctx |
For hwaccel pixel formats, this should be a reference to the AVHWFramesContext describing the frames. | |
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.
Definition at line 542 of file avfilter.h.
AVFilterContext* AVFilterLink::src |
source filter
Definition at line 543 of file avfilter.h.
AVFilterPad* AVFilterLink::srcpad |
output pad on the source filter
Definition at line 544 of file avfilter.h.
AVFilterContext* AVFilterLink::dst |
dest filter
Definition at line 546 of file avfilter.h.
AVFilterPad* AVFilterLink::dstpad |
input pad on the dest filter
Definition at line 547 of file avfilter.h.
enum AVMediaType AVFilterLink::type |
filter media type
Definition at line 549 of file avfilter.h.
int AVFilterLink::format |
agreed upon media format
Definition at line 551 of file avfilter.h.
Referenced by init_filters().
int AVFilterLink::w |
agreed upon image width
Definition at line 554 of file avfilter.h.
int AVFilterLink::h |
agreed upon image height
Definition at line 555 of file avfilter.h.
AVRational AVFilterLink::sample_aspect_ratio |
agreed upon sample aspect ratio
Definition at line 556 of file avfilter.h.
enum AVColorSpace AVFilterLink::colorspace |
For non-YUV links, these are respectively set to fallback values (as appropriate for that colorspace).
Note: This includes grayscale formats, as these are currently treated as forced full range always. agreed upon YUV color space
Definition at line 564 of file avfilter.h.
enum AVColorRange AVFilterLink::color_range |
agreed upon YUV color range
Definition at line 565 of file avfilter.h.
int AVFilterLink::sample_rate |
samples per second
Definition at line 568 of file avfilter.h.
Referenced by init_filters().
AVChannelLayout AVFilterLink::ch_layout |
channel layout of current buffer (see libavutil/channel_layout.h)
Definition at line 569 of file avfilter.h.
Referenced by init_filters().
AVRational AVFilterLink::time_base |
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.
Definition at line 578 of file avfilter.h.
Referenced by main().
AVFilterFormatsConfig AVFilterLink::incfg |
Lists of supported formats / etc.
supported by the input filter.
Definition at line 591 of file avfilter.h.
AVFilterFormatsConfig AVFilterLink::outcfg |
Lists of supported formats / etc.
supported by the output filter.
Definition at line 596 of file avfilter.h.
struct AVFilterGraph* AVFilterLink::graph |
Graph the filter belongs to.
Definition at line 601 of file avfilter.h.
int64_t AVFilterLink::current_pts |
Current timestamp of the link, as defined by the most recent frame(s), in link time_base units.
Definition at line 607 of file avfilter.h.
int64_t AVFilterLink::current_pts_us |
Current timestamp of the link, as defined by the most recent frame(s), in AV_TIME_BASE units.
Definition at line 613 of file avfilter.h.
AVRational AVFilterLink::frame_rate |
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.
Definition at line 626 of file avfilter.h.
int AVFilterLink::min_samples |
Minimum number of samples to filter at once.
If filter_frame() is called with fewer samples, it will accumulate them in fifo. This field and the related ones must not be changed after filtering has started. If 0, all related fields are ignored.
Definition at line 635 of file avfilter.h.
int AVFilterLink::max_samples |
Maximum number of samples to filter at once.
If filter_frame() is called with more samples, it will split them.
Definition at line 641 of file avfilter.h.
int64_t AVFilterLink::frame_count_in |
Number of past frames sent through the link.
Definition at line 646 of file avfilter.h.
int64_t AVFilterLink::frame_count_out |
Definition at line 646 of file avfilter.h.
int64_t AVFilterLink::sample_count_in |
Number of past samples sent through the link.
Definition at line 651 of file avfilter.h.
int64_t AVFilterLink::sample_count_out |
Definition at line 651 of file avfilter.h.
int AVFilterLink::frame_wanted_out |
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.
Definition at line 658 of file avfilter.h.
AVBufferRef* AVFilterLink::hw_frames_ctx |
For hwaccel pixel formats, this should be a reference to the AVHWFramesContext describing the frames.
Definition at line 664 of file avfilter.h.