diff --git a/libavfilter/vf_scdet.c b/libavfilter/vf_scdet.c
index a14d9c2aeb..bb7d654073 100644
--- a/libavfilter/vf_scdet.c
+++ b/libavfilter/vf_scdet.c
@@ -59,8 +59,6 @@ static const AVOption scdet_options[] = {
 
 AVFILTER_DEFINE_CLASS(scdet);
 
-static int query_formats(AVFilterContext *ctx)
-{
     static const enum AVPixelFormat pix_fmts[] = {
             AV_PIX_FMT_RGB24, AV_PIX_FMT_BGR24, AV_PIX_FMT_RGBA,
             AV_PIX_FMT_ABGR, AV_PIX_FMT_BGRA, AV_PIX_FMT_GRAY8,
@@ -74,9 +72,6 @@ static int query_formats(AVFilterContext *ctx)
             AV_PIX_FMT_NONE
     };
 
-    return ff_set_common_formats_from_list(ctx, pix_fmts);
-}
-
 static int config_input(AVFilterLink *inlink)
 {
     AVFilterContext *ctx = inlink->dst;
@@ -213,6 +208,6 @@ const AVFilter ff_vf_scdet = {
     .uninit        = uninit,
     FILTER_INPUTS(scdet_inputs),
     FILTER_OUTPUTS(scdet_outputs),
-    FILTER_QUERY_FUNC(query_formats),
+    FILTER_PIXFMTS_ARRAY(pix_fmts),
     .activate      = activate,
 };