On Tue, 17 Jun 2025, Andreas Rheinhardt wrote:

Marton Balint:
Sinks without an activate callback (nullsink, anullsink) could cause
AVERROR(EAGAIN)-s in avfilter_graph_request_oldest() even when all the filter
graphs inputs were in EOF state.

Fixes ticket #11624.
Fixes ticket #10988.
Fixes ticket #10990.

Signed-off-by: Marton Balint <c...@passwd.hu>
---
 libavfilter/avfiltergraph.c | 38 ++++++++++++++++++-------------------
 1 file changed, 18 insertions(+), 20 deletions(-)

diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c
index 2d6036df74..6f9f46f1ea 100644
--- a/libavfilter/avfiltergraph.c
+++ b/libavfilter/avfiltergraph.c
@@ -1423,12 +1423,26 @@ void ff_avfilter_graph_update_heap(AVFilterGraph 
*graph, FilterLinkInternal *li)
     heap_bubble_down(graphi, li, li->age_index);
 }

+static int process_legacy_sink_output(FilterLinkInternal *oldesti)

Why is considered legacy (instead of being just a different API)?


The documentation calls it legacy:

doc/filtering_design:

"The design using filter_frame() and request_frame() is legacy, but it is
 suitable for filters that have a single input and process one frame at a
 time."

avfilter/avfilter.c:

"In order to activate a filter implementing the legacy filter_frame()
 and request_frame() methods, perform the first possible of the following
 actions:"

But if you have another name in mind for this, I can change it.

Regards,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to