VLC  3.0.21
Data Structures | Macros | Typedefs | Functions
vlc_filter.h File Reference
Include dependency graph for vlc_filter.h:

Go to the source code of this file.

Data Structures

struct  filter_owner_t
 
struct  filter_t
 Structure describing a filter. More...
 

Macros

#define filter_AddProxyCallbacks(a, b, c)   filter_AddProxyCallbacks(VLC_OBJECT(a), b, c)
 
#define filter_DelProxyCallbacks(a, b, c)   filter_DelProxyCallbacks(VLC_OBJECT(a), b, c)
 
#define VIDEO_FILTER_WRAPPER(name)
 Create a picture_t *(*)( filter_t *, picture_t * ) compatible wrapper using a void (*)( filter_t *, picture_t *, picture_t * ) function. More...
 
#define filter_chain_New(a, b, c)   filter_chain_New( VLC_OBJECT( a ), b, c )
 
#define filter_chain_NewVideo(a, b, c)   filter_chain_NewVideo( VLC_OBJECT( a ), b, c )
 

Typedefs

typedef struct filter_owner_sys_t filter_owner_sys_t
 
typedef struct filter_owner_t filter_owner_t
 
typedef struct filter_chain_t filter_chain_t
 Filter chain management API The filter chain management API is used to dynamically construct filters and add them in a chain. More...
 

Functions

static picture_tfilter_NewPicture (filter_t *p_filter)
 This function will return a new picture usable by p_filter as an output buffer. More...
 
static void filter_Flush (filter_t *p_filter)
 Flush a filter. More...
 
static void filter_ChangeViewpoint (filter_t *p_filter, const vlc_viewpoint_t *vp)
 
static block_tfilter_DrainAudio (filter_t *p_filter)
 This function will drain, then flush an audio filter. More...
 
static subpicture_tfilter_NewSubpicture (filter_t *p_filter)
 This function will return a new subpicture usable by p_filter as an output buffer. More...
 
static int filter_GetInputAttachments (filter_t *p_filter, input_attachment_t ***ppp_attachment, int *pi_attachment)
 This function gives all input attachments at once. More...
 
void filter_AddProxyCallbacks (vlc_object_t *obj, filter_t *filter, vlc_callback_t restart_cb)
 This function duplicates every variables from the filter, and adds a proxy callback to trigger filter events from obj. More...
 
void filter_DelProxyCallbacks (vlc_object_t *obj, filter_t *filter, vlc_callback_t restart_cb)
 This function removes the callbacks previously added to every duplicated variables, and removes them afterward. More...
 
filter_tfilter_NewBlend (vlc_object_t *, const video_format_t *p_dst_chroma)
 It creates a blend filter. More...
 
int filter_ConfigureBlend (filter_t *, int i_dst_width, int i_dst_height, const video_format_t *p_src)
 It configures blend filter parameters that are allowed to changed after the creation. More...
 
int filter_Blend (filter_t *, picture_t *p_dst, int i_dst_x, int i_dst_y, const picture_t *p_src, int i_alpha)
 It blends a picture into another one. More...
 
void filter_DeleteBlend (filter_t *)
 It destroys a blend filter created by filter_NewBlend. More...
 
filter_chain_tfilter_chain_New (vlc_object_t *, const char *, enum es_format_category_e)
 Create new filter chain. More...
 
filter_chain_tfilter_chain_NewVideo (vlc_object_t *obj, bool change, const filter_owner_t *owner)
 Creates a new video filter chain. More...
 
void filter_chain_Delete (filter_chain_t *)
 Delete filter chain will delete all filters in the chain and free all allocated data. More...
 
void filter_chain_Reset (filter_chain_t *, const es_format_t *, const es_format_t *)
 Reset filter chain will delete all filters in the chain and reset p_fmt_in and p_fmt_out to the new values. More...
 
filter_tfilter_chain_AppendFilter (filter_chain_t *chain, const char *name, config_chain_t *cfg, const es_format_t *fmt_in, const es_format_t *fmt_out)
 Append a filter to the chain. More...
 
int filter_chain_AppendConverter (filter_chain_t *chain, const es_format_t *fmt_in, const es_format_t *fmt_out)
 Append a conversion to the chain. More...
 
int filter_chain_AppendFromString (filter_chain_t *chain, const char *str)
 Append new filter to filter chain from string. More...
 
void filter_chain_DeleteFilter (filter_chain_t *chain, filter_t *filter)
 Delete filter from filter chain. More...
 
bool filter_chain_IsEmpty (const filter_chain_t *chain)
 Checks if the filter chain is empty. More...
 
const es_format_tfilter_chain_GetFmtOut (filter_chain_t *chain)
 Get last output format of the last element in the filter chain. More...
 
picture_tfilter_chain_VideoFilter (filter_chain_t *chain, picture_t *pic)
 Apply the filter chain to a video picture. More...
 
void filter_chain_VideoFlush (filter_chain_t *)
 Flush a video filter chain. More...
 
void filter_chain_SubSource (filter_chain_t *chain, spu_t *, vlc_tick_t display_date)
 Generate subpictures from a chain of subpicture source "filters". More...
 
subpicture_tfilter_chain_SubFilter (filter_chain_t *chain, subpicture_t *subpic)
 Apply filter chain to subpictures. More...
 
int filter_chain_MouseFilter (filter_chain_t *, struct vlc_mouse_t *, const struct vlc_mouse_t *)
 Apply the filter chain to a mouse state. More...
 
int filter_chain_MouseEvent (filter_chain_t *, const struct vlc_mouse_t *, const video_format_t *)
 Inform the filter chain of mouse state. More...
 
int filter_chain_ForEach (filter_chain_t *chain, int(*cb)(filter_t *, void *), void *opaque)
 

Detailed Description

Filter modules interface