summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2020-05-27 15:34:07 +0200
committerAnton Khirnov <anton@khirnov.net>2020-06-10 12:36:44 +0200
commitaba98de6b89fd5a50d6308e9cd81bf17ec6bbe3d (patch)
tree4fbc8eb0485883ab2f471ab23691616e480551f0
parent342230a53758f843ae692559c34d1b3eb35d22a4 (diff)
avfilter: switch to child_class_iterate()
-rw-r--r--libavfilter/avfilter.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 394811916d..dd8074e462 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -583,6 +583,7 @@ static void *filter_child_next(void *obj, void *prev)
return NULL;
}
+#if FF_API_CHILD_CLASS_NEXT
static const AVClass *filter_child_class_next(const AVClass *prev)
{
void *opaque = NULL;
@@ -604,6 +605,18 @@ static const AVClass *filter_child_class_next(const AVClass *prev)
return NULL;
}
+#endif
+
+static const AVClass *filter_child_class_iterate(void **iter)
+{
+ const AVFilter *f;
+
+ while ((f = av_filter_iterate(iter)))
+ if (f->priv_class)
+ return f->priv_class;
+
+ return NULL;
+}
#define OFFSET(x) offsetof(AVFilterContext, x)
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM
@@ -625,7 +638,10 @@ static const AVClass avfilter_class = {
.version = LIBAVUTIL_VERSION_INT,
.category = AV_CLASS_CATEGORY_FILTER,
.child_next = filter_child_next,
+#if FF_API_CHILD_CLASS_NEXT
.child_class_next = filter_child_class_next,
+#endif
+ .child_class_iterate = filter_child_class_iterate,
.option = avfilter_options,
};