aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/avfiltergraph.h
diff options
context:
space:
mode:
authorNicolas George <nicolas.george@normalesup.org>2012-07-17 17:53:50 +0200
committerNicolas George <nicolas.george@normalesup.org>2012-07-17 23:47:33 +0200
commitd4838675253513504c4e0d0ed92489b3c4e6cf8d (patch)
tree30f78093301223457ebae15b0c72506ddcf86833 /libavfilter/avfiltergraph.h
parentf98d814bb6d061150fd782fe75c61f8e1baf9996 (diff)
downloadffmpeg-d4838675253513504c4e0d0ed92489b3c4e6cf8d.tar.gz
avfiltergraph: document a catch in request_oldest().
This one is tricky. Consider a graph with two sink links, A and B. request_oldest() requests on A, and A returns EOF. This EOF causes a filter to flush pending frames to B; they are unrequested. Then request_oldest() moves on to B, and B returns EOF.
Diffstat (limited to 'libavfilter/avfiltergraph.h')
-rw-r--r--libavfilter/avfiltergraph.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavfilter/avfiltergraph.h b/libavfilter/avfiltergraph.h
index c55b54977a..3b05357e19 100644
--- a/libavfilter/avfiltergraph.h
+++ b/libavfilter/avfiltergraph.h
@@ -255,6 +255,12 @@ char *avfilter_graph_dump(AVFilterGraph *graph, const char *options);
* of a filtergraph, only a convenience function to help drain a filtergraph
* in a balanced way under normal circumstances.
*
+ * Also note that AVERROR_EOF does not mean that frames did not arrive on
+ * some of the sinks during the process.
+ * When there are multiple sink links, in case the requested link
+ * returns an EOF, this may cause a filter to flush pending frames
+ * which are sent to another sink link, although unrequested.
+ *
* @return the return value of ff_request_frame,
* or AVERROR_EOF of all links returned AVERROR_EOF.
*/