diff options
author | Clément Bœsch <u@pkh.me> | 2014-05-03 22:43:20 +0200 |
---|---|---|
committer | Clément Bœsch <u@pkh.me> | 2014-05-08 23:34:51 +0200 |
commit | 69d72140accb8f6e61f046fa5b91f0f9c2f52f22 (patch) | |
tree | 002e5b57e65538784fa02df2771ff90fc3654c61 | |
parent | 8de600de553a133bead1b54128c482bcaaa2d292 (diff) | |
download | ffmpeg-69d72140accb8f6e61f046fa5b91f0f9c2f52f22.tar.gz |
avfilter/phase: add timeline support.
-rw-r--r-- | libavfilter/vf_phase.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavfilter/vf_phase.c b/libavfilter/vf_phase.c index dd3ecedd10..297ef70ec5 100644 --- a/libavfilter/vf_phase.c +++ b/libavfilter/vf_phase.c @@ -243,6 +243,15 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) int plane, top, y; AVFrame *out; + if (ctx->is_disabled) { + av_frame_free(&s->frame); + /* we keep a reference to the previous frame so the filter can start + * being useful as soon as it's not disabled, avoiding the 1-frame + * delay. */ + s->frame = av_frame_clone(in); + return ff_filter_frame(outlink, in); + } + out = ff_get_video_buffer(outlink, outlink->w, outlink->h); if (!out) { av_frame_free(&in); @@ -311,4 +320,5 @@ AVFilter ff_vf_phase = { .query_formats = query_formats, .inputs = phase_inputs, .outputs = phase_outputs, + .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, }; |