From d4838675253513504c4e0d0ed92489b3c4e6cf8d Mon Sep 17 00:00:00 2001 From: Nicolas George Date: Tue, 17 Jul 2012 17:53:50 +0200 Subject: [PATCH] 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. --- libavfilter/avfiltergraph.h | 6 ++++++ 1 file changed, 6 insertions(+) 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. */