diff options
author | Nicolas George <nicolas.george@normalesup.org> | 2013-08-28 00:07:22 +0200 |
---|---|---|
committer | Nicolas George <nicolas.george@normalesup.org> | 2013-09-23 09:50:09 +0200 |
commit | 231e50157cc9a7a8b08ba3d0e566279fc6cbb800 (patch) | |
tree | ec04d590c371575edfa6635f2f41d0112cc7e296 /libavfilter/dualinput.h | |
parent | 53319d5c932867bcc84798622dd171b5c19165f0 (diff) |
lavfi/dualinput: reimplement on top of framesync.
Diffstat (limited to 'libavfilter/dualinput.h')
-rw-r--r-- | libavfilter/dualinput.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libavfilter/dualinput.h b/libavfilter/dualinput.h index 98d05442c7..aaefd78efa 100644 --- a/libavfilter/dualinput.h +++ b/libavfilter/dualinput.h @@ -26,18 +26,20 @@ #include <stdint.h> #include "bufferqueue.h" +#include "framesync.h" #include "internal.h" typedef struct { + FFFrameSync fs; + FFFrameSyncIn second_input; /* must be immediately after fs */ + uint8_t frame_requested; - uint8_t second_eof; - AVFrame *second_frame; - struct FFBufQueue queue[2]; AVFrame *(*process)(AVFilterContext *ctx, AVFrame *main, const AVFrame *second); int shortest; ///< terminate stream when the second input terminates int repeatlast; ///< repeat last second frame } FFDualInputContext; +int ff_dualinput_init(AVFilterContext *ctx, FFDualInputContext *s); int ff_dualinput_filter_frame_main(FFDualInputContext *s, AVFilterLink *inlink, AVFrame *in); int ff_dualinput_filter_frame_second(FFDualInputContext *s, AVFilterLink *inlink, AVFrame *in); int ff_dualinput_request_frame(FFDualInputContext *s, AVFilterLink *outlink); |