[FFmpeg-devel] [PATCH] avfilter/vf_unsharp: Merge header into .c

Zhao Zhili quinkblack at foxmail.com
Wed Aug 14 16:36:14 EEST 2024


From: Zhao Zhili <zhilizhao at tencent.com>

It was shared with opencl implementation.
---
 libavfilter/unsharp.h    | 62 ----------------------------------------
 libavfilter/vf_unsharp.c | 34 +++++++++++++++++++++-
 2 files changed, 33 insertions(+), 63 deletions(-)
 delete mode 100644 libavfilter/unsharp.h

diff --git a/libavfilter/unsharp.h b/libavfilter/unsharp.h
deleted file mode 100644
index 0da6f05036..0000000000
--- a/libavfilter/unsharp.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2013 Wei Gao <weigao at multicorewareinc.com>
- * Copyright (C) 2013 Lenny Wang
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_UNSHARP_H
-#define AVFILTER_UNSHARP_H
-
-#include "config.h"
-#include "avfilter.h"
-
-#define MIN_MATRIX_SIZE 3
-#define MAX_MATRIX_SIZE 63
-
-
-typedef struct UnsharpFilterParam {
-    int msize_x;                             ///< matrix width
-    int msize_y;                             ///< matrix height
-    int amount;                              ///< effect amount
-    int steps_x;                             ///< horizontal step count
-    int steps_y;                             ///< vertical step count
-    int scalebits;                           ///< bits to shift pixel
-    int32_t halfscale;                       ///< amount to add to pixel
-    uint32_t *sr;        ///< finite state machine storage within a row
-    uint32_t **sc;       ///< finite state machine storage across rows
-} UnsharpFilterParam;
-
-typedef struct UnsharpContext {
-    const AVClass *class;
-    int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
-    int amsize_x, amsize_y;
-    float lamount, camount;
-    float aamount;
-    UnsharpFilterParam luma;   ///< luma parameters (width, height, amount)
-    UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
-    UnsharpFilterParam alpha;  ///< alpha parameters (width, height, amount)
-    int hsub, vsub;
-    int nb_planes;
-    int bitdepth;
-    int bps;
-    int nb_threads;
-    int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
-    int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
-} UnsharpContext;
-
-#endif /* AVFILTER_UNSHARP_H */
diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c
index 2705ac5270..01b5dae796 100644
--- a/libavfilter/vf_unsharp.c
+++ b/libavfilter/vf_unsharp.c
@@ -44,7 +44,39 @@
 #include "libavutil/mem.h"
 #include "libavutil/opt.h"
 #include "libavutil/pixdesc.h"
-#include "unsharp.h"
+
+#define MIN_MATRIX_SIZE 3
+#define MAX_MATRIX_SIZE 63
+
+typedef struct UnsharpFilterParam {
+    int msize_x;                             ///< matrix width
+    int msize_y;                             ///< matrix height
+    int amount;                              ///< effect amount
+    int steps_x;                             ///< horizontal step count
+    int steps_y;                             ///< vertical step count
+    int scalebits;                           ///< bits to shift pixel
+    int32_t halfscale;                       ///< amount to add to pixel
+    uint32_t *sr;        ///< finite state machine storage within a row
+    uint32_t **sc;       ///< finite state machine storage across rows
+} UnsharpFilterParam;
+
+typedef struct UnsharpContext {
+    const AVClass *class;
+    int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
+    int amsize_x, amsize_y;
+    float lamount, camount;
+    float aamount;
+    UnsharpFilterParam luma;   ///< luma parameters (width, height, amount)
+    UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
+    UnsharpFilterParam alpha;  ///< alpha parameters (width, height, amount)
+    int hsub, vsub;
+    int nb_planes;
+    int bitdepth;
+    int bps;
+    int nb_threads;
+    int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
+    int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
+} UnsharpContext;
 
 typedef struct TheadData {
     UnsharpFilterParam *fp;
-- 
2.42.0



More information about the ffmpeg-devel mailing list