[FFmpeg-cvslog] r11982 - trunk/libavfilter/avfilter.c
vitor
subversion
Fri Feb 15 22:36:14 CET 2008
Author: vitor
Date: Fri Feb 15 22:36:13 2008
New Revision: 11982
Log:
Adjust the default start_frame() and end_frame() implementations to simplify
the implementation of simple filters.
Commited in SoC by Bobby Bingham on 2007-07-08 16:48:15
Modified:
trunk/libavfilter/avfilter.c
Modified: trunk/libavfilter/avfilter.c
==============================================================================
--- trunk/libavfilter/avfilter.c (original)
+++ trunk/libavfilter/avfilter.c Fri Feb 15 22:36:13 2008
@@ -64,13 +64,28 @@ AVFilterPicRef *avfilter_default_get_vid
void avfilter_default_start_frame(AVFilterLink *link, AVFilterPicRef *picref)
{
+ AVFilterLink *out = link->dst->outputs[0];
+
link->cur_pic = picref;
+
+ if(out) {
+ out->outpic = avfilter_get_video_buffer(out, AV_PERM_WRITE);
+ avfilter_start_frame(out, avfilter_ref_pic(out->outpic, ~0));
+ }
}
void avfilter_default_end_frame(AVFilterLink *link)
{
+ AVFilterLink *out = link->dst->outputs[0];
+
avfilter_unref_pic(link->cur_pic);
link->cur_pic = NULL;
+
+ if(out) {
+ avfilter_unref_pic(out->outpic);
+ out->outpic = NULL;
+ avfilter_end_frame(out);
+ }
}
AVFilterPicRef *avfilter_ref_pic(AVFilterPicRef *ref, int pmask)
More information about the ffmpeg-cvslog
mailing list