[FFmpeg-cvslog] avfilter/framesync: Remove redundant setting of AVClass

Andreas Rheinhardt git at videolan.org
Thu Sep 23 22:26:39 EEST 2021


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sat Sep 11 19:29:34 2021 +0200| [d6f4b91ba51775d04ee146794d1ea4767c5b6d0b] | committer: Andreas Rheinhardt

avfilter/framesync: Remove redundant setting of AVClass

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.

Reviewed-by: Nicolas George <george at nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d6f4b91ba51775d04ee146794d1ea4767c5b6d0b
---

 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 a1db87187e..a246d2d1e5 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)      \
 {                                                                     \
@@ -320,7 +318,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; \
 }
 



More information about the ffmpeg-cvslog mailing list