[FFmpeg-devel] [PATCH 4/4] avfiler/framesync: Remove redundant setting of AVClass
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Sun Sep 19 07:46:53 EEST 2021
Every filter exposing the framesync options via its child_next
callback already calls framesync_preinit() in its preinit callback.
So the filter is already preinited whenever its child_next is called.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
libavfilter/framesync.c | 5 -----
libavfilter/framesync.h | 9 +++------
2 files changed, 3 insertions(+), 11 deletions(-)
diff --git a/libavfilter/framesync.c b/libavfilter/framesync.c
index bc6fce81f4..7510550d8e 100644
--- a/libavfilter/framesync.c
+++ b/libavfilter/framesync.c
@@ -68,11 +68,6 @@ enum {
static int consume_from_fifos(FFFrameSync *fs);
-const AVClass *ff_framesync_get_class(void)
-{
- return &framesync_class;
-}
-
void ff_framesync_preinit(FFFrameSync *fs)
{
if (fs->class)
diff --git a/libavfilter/framesync.h b/libavfilter/framesync.h
index 8436aba23b..c0a9d3e969 100644
--- a/libavfilter/framesync.h
+++ b/libavfilter/framesync.h
@@ -208,11 +208,6 @@ typedef struct FFFrameSync {
} FFFrameSync;
-/**
- * Get the class for the framesync object.
- */
-const AVClass *ff_framesync_get_class(void);
-
/**
* Pre-initialize a frame sync structure.
*
@@ -310,6 +305,9 @@ static const AVClass name##_class = { \
.child_next = func_prefix##_child_next, \
}
+/* A filter that uses the *_child_next-function from this macro
+ * is required to initialize the FFFrameSync structure in AVFilter.preinit
+ * via the *_framesync_preinit function defined alongside it. */
#define FRAMESYNC_AUXILIARY_FUNCS(func_prefix, context, field) \
static int func_prefix##_framesync_preinit(AVFilterContext *ctx) { \
context *s = ctx->priv; \
@@ -318,7 +316,6 @@ static int func_prefix##_framesync_preinit(AVFilterContext *ctx) { \
} \
static void *func_prefix##_child_next(void *obj, void *prev) { \
context *s = obj; \
- s->fs.class = ff_framesync_get_class(); /* FIXME */ \
return prev ? NULL : &s->field; \
}
--
2.30.2
More information about the ffmpeg-devel
mailing list