libavfilter/internal.h File Reference

internal API functions More...

#include "avfilter.h"
#include "avfiltergraph.h"
#include "formats.h"
#include "video.h"

Go to the source code of this file.

Data Structures

struct  AVFilterPool
struct  AVFilterCommand

Defines

#define POOL_SIZE   32
#define ff_tlog(pctx,...)   do { if (0) av_log(pctx, AV_LOG_DEBUG, __VA_ARGS__); } while (0)
#define FF_TPRINTF_START(ctx, func)   ff_tlog(NULL, "%-16s: ", #func)
#define AVFILTER_DEFINE_CLASS(fname)
#define FF_INLINK_IDX(link)   ((int)((link)->dstpad - (link)->dst->input_pads))
 Find the index of a link.
#define FF_OUTLINK_IDX(link)   ((int)((link)->srcpad - (link)->src->output_pads))

Functions

void ff_avfilter_graph_update_heap (AVFilterGraph *graph, AVFilterLink *link)
 Update the position of a link in the age heap.
void ff_avfilter_default_free_buffer (AVFilterBuffer *buf)
 default handler for freeing audio/video buffer when there are no references left
int ff_fmt_is_in (int fmt, const int *fmts)
 Tell is a format is contained in the provided list terminated by -1.
intff_copy_int_list (const int *const list)
 Return a copy of a list of integers terminated by -1, or NULL in case of copy failure.
int64_t * ff_copy_int64_list (const int64_t *const list)
 Return a copy of a list of 64-bit integers, or NULL in case of copy failure.
int ff_parse_pixel_format (enum PixelFormat *ret, const char *arg, void *log_ctx)
 Parse a pixel format.
int ff_parse_sample_rate (int *ret, const char *arg, void *log_ctx)
 Parse a sample rate.
int ff_parse_time_base (AVRational *ret, const char *arg, void *log_ctx)
 Parse a time base.
int ff_parse_sample_format (int *ret, const char *arg, void *log_ctx)
 Parse a sample format name or a corresponding integer representation.
int ff_parse_channel_layout (int64_t *ret, const char *arg, void *log_ctx)
 Parse a channel layout or a corresponding integer representation.
void ff_update_link_current_pts (AVFilterLink *link, int64_t pts)
void ff_free_pool (AVFilterPool *pool)
void ff_command_queue_pop (AVFilterContext *filter)
char * ff_get_ref_perms_string (char *buf, size_t buf_size, int perms)
void ff_tlog_ref (void *ctx, AVFilterBufferRef *ref, int end)
void ff_tlog_link (void *ctx, AVFilterLink *link, int end)
void ff_insert_pad (unsigned idx, unsigned *count, size_t padidx_off, AVFilterPad **pads, AVFilterLink ***links, AVFilterPad *newpad)
 Insert a new pad.
static void ff_insert_inpad (AVFilterContext *f, unsigned index, AVFilterPad *p)
 Insert a new input pad for the filter.
static void ff_insert_outpad (AVFilterContext *f, unsigned index, AVFilterPad *p)
 Insert a new output pad for the filter.
int ff_poll_frame (AVFilterLink *link)
 Poll a frame from the filter chain.
int ff_request_frame (AVFilterLink *link)
 Request an input frame from the filter at the other end of the link.
AVFilterBufferRefff_copy_buffer_ref (AVFilterLink *outlink, AVFilterBufferRef *ref)
int ff_buffersink_read_compat (AVFilterContext *ctx, AVFilterBufferRef **buf)
int ff_buffersink_read_samples_compat (AVFilterContext *ctx, AVFilterBufferRef **pbuf, int nb_samples)


Detailed Description

internal API functions

Definition in file internal.h.


Define Documentation

#define AVFILTER_DEFINE_CLASS ( fname   ) 

Value:

static const AVClass fname##_class = {      \
        .class_name = #fname,                   \
        .item_name  = av_default_item_name,     \
        .option     = fname##_options,          \
        .version    = LIBAVUTIL_VERSION_INT,    \
        .category   = AV_CLASS_CATEGORY_FILTER, \
    }

