25#ifndef AVFILTER_AVFILTER_INTERNAL_H
26#define AVFILTER_AVFILTER_INTERNAL_H
209#define FF_TPRINTF_START(ctx, func) ff_tlog(NULL, "%-16s: ", #func)
214#define ff_tlog_link(ctx, link, end) do { } while(0)
static AVFormatContext * ctx
Main libavfilter public API header.
AVFilterContext * ff_filter_alloc(const AVFilter *filter, const char *inst_name)
Allocate a new filter context and return it.
static FFFilterContext * fffilterctx(AVFilterContext *ctx)
void ff_filter_graph_remove_filter(AVFilterGraph *graph, AVFilterContext *filter)
Remove a filter from a graph;.
int ff_filter_graph_run_once(AVFilterGraph *graph)
Run one round of processing on a filter graph.
static FFFilterGraph * fffiltergraph(AVFilterGraph *graph)
static FilterLinkInternal * ff_link_internal(AVFilterLink *link)
int ff_filter_config_links(AVFilterContext *filter)
Negotiate the media format, dimensions, etc of all inputs to a filter.
void ff_avfilter_graph_update_heap(AVFilterGraph *graph, struct FilterLinkInternal *li)
Update the position of a link in the age heap.
void ff_graph_thread_free(FFFilterGraph *graph)
int ff_filter_opt_parse(void *logctx, const AVClass *priv_class, AVDictionary **options, const char *args)
Parse filter options into a dictionary.
int ff_graph_thread_init(FFFilterGraph *graph)
int ff_inlink_process_commands(AVFilterLink *link, const AVFrame *frame)
Process the commands queued in the link up to the time of the frame.
#define ff_tlog_link(ctx, link, end)
int ff_filter_activate(AVFilterContext *filter)
int avfilter_execute_func(AVFilterContext *ctx, avfilter_action_func *func, void *arg, int *ret, int nb_jobs)
A function executing multiple jobs, possibly in parallel.
Describe the class of an AVClass context structure.
struct AVFilterCommand * next
double time
time expressed in seconds
char * arg
optional argument for the command
A link between two filters.
This structure describes decoded (raw) audio or video data.
struct AVFilterCommand * command_queue
struct AVExpr * enable
parsed expression
AVFilterContext p
The public AVFilterContext.
double * var_values
variable values for the enable expression
unsigned ready
Ready status of the filter.
avfilter_execute_func * execute
avfilter_execute_func * thread_execute
AVFilterGraph p
The public AVFilterGraph.
FFFrameQueueGlobal frame_queues
struct FilterLinkInternal ** sink_links
unsigned disable_auto_convert
Structure to hold global options and statistics for frame queues.
Queue of AVFrame pointers.
int64_t status_in_pts
Timestamp of the input status change.
int frame_wanted_out
True if a frame is currently wanted on the output of this filter.
int age_index
Index in the age array.
@ AVLINK_STARTINIT
started, but incomplete
@ AVLINK_UNINIT
not started
int status_in
Link input status.
FFFrameQueue fifo
Queue of frames waiting to be filtered.
enum FilterLinkInternal::@336377057131212365164072214263227110225222156364 init_state
stage of the initialization of the link properties (dimensions, etc)
int frame_blocked_in
If set, the source filter can not generate a frame as is.
FFFramePool frame_pool
Pool of frames used for allocations.
int status_out
Link output status.
Link properties exposed to filter code, but not external callers.
void(* filter)(uint8_t *src, ptrdiff_t stride, int qscale)