From beeba9161a091d4d352e6fe5224c86c383f1aaa7 Mon Sep 17 00:00:00 2001 From: Nicolas George Date: Sun, 19 Aug 2012 19:26:58 +0200 Subject: lavfi: add a closed field to AVFilerLink. It will help forward errors and maintain consistency. --- libavfilter/avfilter.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'libavfilter/avfilter.h') diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 9891a72227..c0575ce1d1 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -697,6 +697,18 @@ struct AVFilterLink { * by the filters. */ AVFilterBufferRef *cur_buf_copy; + + /** + * True if the link is closed. + * If set, all attemps of start_frame, filter_samples or request_frame + * will fail with AVERROR_EOF, and if necessary the reference will be + * destroyed. + * If request_frame returns AVERROR_EOF, this flag is set on the + * corresponding link. + * It can be set also be set by either the source or the destination + * filter. + */ + int closed; }; /** @@ -716,6 +728,11 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad, */ void avfilter_link_free(AVFilterLink **link); +/** + * Set the closed field of a link. + */ +void avfilter_link_set_closed(AVFilterLink *link, int closed); + /** * Negotiate the media format, dimensions, etc of all inputs to a filter. * -- cgit v1.2.3