Definition at line 348 of file internal.h.

#define FF_INLINK_IDX ( link   )     ((int)((link)->dstpad - (link)->dst->input_pads))

Find the index of a link.

I.e. find i such that link == ctx->(in|out)puts[i]

Definition at line 365 of file internal.h.

Referenced by get_audio_buffer(), get_video_buffer(), and process_frame().

#define FF_OUTLINK_IDX ( link   )     ((int)((link)->srcpad - (link)->src->output_pads))

#define ff_tlog ( pctx,
...   )     do { if (0) av_log(pctx, AV_LOG_DEBUG, __VA_ARGS__); } while (0)

#define FF_TPRINTF_START ( ctx,
func   )     ff_tlog(NULL, "%-16s: ", #func)

#define POOL_SIZE   32

Definition at line 32 of file internal.h.

Referenced by ff_default_get_video_buffer(), ff_free_pool(), and store_in_pool().


Function Documentation

void ff_avfilter_default_free_buffer ( AVFilterBuffer buf  ) 

default handler for freeing audio/video buffer when there are no references left

Definition at line 34 of file buffer.c.

Referenced by avfilter_get_audio_buffer_ref_from_arrays(), and avfilter_get_video_buffer_ref_from_arrays().

void ff_avfilter_graph_update_heap ( AVFilterGraph graph,
AVFilterLink link 
)

Update the position of a link in the age heap.

Definition at line 1038 of file avfiltergraph.c.

Referenced by ff_update_link_current_pts().

int ff_buffersink_read_compat ( AVFilterContext ctx,
AVFilterBufferRef **  buf 
)

Definition at line 62 of file buffersink.c.

Referenced by av_buffersink_read().

int ff_buffersink_read_samples_compat ( AVFilterContext ctx,
AVFilterBufferRef **  pbuf,
int  nb_samples 
)

Definition at line 103 of file buffersink.c.

Referenced by av_buffersink_read_samples().

void ff_command_queue_pop ( AVFilterContext filter  ) 

Definition at line 90 of file avfilter.c.

Referenced by avfilter_free(), and ff_start_frame().

AVFilterBufferRef* ff_copy_buffer_ref ( AVFilterLink outlink,
AVFilterBufferRef ref 
)

Definition at line 202 of file buffer.c.

Referenced by av_buffersrc_add_ref(), and frame_to_buf().

int64_t* ff_copy_int64_list ( const int64_t *const   list  ) 

Return a copy of a list of 64-bit integers, or NULL in case of copy failure.

Definition at line 193 of file formats.c.

Referenced by asink_init().

int* ff_copy_int_list ( const int *const   list  ) 

Return a copy of a list of integers terminated by -1, or NULL in case of copy failure.

Definition at line 186 of file formats.c.

Referenced by asink_init(), and vsink_init().

int ff_fmt_is_in ( int  fmt,
const int fmts 
)

Tell is a format is contained in the provided list terminated by -1.

Definition at line 163 of file formats.c.

Referenced by config_input(), config_input_main(), config_input_overlay(), config_out_props(), and config_props().

void ff_free_pool ( AVFilterPool pool  ) 

Definition at line 91 of file buffer.c.

Referenced by avfilter_link_free(), and store_in_pool().

char* ff_get_ref_perms_string ( char *  buf,
size_t  buf_size,
int  perms 
)

Definition at line 34 of file avfilter.c.

Referenced by ff_get_video_buffer(), and ff_tlog_ref().

static void ff_insert_inpad ( AVFilterContext f,
unsigned  index,
AVFilterPad p 
) [inline, static]

Insert a new input pad for the filter.

Definition at line 310 of file internal.h.

Referenced by init(), and join_init().

static void ff_insert_outpad ( AVFilterContext f,
unsigned  index,
AVFilterPad p 
) [inline, static]

Insert a new output pad for the filter.

Definition at line 321 of file internal.h.

Referenced by init(), movie_common_init(), and split_init().

void ff_insert_pad ( unsigned  idx,
unsigned *  count,
size_t  padidx_off,
AVFilterPad **  pads,
AVFilterLink ***  links,
AVFilterPad newpad 
)

Insert a new pad.

Parameters:
idx Insertion point. Pad is inserted at the end if this point is beyond the end of the list of pads.
count Pointer to the number of pads in the list
padidx_off Offset within an AVFilterLink structure to the element to increment when inserting a new pad causes link numbering to change
pads Pointer to the pointer to the beginning of the list of pads
links Pointer to the pointer to the beginning of the list of links
newpad The new pad to add. A copy is made when adding.

Definition at line 99 of file avfilter.c.

Referenced by ff_insert_inpad(), and ff_insert_outpad().

int ff_parse_channel_layout ( int64_t *  ret,
const char *  arg,
void *  log_ctx 
)

Parse a channel layout or a corresponding integer representation.

Parameters:
ret 64bit integer pointer to where the value should be written.
arg string to parse
log_ctx log context
Returns:
0 in case of success, a negative AVERROR code on error

Definition at line 514 of file formats.c.

Referenced by init().

int ff_parse_pixel_format ( enum PixelFormat ret,
const char *  arg,
void *  log_ctx 
)

Parse a pixel format.

Parameters:
ret pixel format pointer to where the value should be written
arg string to parse
log_ctx log context
Returns:
0 in case of success, a negative AVERROR code on error

Definition at line 461 of file formats.c.

Referenced by init(), and init_video().

int ff_parse_sample_format ( int ret,
const char *  arg,
void *  log_ctx 
)

Parse a sample format name or a corresponding integer representation.

Parameters:
ret integer pointer to where the value should be written
arg string to parse
log_ctx log context
Returns:
0 in case of success, a negative AVERROR code on error

Definition at line 476 of file formats.c.

Referenced by init().

int ff_parse_sample_rate ( int ret,
const char *  arg,
void *  log_ctx 
)

Parse a sample rate.

Parameters:
ret unsigned integer pointer to where the value should be written
arg string to parse
log_ctx log context
Returns:
0 in case of success, a negative AVERROR code on error

Definition at line 502 of file formats.c.

Referenced by init().

int ff_parse_time_base ( AVRational ret,
const char *  arg,
void *  log_ctx 
)

Parse a time base.

Parameters:
ret unsigned AVRational pointer to where the value should be written
arg string to parse
log_ctx log context
Returns:
0 in case of success, a negative AVERROR code on error

Definition at line 491 of file formats.c.

int ff_poll_frame ( AVFilterLink link  ) 

Poll a frame from the filter chain.

Parameters:
link the input link
Returns:
the number of immediately available frames, a negative number in case of error

Definition at line 354 of file avfilter.c.

Referenced by av_buffersink_poll_frame(), ff_buffersink_read_compat(), ff_poll_frame(), and poll_frame().

int ff_request_frame ( AVFilterLink link  ) 

Request an input frame from the filter at the other end of the link.

Parameters:
link the input link
Returns:
zero on success

Definition at line 332 of file avfilter.c.

Referenced by av_buffersink_get_buffer_ref(), avfilter_graph_request_oldest(), ff_buffersink_read_compat(), ff_request_frame(), join_request_frame(), poll_frame(), request_frame(), request_samples(), and return_audio_frame().

void ff_tlog_link ( void *  ctx,
AVFilterLink link,
int  end 
)

void ff_tlog_ref ( void *  ctx,
AVFilterBufferRef ref,
int  end 
)

Definition at line 46 of file avfilter.c.

Referenced by ff_get_video_buffer(), and ff_start_frame().

void ff_update_link_current_pts ( AVFilterLink link,
int64_t  pts 
)

Definition at line 372 of file avfilter.c.

Referenced by ff_filter_samples_framed(), and ff_start_frame().


Generated on Fri Oct 26 02:50:05 2012 for FFmpeg by  doxygen 1.5.8