diff --git a/libavfilter/dualinput.c b/libavfilter/dualinput.c index 1a078a25e4..44750973a6 100644 --- a/libavfilter/dualinput.c +++ b/libavfilter/dualinput.c @@ -66,6 +66,9 @@ int ff_dualinput_init(AVFilterContext *ctx, FFDualInputContext *s) in[1].after = EXT_NULL; in[1].sync = 0; } + if (s->skip_initial_unpaired) { + in[1].before = EXT_STOP; + } return ff_framesync_configure(&s->fs); } diff --git a/libavfilter/dualinput.h b/libavfilter/dualinput.h index 5ff23e6249..707b10c397 100644 --- a/libavfilter/dualinput.h +++ b/libavfilter/dualinput.h @@ -35,6 +35,7 @@ typedef struct { AVFrame *(*process)(AVFilterContext *ctx, AVFrame *main, const AVFrame *second); int shortest; ///< terminate stream when the second input terminates int repeatlast; ///< repeat last second frame + int skip_initial_unpaired; ///< Skip initial frames that do not have a 2nd input } FFDualInputContext; int ff_dualinput_init(AVFilterContext *ctx, FFDualInputContext *s);