diff options
author | Bobby Bingham <uhmmmm@gmail.com> | 2010-03-18 23:12:48 +0000 |
---|---|---|
committer | Bobby Bingham <uhmmmm@gmail.com> | 2010-03-18 23:12:48 +0000 |
commit | 91d1c741bfa5c39c222bb3f86357a9da50227df1 (patch) | |
tree | d04e1857cea0e659baac84818f8ae7cbd9b0a9b6 /libavfilter | |
parent | 22e8222fd25d1f6ba967abd687cb98fe244f6e3b (diff) | |
download | ffmpeg-91d1c741bfa5c39c222bb3f86357a9da50227df1.tar.gz |
Create a set of null callback functions.
These are useful for filters which don't modify the image data.
Originally committed as revision 22594 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/avfilter.h | 13 | ||||
-rw-r--r-- | libavfilter/defaults.c | 20 |
2 files changed, 33 insertions, 0 deletions
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 060c6758bb..7867cd09fd 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -395,6 +395,19 @@ void avfilter_set_common_formats(AVFilterContext *ctx, AVFilterFormats *formats) /** Default handler for query_formats() */ int avfilter_default_query_formats(AVFilterContext *ctx); +/** start_frame() handler for filters which simply pass video along */ +void avfilter_null_start_frame(AVFilterLink *link, AVFilterPicRef *picref); + +/** draw_slice() handler for filters which simply pass video along */ +void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir); + +/** end_frame() handler for filters which simply pass video along */ +void avfilter_null_end_frame(AVFilterLink *link); + +/** get_video_buffer() handler for filters which simply pass video along */ +AVFilterPicRef *avfilter_null_get_video_buffer(AVFilterLink *link, + int perms, int w, int h); + /** * Filter definition. This defines the pads a filter contains, and all the * callback functions used to interact with the filter. diff --git a/libavfilter/defaults.c b/libavfilter/defaults.c index 3f5f6e1976..afa0f669b9 100644 --- a/libavfilter/defaults.c +++ b/libavfilter/defaults.c @@ -165,3 +165,23 @@ int avfilter_default_query_formats(AVFilterContext *ctx) return 0; } +void avfilter_null_start_frame(AVFilterLink *link, AVFilterPicRef *picref) +{ + avfilter_start_frame(link->dst->outputs[0], picref); +} + +void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir) +{ + avfilter_draw_slice(link->dst->outputs[0], y, h, slice_dir); +} + +void avfilter_null_end_frame(AVFilterLink *link) +{ + avfilter_end_frame(link->dst->outputs[0]); +} + +AVFilterPicRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h) +{ + return avfilter_get_video_buffer(link->dst->outputs[0], perms, w, h); +} + |