26 #define VLC_FILTER_H 1
80 const vlc_mouse_t *p_old,
81 const vlc_mouse_t *p_new );
83 #define pf_video_filter u.video.pf_filter
84 #define pf_video_flush u.video.pf_flush
85 #define pf_video_mouse u.video.pf_mouse
86 #define pf_video_buffer_new u.video.pf_buffer_new
87 #define pf_video_buffer_del u.video.pf_buffer_del
93 #define pf_audio_filter u.audio.pf_filter
98 const picture_t *, int, int, int );
100 #define pf_video_blend u.blend.pf_blend
112 #define pf_sub_source u.sub.pf_source
113 #define pf_sub_buffer_new u.sub.pf_buffer_new
114 #define pf_sub_buffer_del u.sub.pf_buffer_del
115 #define pf_sub_mouse u.sub.pf_mouse
121 #define pf_sub_filter u.subf.pf_filter
126 subpicture_region_t *,
129 subpicture_region_t *,
132 #define pf_render_text u.render.pf_text
133 #define pf_render_html u.render.pf_html
156 picture_t *p_picture = p_filter->pf_video_buffer_new( p_filter );
158 msg_Warn( p_filter,
"can't get output picture" );
171 p_filter->pf_video_buffer_del( p_filter, p_picture );
179 if( p_filter->pf_video_flush )
180 p_filter->pf_video_flush( p_filter );
194 subpicture_t *p_subpicture = p_filter->pf_sub_buffer_new( p_filter );
196 msg_Warn( p_filter,
"can't get output subpicture" );
209 p_filter->pf_sub_buffer_del( p_filter, p_subpicture );
224 ppp_attachment, pi_attachment );
259 #define VIDEO_FILTER_WRAPPER( name ) \
260 static picture_t *name ## _Filter ( filter_t *p_filter, \
263 picture_t *p_outpic = filter_NewPicture( p_filter ); \
266 name( p_filter, p_pic, p_outpic ); \
267 picture_CopyProperties( p_outpic, p_pic ); \
269 picture_Release( p_pic ); \
293 #define filter_chain_New( a, b, c, d, e, f ) filter_chain_New( VLC_OBJECT( a ), b, c, d, e, f )