[FFmpeg-devel] [PATCH 14/17] lavfi: disallow ff_request_frame for filters using activate.

Nicolas George george at nsup.org
Sat Dec 24 19:41:46 EET 2016


Having two different functions allows to have stricter tests
and detect errors earlier.

Signed-off-by: Nicolas George <george at nsup.org>
---
 libavfilter/avfilter.c | 1 +
 libavfilter/internal.h | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index c3e30b80b7..bacf6dc055 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -407,6 +407,7 @@ int ff_request_frame(AVFilterLink *link)
 {
     FF_TPRINTF_START(NULL, request_frame); ff_tlog_link(NULL, link, 1);
 
+    av_assert1(!link->dst->filter->activate);
     if (link->status_out)
         return link->status_out;
     if (link->status_in) {
diff --git a/libavfilter/internal.h b/libavfilter/internal.h
index 44d2fa38d5..a140617b68 100644
--- a/libavfilter/internal.h
+++ b/libavfilter/internal.h
@@ -508,6 +508,9 @@ int ff_poll_frame(AVFilterLink *link);
 /**
  * Request an input frame from the filter at the other end of the link.
  *
+ * This function must not be used by filters using the activate callback,
+ * use ff_link_set_frame_wanted() instead.
+ *
  * The input filter may pass the request on to its inputs, fulfill the
  * request from an internal buffer or any other means specific to its function.
  *
-- 
2.11.0



More information about the ffmpeg-devel mailing list