aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/internal.h
diff options
context:
space:
mode:
authorNicolas George <nicolas.george@normalesup.org>2013-03-31 19:17:57 +0200
committerNicolas George <nicolas.george@normalesup.org>2013-04-03 17:33:27 +0200
commit79d8cfacf07863500d4fedec669c49e2552c3876 (patch)
treede362386cfaf64843de4de9308e695c2f53a9ccc /libavfilter/internal.h
parentc208576cef0a97903bbeac4f580fa436605a5c3e (diff)
downloadffmpeg-79d8cfacf07863500d4fedec669c49e2552c3876.tar.gz
lavfi: loop on request_frame if necessary.
Some filters need several input frames before producing output. For these filter, it becomes simpler to return 0 in request_frame() and let the framework call it again until output has been produced.
Diffstat (limited to 'libavfilter/internal.h')
-rw-r--r--libavfilter/internal.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/libavfilter/internal.h b/libavfilter/internal.h
index 9a42ae08df..0b28422f1f 100644
--- a/libavfilter/internal.h
+++ b/libavfilter/internal.h
@@ -325,4 +325,18 @@ int ff_buffersink_read_samples_compat(AVFilterContext *ctx, AVFilterBufferRef **
*/
int ff_filter_frame(AVFilterLink *link, AVFrame *frame);
+/**
+ * Flags for AVFilterLink.flags.
+ */
+enum {
+
+ /**
+ * Frame requests may need to loop in order to be fulfilled.
+ * A filter must set this flags on an output link if it may return 0 in
+ * request_frame() without filtering a frame.
+ */
+ FF_LINK_FLAG_REQUEST_LOOP = 1,
+
+};
+
#endif /* AVFILTER_INTERNAL_H */